unsafe internal ParameterBlock1(IIParamBlock pb) : base(pb)
        {
            for (int i = 0; i < pb.NumParams; ++i)
            {
                IGetParamName gpn = Kernel._Global.GetParamName.Create("", i);

                pb.NotifyDependents(Interval.Forever._IInterval, (UIntPtr)gpn.Handle.ToPointer(), RefMessage.GetParamName, SuperClassID.NotifyAll, false, null);

                if (!String.IsNullOrEmpty(gpn.Name))
                {
                    ps.Add(new Param1(_Block, gpn.Name, i));
                }
            }
        }
Example #2
0
        unsafe public static int GetParamBlockIndex(IIParamBlock paramBlock, string name)
        {
            for (short index = 0; index < paramBlock.NumParams; index++)
            {
                IGetParamName gpn = Loader.Global.GetParamName.Create("", index);

                paramBlock.NotifyDependents(Tools.Forever, (UIntPtr)gpn.Handle.ToPointer(), RefMessage.GetParamName, (SClass_ID)0xfffffff0, false, null);

                if (gpn.Name == name)
                {
                    return(index);
                }
            }

            return(-1);
        }