using System; using System.Collections.Generic; using System.Runtime.CompilerServices; using UnityEngine.Scripting; namespace UnityEngine.CSSLayout { // Token: 0x0200051C RID: 1308 internal static class Native { // Token: 0x06003CC8 RID: 15560 [MethodImpl(MethodImplOptions.InternalCall)] public static extern IntPtr CSSNodeNew(); // Token: 0x06003CC9 RID: 15561 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeInit(IntPtr cssNode); // Token: 0x06003CCA RID: 15562 RVA: 0x0006B6AC File Offset: 0x000698AC public static void CSSNodeFree(IntPtr cssNode) { if (!(cssNode == IntPtr.Zero)) { Native.CSSNodeSetMeasureFunc(cssNode, null); Native.CSSNodeFreeInternal(cssNode); } } // Token: 0x06003CCB RID: 15563 [MethodImpl(MethodImplOptions.InternalCall)] private static extern void CSSNodeFreeInternal(IntPtr cssNode); // Token: 0x06003CCC RID: 15564 RVA: 0x0006B6D4 File Offset: 0x000698D4 public static void CSSNodeReset(IntPtr cssNode) { Native.CSSNodeSetMeasureFunc(cssNode, null); Native.CSSNodeResetInternal(cssNode); } // Token: 0x06003CCD RID: 15565 [MethodImpl(MethodImplOptions.InternalCall)] private static extern void CSSNodeResetInternal(IntPtr cssNode); // Token: 0x06003CCE RID: 15566 [MethodImpl(MethodImplOptions.InternalCall)] public static extern int CSSNodeGetInstanceCount(); // Token: 0x06003CCF RID: 15567 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSLayoutSetExperimentalFeatureEnabled(CSSExperimentalFeature feature, bool enabled); // Token: 0x06003CD0 RID: 15568 [MethodImpl(MethodImplOptions.InternalCall)] public static extern bool CSSLayoutIsExperimentalFeatureEnabled(CSSExperimentalFeature feature); // Token: 0x06003CD1 RID: 15569 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeInsertChild(IntPtr node, IntPtr child, uint index); // Token: 0x06003CD2 RID: 15570 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeRemoveChild(IntPtr node, IntPtr child); // Token: 0x06003CD3 RID: 15571 [MethodImpl(MethodImplOptions.InternalCall)] public static extern IntPtr CSSNodeGetChild(IntPtr node, uint index); // Token: 0x06003CD4 RID: 15572 [MethodImpl(MethodImplOptions.InternalCall)] public static extern uint CSSNodeChildCount(IntPtr node); // Token: 0x06003CD5 RID: 15573 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeCalculateLayout(IntPtr node, float availableWidth, float availableHeight, CSSDirection parentDirection); // Token: 0x06003CD6 RID: 15574 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeMarkDirty(IntPtr node); // Token: 0x06003CD7 RID: 15575 [MethodImpl(MethodImplOptions.InternalCall)] public static extern bool CSSNodeIsDirty(IntPtr node); // Token: 0x06003CD8 RID: 15576 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodePrint(IntPtr node, CSSPrintOptions options); // Token: 0x06003CD9 RID: 15577 [MethodImpl(MethodImplOptions.InternalCall)] public static extern bool CSSValueIsUndefined(float value); // Token: 0x06003CDA RID: 15578 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeCopyStyle(IntPtr dstNode, IntPtr srcNode); // Token: 0x06003CDB RID: 15579 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeSetContext(IntPtr node, IntPtr context); // Token: 0x06003CDC RID: 15580 [MethodImpl(MethodImplOptions.InternalCall)] public static extern IntPtr CSSNodeGetContext(IntPtr node); // Token: 0x06003CDD RID: 15581 RVA: 0x0006B6E4 File Offset: 0x000698E4 public static void CSSNodeSetMeasureFunc(IntPtr node, CSSMeasureFunc measureFunc) { if (measureFunc != null) { Native.s_MeasureFunctions[node] = new WeakReference(measureFunc); CSSLayoutCallbacks.RegisterWrapper(node); } else if (Native.s_MeasureFunctions.ContainsKey(node)) { Native.s_MeasureFunctions.Remove(node); CSSLayoutCallbacks.UnegisterWrapper(node); } } // Token: 0x06003CDE RID: 15582 RVA: 0x0006B73C File Offset: 0x0006993C public static CSSMeasureFunc CSSNodeGetMeasureFunc(IntPtr node) { WeakReference weakReference = null; CSSMeasureFunc cssmeasureFunc; if (Native.s_MeasureFunctions.TryGetValue(node, out weakReference) && weakReference.IsAlive) { cssmeasureFunc = weakReference.Target as CSSMeasureFunc; } else { cssmeasureFunc = null; } return cssmeasureFunc; } // Token: 0x06003CDF RID: 15583 RVA: 0x0006B784 File Offset: 0x00069984 [RequiredByNativeCode] public unsafe static void CSSNodeMeasureInvoke(IntPtr node, float width, CSSMeasureMode widthMode, float height, CSSMeasureMode heightMode, IntPtr returnValueAddress) { CSSMeasureFunc cssmeasureFunc = Native.CSSNodeGetMeasureFunc(node); if (cssmeasureFunc != null) { *(CSSSize*)(void*)returnValueAddress = cssmeasureFunc(node, width, widthMode, height, heightMode); } } // Token: 0x06003CE0 RID: 15584 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeSetHasNewLayout(IntPtr node, bool hasNewLayout); // Token: 0x06003CE1 RID: 15585 [MethodImpl(MethodImplOptions.InternalCall)] public static extern bool CSSNodeGetHasNewLayout(IntPtr node); // Token: 0x06003CE2 RID: 15586 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetDirection(IntPtr node, CSSDirection direction); // Token: 0x06003CE3 RID: 15587 [MethodImpl(MethodImplOptions.InternalCall)] public static extern CSSDirection CSSNodeStyleGetDirection(IntPtr node); // Token: 0x06003CE4 RID: 15588 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetFlexDirection(IntPtr node, CSSFlexDirection flexDirection); // Token: 0x06003CE5 RID: 15589 [MethodImpl(MethodImplOptions.InternalCall)] public static extern CSSFlexDirection CSSNodeStyleGetFlexDirection(IntPtr node); // Token: 0x06003CE6 RID: 15590 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetJustifyContent(IntPtr node, CSSJustify justifyContent); // Token: 0x06003CE7 RID: 15591 [MethodImpl(MethodImplOptions.InternalCall)] public static extern CSSJustify CSSNodeStyleGetJustifyContent(IntPtr node); // Token: 0x06003CE8 RID: 15592 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetAlignContent(IntPtr node, CSSAlign alignContent); // Token: 0x06003CE9 RID: 15593 [MethodImpl(MethodImplOptions.InternalCall)] public static extern CSSAlign CSSNodeStyleGetAlignContent(IntPtr node); // Token: 0x06003CEA RID: 15594 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetAlignItems(IntPtr node, CSSAlign alignItems); // Token: 0x06003CEB RID: 15595 [MethodImpl(MethodImplOptions.InternalCall)] public static extern CSSAlign CSSNodeStyleGetAlignItems(IntPtr node); // Token: 0x06003CEC RID: 15596 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetAlignSelf(IntPtr node, CSSAlign alignSelf); // Token: 0x06003CED RID: 15597 [MethodImpl(MethodImplOptions.InternalCall)] public static extern CSSAlign CSSNodeStyleGetAlignSelf(IntPtr node); // Token: 0x06003CEE RID: 15598 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetPositionType(IntPtr node, CSSPositionType positionType); // Token: 0x06003CEF RID: 15599 [MethodImpl(MethodImplOptions.InternalCall)] public static extern CSSPositionType CSSNodeStyleGetPositionType(IntPtr node); // Token: 0x06003CF0 RID: 15600 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetFlexWrap(IntPtr node, CSSWrap flexWrap); // Token: 0x06003CF1 RID: 15601 [MethodImpl(MethodImplOptions.InternalCall)] public static extern CSSWrap CSSNodeStyleGetFlexWrap(IntPtr node); // Token: 0x06003CF2 RID: 15602 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetOverflow(IntPtr node, CSSOverflow flexWrap); // Token: 0x06003CF3 RID: 15603 [MethodImpl(MethodImplOptions.InternalCall)] public static extern CSSOverflow CSSNodeStyleGetOverflow(IntPtr node); // Token: 0x06003CF4 RID: 15604 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetFlex(IntPtr node, float flex); // Token: 0x06003CF5 RID: 15605 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetFlexGrow(IntPtr node, float flexGrow); // Token: 0x06003CF6 RID: 15606 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetFlexGrow(IntPtr node); // Token: 0x06003CF7 RID: 15607 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetFlexShrink(IntPtr node, float flexShrink); // Token: 0x06003CF8 RID: 15608 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetFlexShrink(IntPtr node); // Token: 0x06003CF9 RID: 15609 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetFlexBasis(IntPtr node, float flexBasis); // Token: 0x06003CFA RID: 15610 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetFlexBasis(IntPtr node); // Token: 0x06003CFB RID: 15611 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetWidth(IntPtr node, float width); // Token: 0x06003CFC RID: 15612 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetWidth(IntPtr node); // Token: 0x06003CFD RID: 15613 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetHeight(IntPtr node, float height); // Token: 0x06003CFE RID: 15614 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetHeight(IntPtr node); // Token: 0x06003CFF RID: 15615 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetMinWidth(IntPtr node, float minWidth); // Token: 0x06003D00 RID: 15616 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetMinWidth(IntPtr node); // Token: 0x06003D01 RID: 15617 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetMinHeight(IntPtr node, float minHeight); // Token: 0x06003D02 RID: 15618 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetMinHeight(IntPtr node); // Token: 0x06003D03 RID: 15619 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetMaxWidth(IntPtr node, float maxWidth); // Token: 0x06003D04 RID: 15620 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetMaxWidth(IntPtr node); // Token: 0x06003D05 RID: 15621 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetMaxHeight(IntPtr node, float maxHeight); // Token: 0x06003D06 RID: 15622 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetMaxHeight(IntPtr node); // Token: 0x06003D07 RID: 15623 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetAspectRatio(IntPtr node, float aspectRatio); // Token: 0x06003D08 RID: 15624 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetAspectRatio(IntPtr node); // Token: 0x06003D09 RID: 15625 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetPosition(IntPtr node, CSSEdge edge, float position); // Token: 0x06003D0A RID: 15626 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetPosition(IntPtr node, CSSEdge edge); // Token: 0x06003D0B RID: 15627 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetMargin(IntPtr node, CSSEdge edge, float margin); // Token: 0x06003D0C RID: 15628 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetMargin(IntPtr node, CSSEdge edge); // Token: 0x06003D0D RID: 15629 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetPadding(IntPtr node, CSSEdge edge, float padding); // Token: 0x06003D0E RID: 15630 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetPadding(IntPtr node, CSSEdge edge); // Token: 0x06003D0F RID: 15631 [MethodImpl(MethodImplOptions.InternalCall)] public static extern void CSSNodeStyleSetBorder(IntPtr node, CSSEdge edge, float border); // Token: 0x06003D10 RID: 15632 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeStyleGetBorder(IntPtr node, CSSEdge edge); // Token: 0x06003D11 RID: 15633 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeLayoutGetLeft(IntPtr node); // Token: 0x06003D12 RID: 15634 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeLayoutGetTop(IntPtr node); // Token: 0x06003D13 RID: 15635 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeLayoutGetRight(IntPtr node); // Token: 0x06003D14 RID: 15636 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeLayoutGetBottom(IntPtr node); // Token: 0x06003D15 RID: 15637 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeLayoutGetWidth(IntPtr node); // Token: 0x06003D16 RID: 15638 [MethodImpl(MethodImplOptions.InternalCall)] public static extern float CSSNodeLayoutGetHeight(IntPtr node); // Token: 0x06003D17 RID: 15639 [MethodImpl(MethodImplOptions.InternalCall)] public static extern CSSDirection CSSNodeLayoutGetDirection(IntPtr node); // Token: 0x040012DD RID: 4829 private const string DllName = "CSSLayout"; // Token: 0x040012DE RID: 4830 private static Dictionary s_MeasureFunctions = new Dictionary(); } }