Пример #1
0
        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);
        }
Пример #2
0
        /// <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();
        }
Пример #3
0
        /// <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();
        }