예제 #1
0
 public static void getParameterInfo(IParameter parameter, out string doc, out string group, out string compId)
 {
     if (parameter.Parent is Evel.engine.ContributedGroup)
     {
         compId = "-1";
         IGroup gr = (Evel.engine.ContributedGroup)parameter.Parent;
         group = gr.Definition.name;
         doc   = gr.OwningSpectrum.Container.Name;
     }
     else
     {
         Evel.interfaces.IComponent comp = (Evel.interfaces.IComponent)parameter.Parent;
         IComponents comps = (IComponents)comp.Parent;
         compId = ((comps.Size > 1) ? comps.IndexOf(comp) + 1 : 0).ToString();
         group  = comps.Parent.Definition.name;
         doc    = comps.Parent.OwningSpectrum.Container.Name;
     }
 }
예제 #2
0
        public string GetParameterAddress(IParameter parameter)
        {
            ISpectraContainer container;
            IGroup            group;

            if (parameter.Parent is Evel.interfaces.IComponent)
            {
                Evel.interfaces.IComponent component = (Evel.interfaces.IComponent)parameter.Parent;
                if (component.Parent is IComponents)
                {
                    group = ((IComponents)component.Parent).Parent;
                }
                else
                {
                    group = (IGroup)component.Parent;
                }
            }
            else
            {
                group = (IGroup)parameter.Parent;
            }
            container = group.OwningSpectrum.Container;
            return(String.Format("[d{0};{1}]", ((List <ISpectraContainer>)Containers).IndexOf(container) + 1, container.GetParameterAddress(parameter)));
        }