public ParamsManager Clone() { ParamsManager clone = (ParamsManager)MemberwiseClone(); clone.items = new List <ITreeViewItem>(); clone.parFLoat = parFLoat.Clone(); clone.items.Add(clone.parFLoat); if (parFLoatRunTime != null) { clone.parFLoatRunTime = parFLoatRunTime.Clone(); clone.items.Add(clone.parFLoatRunTime); } if (parUInt != null) { clone.parUInt = parUInt.Clone(); clone.items.Add(clone.parUInt); } if (parUIntRunTime != null) { clone.parUIntRunTime = parUIntRunTime.Clone(); clone.items.Add(clone.parUIntRunTime); } return(clone); }
/// <summary> /// Создание технологического объекта. /// </summary> /// <param name="name">Имя.</param> /// <param name="getN">Функция получения порядкового локального номера. /// </param> /// <param name="technologicalNumber">Технологический номер.</param> /// <param name="nameEplan">ОУ объекта в Eplan'е.</param> /// <param name="cooperParamNumber">Время совместного перехода шагов /// (параметр).</param> /// <param name="attachedObjects">Привязанные объекты</param> /// <param name="baseTechObject">Базовый технологический объект</param> /// <param name="NameBC">Имя объекта Monitor</param> /// <param name="techType">Номер типа</param> public TechObject(string name, GetN getLocalNum, int technologicalNumber, int techType, string nameEplan, int cooperParamNumber, string NameBC, string attachedObjects, BaseTechObject baseTechObject) { this.name = name; this.getLocalNum = getLocalNum; this.techNumber = new TechObjectN(this, technologicalNumber); this.techType = new ObjectProperty("Тип", techType); this.nameBC = new ObjectProperty("Имя объекта Monitor", NameBC); this.nameEplan = new NameInEplan(nameEplan, this); this.cooperParamNumber = new ObjectProperty( "Время совместного перехода шагов (параметр)", cooperParamNumber); this.attachedObjects = new AttachedToObjects(attachedObjects, this); modes = new ModesManager(this); paramsManager = new ParamsManager(); paramsManager.Parent = this; equipment = new Equipment(this); InitBaseTechObject(baseTechObject); SetItems(); }
/// <summary> /// Создание технологического объекта. /// </summary> /// <param name="name">Имя.</param> /// <param name="getN">Функция получения порядкового локального номера. /// </param> /// <param name="technologicalNumber">Технологический номер.</param> /// <param name="nameEplan">ОУ объекта в Eplan'е.</param> /// <param name="cooperParamNumber">Время совместного перехода шагов /// (параметр).</param> /// <param name="attachedObjects">Привязанные объекты</param> /// <param name="baseTechObject">Базовый технологический объект</param> /// <param name="NameBC">Имя объекта Monitor</param> /// <param name="techType">Номер типа</param> public TechObject(string name, GetN getLocalNum, int technologicalNumber, int techType, string nameEplan, int cooperParamNumber, string NameBC, string attachedObjects, BaseTechObject baseTechObject) { this.name = name; this.getLocalNum = getLocalNum; this.techNumber = new TechObjectN(this, technologicalNumber); this.techType = new ObjectProperty("Тип", techType); this.nameBC = new ObjectProperty("Имя объекта Monitor", NameBC); this.nameEplan = new NameInEplan(nameEplan, this); this.cooperParamNumber = new ObjectProperty( "Время совместного перехода шагов (параметр)", cooperParamNumber, -1); var allowedObjects = new List <BaseTechObjectManager.ObjectType>() { BaseTechObjectManager.ObjectType.Aggregate }; string attachObjectsName = "Привязанные агрегаты"; string attachObjectsLuaName = "attached_objects"; this.attachedObjects = new AttachedObjects(attachedObjects, this, new AttachedObjectStrategy.AttachedWithInitStrategy( attachObjectsName, attachObjectsLuaName, allowedObjects)); modes = new ModesManager(this); paramsManager = new ParamsManager(); paramsManager.Parent = this; string sysParName = "Системные параметры"; string sysParLuName = "system_parameters"; systemParams = new SystemParams(sysParName, sysParLuName); systemParams.Parent = this; equipment = new Equipment(this); InitBaseTechObject(baseTechObject); SetItems(); }