示例#1
0
 /// <summary>
 /// Метод удаления объекта
 /// </summary>
 public void DeleteObject()
 {
     aUnsuscribeDependSlave();
     aUnsuscribeSlave();
     aUnsuscribeMaster();
     _dependSlave = null;
     _slave = null;
     _master = null;
     _identity = null;
     aUnsuscribeDependSlave = aUnsuscribeMaster = aUnsuscribeSlave = null;
     event_ObjectDeleted?.Invoke(this, new ea_IdObject(this));
 }
示例#2
0
        protected void init_slave(IId slaveID, ILine slaveLine)
        {
            slave = new linkMember(this, e_DependType.Slave);
            slave.init_member(slaveID, slaveLine, Hlp.GetDepenDot(limit, e_DependType.Slave));
            
            slave.date = master.getObjectDependDotInfo().GetDate();

            event_LimitChanged += slave.handler_limitTypeChanged;
            event_DelayChanged += slave.handler_delayChanged;
            master.getObjectDependDotInfo().event_DateChanged += slave.handler_dependDateChange;
        }
示例#3
0
        /// <summary>
        /// Метод основной инициализации (запускается первым)
        /// </summary>
        /// <param name="limit">Вид связи</param>
        /// <param name="delay">Задержка связи</param>
        protected void init_default(e_TskLim limit, double delay = 0)
        {
            //Запускать первым из инитов
            if (!Enum.IsDefined(typeof(e_TskLim), limit)) throw new ArgumentException("Wrong e_TskLim value");

            _identity = new Identity(e_Entity.Link);
            _limit = limit;
            _delay = delay;
            _state = e_LnkState.InTime;

            _master = new linkMember(this, e_DependType.Master);
            _slave = new linkMember(this, e_DependType.Slave);
        }
示例#4
0
        protected void init_master(IId masterID, ILine masterLine)
        {
            master = new linkMember(this, e_DependType.Master);
            master.init_member(masterID, masterLine, Hlp.GetDepenDot(limit, e_DependType.Master));

            event_LimitChanged += master.handler_limitTypeChanged;
            master.date = master.getObjectDependDotInfo().GetDate();
            master.delay = 0;
            master.getObjectDependDotInfo().event_DateChanged += master.handler_dependDateChange;
        }