static void Main(string[] args) { // TEST AF SYSTEM UDEN SEPARATION EVENT FileLogger filelogger = new FileLogger(); ConsoleRenderer consolerender = new ConsoleRenderer(); Airspace airspace = new Airspace(10000, 90000, 10000, 90000, 500, 20000); var receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); var system = new ATM.TransponderReceiver(receiver); ATMclass atm = new ATMclass(filelogger, consolerender, airspace); system.Attach(atm); // TEST AF SYSTEM MED SEPARATION EVENTS //TrackData trackData1 = new TrackData("TEST1", 12000, 12000, 1000, "14322018", 10, 270); //TrackData trackData2 = new TrackData("TEST2", 12000, 12000, 1000, "14322018", 10, 270); //atm._currentTracks.Add(trackData1); //atm.CheckForSeperationEvents(trackData2); //atm.CheckForSeperationEvents(trackData2); // TEST AF SYSTEM MED LOGGER while (true) { Thread.Sleep(1000); } }
static void Main(string[] args) { ITransponderReceiver transponderReceiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); IFlightTrackDataSource dataConverter = new DataConverter(transponderReceiver); IFlightTrackManager flightManager = new SensorAreaManager(dataConverter); var airspace = new AirspaceManager(flightManager, new AirspaceArea(10000, 10000, 90000, 90000, 500, 20000)); IEnterExitEventDetector airspacEnterExitEventDetector = new EnterExitEventDetector(airspace); IEnterExitEventController airspaceEnterExitEventCtrl = new EnterExitEventController(airspacEnterExitEventDetector); ISeperationEventDetector airspaceSeperationDetector = new SeperationEventDetector(airspace, 300, 5000); //ISeperationEventDetector seperationDetector = new SeperationEventDetector(flightManager, 5000, 10000); ISeperationEventController airspaceSeperationEventCtrl = new SeperationEventController(airspaceSeperationDetector); IMonitor monitor = new Monitor(); var airspaceContentDisplayer = new AirspaceContentDisplayer(monitor, airspace, 40, 20); var aispaceEventDisplayer = new EnterExitEventDisplayer(monitor, airspaceEnterExitEventCtrl); var seperationEventDisplayer = new SeperationEventDisplayer(monitor, airspaceSeperationEventCtrl); while (true) { Thread.Sleep(250); } ; }
static void Main(string[] args) { var airspace = new Airspace(new Coordinates() { X = 10000, Y = 10000 }, new Coordinates() { X = 90000, Y = 90000 }, 500, 20000); var trackLogging = new TrackConsoleLogging(); var velocityCalculator = new VelocityCalculator(); var degreesCalculator = new DegreesCalculatorWithoutDecimals(); var airspaceMovementMonitoring = new AirspaceMovementMonitoring(airspace, velocityCalculator, degreesCalculator, trackLogging); var separationConsoleLogger = new SeparationConsoleLogger(); var separationXmlLogger = new SeparationXmlLogging(); var separation = new Separation(separationXmlLogger, separationConsoleLogger); var airspaceMonitoring = new AirspaceMonitoring(airspace, airspaceMovementMonitoring); var transponderDataConversion = new TransponderDataConversion(airspaceMonitoring); var transponderDataReceiver = new TransponderDataReceiver( TransponderReceiverFactory.CreateTransponderDataReceiver(), transponderDataConversion, separation, airspace); transponderDataReceiver.StartReceivingData(); Console.ReadLine(); }
static void Main(string[] args) { ITransponderReceiver transponderReceiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); ITrackingSystem trackingSystem = new TrackingSystem(transponderReceiver); Console.ReadLine(); }
static void Main(string[] args) { var positionCalculator = new PositionCalculator(); // Using the real transponder data receiver var receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); // Dependency injection with the real TDR var formatter = new Formatter(receiver); var speed = new SpeedCalculator(); var position = new PositionCalculator(); var clear = new ClearConsole(); var render = new RenderData(clear); var writer = new LogWriter(); var log = new Log(writer); var seperation = new SeperationCalculator(log); var system = new AirTrafficController(formatter, seperation, render, position, speed, clear); // Let the real TDR execute in the background while (true) { Thread.Sleep(1000); } }
static void Main(string[] args) { ITransponderReceiver receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); Decoder d1 = new Decoder(receiver); AMSController ams = new AMSController(d1, new Airspace( South: 10000, West: 10000, North: 90000, East: 90000, LowerAltitude: 500, UpperAltitude: 20000 )); CollisionAvoidanceSystem cas = new CollisionAvoidanceSystem(ams, 20000, 10000); Logger fl = new Logger(cas); Output output = new Output(); ConsoleOutput c = new ConsoleOutput(ams, cas, output); while (true) { Thread.Sleep(1000); } }
public static void Main(string[] args) { ConcreteATMFactory ATMfactory = new ConcreteATMFactory(); ATMSystem atm = new ATMSystem(ATMfactory, TransponderReceiverFactory.CreateTransponderDataReceiver()); //var receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); //var airSpace = new AirSpace(10000, 90000, 90000, 10000, 20000, 500); //var separationCondition = new SeparationCondition(300, 5000); //var consolePrinter = new ConsolePrinter(); //var logger = new Logger(); //var trackCalc = new TrackCalculator(); //var spChecker = new SeparationChecker(airSpace, separationCondition); //ATMSystem atm = new ATM.Classes.ATMSystem(receiver, airSpace, separationCondition, consolePrinter, logger, trackCalc, spChecker); while (true) { Thread.Sleep(1000); } }
private void Window_Loaded(object sender, RoutedEventArgs e) { var transponderReceiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); var atm = new Lib.AirTrafficMonitor(new BillundAirTrafficMonitorFactory(), transponderReceiver); atm.TrackingsChanged += RenderTrackings; atm.SeparationEventsChanged += RenderSeparationEvents; }
public ATM(IPlaneTracker plane) { planeTracker = plane; ITransponderReceiver receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); receiver.TransponderDataReady += Receiver_TransponderDataReady; }
static void Main(string[] args) { ITransponderReceiver transponderReceiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); new Factory(transponderReceiver); Console.ReadKey(); }
public void TransponderReceiver_DetachATMwithoutAttachingIt_observersCountIs0() { var receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); var system = new ATM.TransponderReceiver(receiver); system.Detach(uut); Assert.That(() => system.getObserverCount().Equals(0)); }
public Client() { var receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); _convertFilter = new ConvertFilter(receiver, new CompasCourse(), new Velocity()); _airplaneValidation = new AirplaneValidation(_convertFilter); _outputFilter = new OutputFilter(_airplaneValidation); _separationCondition = new CheckSeparationCondition(_airplaneValidation); }
static void Main(string[] args) { var reciever = TransponderReceiverFactory.CreateTransponderDataReceiver(); var trackfilter = new TrackFilter(reciever); while (true) { } }
static void Main(string[] args) { //Dependencies for Airport DecodeFactory.DecodeFactory trackFactory = new TrackFactory(); AirSpace airspace = new AirSpace { Height_from = 500, Height_to = 20000, X = 80000, Y = 80000 }; IExceptionHandler exceptionHandler = new NullReferenceExceptionHandler(); var receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); var Airport = new Airport(receiver, trackFactory, airspace, exceptionHandler); //Dependencies for ATM IOccurenceDetector Detector = new TrackOccurrenceDetector(); IDisplay Display = new MonitorConsole(); IOccurrenceLogger Logger = new OccurrenceLogger(); IFormat Formatter = new TrackFormater(); IExceptionHandler Exception = new NullReferenceExceptionHandler(); IConsoleClear Consoler = new ConsoleClear(); Air_Traffic_Monitor ATM = new Air_Traffic_Monitor(Airport, Detector, Display, Logger, Formatter, Consoler, Exception); #region DecodeFactory Test /* * var Aircrafts = new List<string> * { * "BTR312;2004;18204;5500;20151006213456789", * "BTR312;3200;18602;5500;20151006213456789", * "BTR312;4200;18802;5500;20151006213456789" * }; * * var factory = new TrackFactory(); * var tracks = factory.CreateTracks(Aircrafts); * * foreach(var track in tracks) * { * Console.WriteLine($"Tag: {track.Tag}"); * Console.WriteLine($"Current altitude: x:{track.CurrentPositionX.ToString()}, y:{track.CurrentPositionY.ToString()}"); * Console.WriteLine($"Current altitude (Meters): {track.CurrentAltitude.ToString()}"); * Console.WriteLine($"Current Horizontal Velocity (m/s): {track.CurrentHorizontalVelocity.ToString()}"); * Console.WriteLine($"Current Compass Course: {track.CurrentCompassCourse}"); * Console.WriteLine( $"Timestamp: {track.TimeStamp.ToString()}\n"); * * } */ #endregion Console.ReadLine(); }
public ATM(int minimumDistance, int minimumAltitude) { var receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); _stringFormatter = new StringFormatter(receiver, new CompassCourseDegreeCalculator(), new VelocityCalculator()); _airspaceFilter = new AirspaceFilter(_stringFormatter); _conditionChecker = new ConditionChecker(minimumDistance, minimumAltitude, _airspaceFilter); _display = new DisplaySeparator(_airspaceFilter, _conditionChecker); }
public void TransponderReceiver_AttachATM_observersCountIs1() { var receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); var system = new ATM.TransponderReceiver(receiver); system.Attach(uut); Assert.That(() => system.getObserverCount().Equals(1)); }
public void TransponderReceiver_AttachATMthenDetach_observersCountIs0() { var receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); var system = new ATM.TransponderReceiver(receiver, consoleOutput); system.Attach(uut); system.Detach(uut); Assert.That(() => system.getObserverCount().Equals(0)); }
static void Main(string[] args) { ITransponderReceiver transponderDataReceiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); ITrackReceiver trackReceiver = new TrackDataReceiver(); var decoder = new DecodingWithMethod(transponderDataReceiver, trackReceiver); System.Console.ReadLine(); }
public ControllerFactory() { Decoder = new Decoder(); Filter = new TrackDataFilter(); CollisionDetector = new CollisionDetector(new Logger()); Display = new Display(); Receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); FlightCalculator = new FlightCalculator(new VelocityCalculator(), new DirectionCalculator()); }
public static void SimulationThread(Airspace airspace) { CoordinateMapper coordinate = new CoordinateMapper(new TransponderDataFormat()); coordinate.Attach(airspace); TrackSimulator simulator = new TrackSimulator(coordinate, TransponderReceiverFactory.CreateTransponderDataReceiver()); simulator.StartSimulation(); }
static void Main(string[] args) { var tr = TransponderReceiverFactory.CreateTransponderDataReceiver(); var decoding = new Decoding(tr); while (true) { Thread.Sleep(1000); } }
private static void Main() { Console.CursorVisible = false; var tos = new Tos(TransponderReceiverFactory.CreateTransponderDataReceiver()); var atm = new AirTrafficController(new CollisionDetector(), new TrackStorage(), new AirSpace(), new ConsoleView(new ConsoleOutput()), new FileLogger()); tos.Attach(atm); Console.ReadLine(); }
static void Main(string[] args) { ITransponderReceiver transponderDataReceiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); var decoder = new DecodingWithEvent(transponderDataReceiver); decoder.TrackDataReady += (o, trackArgs) => PrintTracks(trackArgs.TrackData); System.Console.ReadLine(); }
static void Main(string[] args) { var receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); var trackReciever = new TrackReciever(receiver); var dataCalculator = new DataCalculator(trackReciever); var controller = new AirTrafficController(dataCalculator); while (true) { } }
public ViewModel() { Renderer = new Renderer(new Controller(new Relay(TransponderReceiverFactory.CreateTransponderDataReceiver()), new Area(), new CompassCourse(), new Conflict(), new Speed(), new EventDetector(new FileLog()))); Renderer.RenderTracks += RenderAllEventHandler; Renderer.RenderEvent += RenderEventHandler; notificationEvents = new List<Event>(); warningEvents = new List<Event>(); }
public ATM() { _detector = new CollisionDetector(); _detector.SeparationEvent += DetectorOnSeparationEvent; _detector.NoSeperationEvent += DetectorOnNoSeperationEvent; _dataParser = new TransponderDataParser(); _receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); _receiver.TransponderDataReady += ReceiverOnTransponderDataReady; UpdateScreen(); }
public Decoder() { _airspace = new Airspace(90000, 10000, 90000, 10000, 20000, 500); Writer = new LogWriter(); CollisionDetector = new CollisionDetector(); Tracks = new List <ITrack>(); Track = new Track(); TransponderReceiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); TransponderReceiver.TransponderDataReady += DecodeTransData; }
static void Main(string[] args) { Console.CursorVisible = false; Console.SetWindowSize(200, 60); var trackFactory = new TrackFactory(TransponderReceiverFactory.CreateTransponderDataReceiver()); var airspace = new Airspace(trackFactory); var separation = new Separation(airspace); new Output(trackFactory, airspace, separation); Console.ReadKey(); }
static void Main(string[] args) { IFlightRecordFactory factory = new FlightRecordFactory(); IFlightRecordReceiver recordReceiver = new FlightRecordReceiver(TransponderReceiverFactory.CreateTransponderDataReceiver(), factory); IView view = new ConsoleView(new CustomConsole()); ILogger logger = new Logger(); IAirspace monitoredAirspace = new Airspace(90000, 10000, 20000, 500); ISeperationHandler handler = new SeparationHandler(); FlightObserver flightObserver = new FlightObserver(monitoredAirspace, recordReceiver, view, handler); AirspaceEventHandler airspaceEventHandler = new AirspaceEventHandler(flightObserver, view, logger, handler); Console.ReadKey(); }
static void Main(string[] args) { var receiver = TransponderReceiverFactory.CreateTransponderDataReceiver(); var decrypting = new Decrypting(receiver); var airspace = new Airspace(decrypting); var trackCalculator = new TrackCalculator(airspace); var rendering = new Rendering(trackCalculator); var conflictDetection = new ConflictDetection(); while (true) { } }