Exemplo n.º 1
0
        public static float GammaToLinearSpace(float value)
        {
            if (methodGammaToLinearSpace == null)
            {
                methodGammaToLinearSpace = Instance_Class.GetMethod("GammaToLinearSpace");
                if (methodGammaToLinearSpace == null)
                {
                    return(0);
                }
            }

            IL2Object result = methodGammaToLinearSpace.Invoke(new IntPtr[] { value.MonoCast() });

            if (result == null)
            {
                return(default);
        public IL2Object InvokeOriginal(IntPtr obj, params IntPtr[] paramtbl)
        {
            IL2Object     returnval = null;
            List <IntPtr> sendList  = new List <IntPtr>();

            if (obj == IntPtr.Zero)
            {
                foreach (IntPtr pointer in paramtbl)
                {
                    sendList.Add(pointer);
                }

                while (sendList.Count() < 9)
                {
                    sendList.Add(IntPtr.Zero);
                }
            }
            else
            {
                sendList.Add(obj);
                foreach (IntPtr pointer in paramtbl)
                {
                    sendList.Add(pointer);
                }

                while (sendList.Count() < 9)
                {
                    sendList.Add(IntPtr.Zero);
                }
            }
            returnval = PInvokeOriginal(sendList[0], sendList[1], sendList[2], sendList[3], sendList[4], sendList[5], sendList[6], sendList[7], sendList[8]);
            if (returnval != null)
            {
                return(returnval);
            }

            return(null);
        }
 public IL2Object InvokeOriginal(IL2Object obj, params IntPtr[] paramtbl) => InvokeOriginal(obj.ptr, paramtbl);
 public IL2Object InvokeOriginal(IL2Object obj) => InvokeOriginal(obj.ptr, new IntPtr[] { IntPtr.Zero });