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