/** * Constructor of the GlideComputer class * @return */ GlideComputer::GlideComputer(ProtectedTaskManager &task, ProtectedAirspaceWarningManager &airspace, GlideComputerTaskEvents& events): GlideComputerBlackboard(task), GlideComputerAirData(airspace, task), GlideComputerTask(task), GlideComputerStats(task) { events.set_computer(*this); }
/** * Constructor of the GlideComputer class * @return */ GlideComputer::GlideComputer(const Waypoints &_way_points, Airspaces &_airspace_database, ProtectedTaskManager &task, GlideComputerTaskEvents& events): air_data_computer(_way_points), task_computer(task, _airspace_database), warning_computer(_airspace_database), waypoints(_way_points), team_code_ref_id(-1) { events.SetComputer(*this); idle_clock.Update(); }
GlideComputer::GlideComputer(const ComputerSettings &_settings, const Waypoints &_way_points, Airspaces &_airspace_database, ProtectedTaskManager &task, GlideComputerTaskEvents& events) :air_data_computer(_way_points), warning_computer(_settings.airspace.warnings, _airspace_database), task_computer(task, _airspace_database, &warning_computer.GetManager()), waypoints(_way_points), retrospective(_way_points), team_code_ref_id(-1) { ReadComputerSettings(_settings); events.SetComputer(*this); idle_clock.Update(); }