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)); } } }
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); }