Esempio n. 1
0
 public override void Unsubscribe(ChannelNetworkMgrBase mgr, IChannelNetworkComponentEX emitter)
 {
     if (emitter.PreSubscribe(mgr, Emitters) || Emitters == 0)
     {
         return;
     }
     else if (emitter.GetOperationalState)
     {
         Count--;
     }
     Emitters--;
     if (Emitters == 0)
     {
         Activate = false;
     }
     emitter.PostUnsubscribe(mgr, Emitters);
 }
Esempio n. 2
0
 public override void Subscribe(ChannelNetworkMgrBase mgr, IChannelNetworkComponentEX emitter)
 {
     if (emitter.PreSubscribe(mgr, Emitters))
     {
         return;
     }
     if (Emitters == 0)
     {
         Activate = emitter.GetOperationalState;
         if (Activate)
         {
             Count++;
         }
         mgr.SignalEmit(emitter.GetChannel, Activate);
     }
     else if (Count == 0 && emitter.GetOperationalState)
     {
         Count++;
         mgr.SignalEmit(emitter.GetChannel, true);
     }
     Emitters++;
     emitter.PostSubscribe(mgr, Emitters);
 }
Esempio n. 3
0
 public virtual void Unsubscribe(ChannelNetworkMgrBase mgr, IChannelNetworkComponentEX emitter)
 {
 }