ATCInput::ATCInput (Traffic *Traff_i, Landmarks *Lmarks_i) : //Screen initialisations ATCScreen ( 1, 46, 60, 50, ATC_TEXT_MODE, BLACK, WHITE ), CrntColumn_c (1), Traff_c (Traff_i), Gates_c (True), Airports_c (True), Beacons_c (True), NextProcess_c (&GetPlane), IsCmndToCollect_c (False), LastCmnd_c (NULL) { int GateIx, AirportIx, BeaconIx; Gate *CrntGate; Airport *CrntAirport; Beacon *CrntBeacon; for (GateIx = 0; GateIx < Lmarks_i->NoOfGates(); GateIx++) { CrntGate = Lmarks_i->AllGates() [GateIx]; Gates_c.Add (CrntGate, CrntGate->ID()); } for (AirportIx = 0; AirportIx < Lmarks_i->NoOfAirports(); AirportIx++) { CrntAirport = Lmarks_i->AllAirports() [AirportIx]; Airports_c.Add (CrntAirport, CrntAirport->ID()); } for (BeaconIx = 0; BeaconIx < Lmarks_i->NoOfBeacons(); BeaconIx++) { CrntBeacon = Lmarks_i->AllBeacons() [BeaconIx]; Beacons_c.Add (CrntBeacon, CrntBeacon->ID()); } }
CmndInput::CmndInput ( Landmarks *Lmarks_i, Traffic *Traff_i ) : Traff_c (Traff_i), IsCmndToCollect_c (False), LastCmnd_c (NULL) { int GateIx, AirportIx, BeaconIx; Gate *CrntGate; Airport *CrntAirport; Beacon *CrntBeacon; Out_c.Refresh(); for (GateIx = 0; GateIx < Lmarks_i->NoOfGates(); GateIx++) { CrntGate = Lmarks_i->AllGates() [GateIx]; Landmarks_c.Gates.Add (CrntGate, CrntGate->ID()); } for (AirportIx = 0; AirportIx < Lmarks_i->NoOfAirports(); AirportIx++) { CrntAirport = Lmarks_i->AllAirports() [AirportIx]; Landmarks_c.Airports.Add (CrntAirport, CrntAirport->ID()); } for (BeaconIx = 0; BeaconIx < Lmarks_i->NoOfBeacons(); BeaconIx++) { CrntBeacon = Lmarks_i->AllBeacons() [BeaconIx]; Landmarks_c.Beacons.Add (CrntBeacon, CrntBeacon->ID()); } SetForNewCmnd(); }