Exemple #1
0
 public void Clear()
 {
     this.reservedSensors.Clear();
     this.sensorList.Clear();
     for (SubstanceListElement next = this.firstElement; next != null; next = next.Next)
     {
         next.Substance.Station = null;
         if (next.Previous != null)
         {
             next.Previous.Next = null;
             next.Previous      = null;
         }
     }
     this.firstElement = null;
 }
Exemple #2
0
 public void Add(Substance substance)
 {
     if (substance.Station != null)
     {
         throw new InvalidOperationException("Substance can be registered to one station at the same time.");
     }
     substance.Station = this;
     if (substance.UseInstantAppearance)
     {
         this.ProcessReservedRequest();
         SubstanceListElement substanceListElement = new SubstanceListElement(substance);
         substanceListElement.Next = this.firstElement;
         if (this.firstElement != null)
         {
             this.firstElement.Previous = substanceListElement;
         }
         substance.SubstanceListElement = substanceListElement;
         this.firstElement = substanceListElement;
         foreach (Sensor sensor in this.sensorList.Values)
         {
             sensor.Transmitter.Transmit(substance.Adapter.InstantAppearMessage);
         }
     }
 }
Exemple #3
0
 public void Reset(SubstanceListElement firstElement, bool appear)
 {
     this.element = firstElement;
     this.message = null;
     this.appear  = appear;
 }