-
Notifications
You must be signed in to change notification settings - Fork 22
/
SquawkGeneratorInterface.h
27 lines (24 loc) · 1.13 KB
/
SquawkGeneratorInterface.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#pragma once
namespace UKControllerPlugin::Euroscope {
class EuroScopeCFlightPlanInterface;
class EuroScopeCRadarTargetInterface;
} // namespace UKControllerPlugin::Euroscope
namespace UKControllerPlugin::Squawk {
/*
Makes the relevant API calls to generate a squawk for an aircraft.
*/
class SquawkGeneratorInterface
{
public:
virtual ~SquawkGeneratorInterface() = default;
virtual auto DeleteApiSquawkAndSetTo(
const std::string& squawk, UKControllerPlugin::Euroscope::EuroScopeCFlightPlanInterface& flightplan)
-> bool = 0;
virtual auto ForceGeneralSquawkForAircraft(
UKControllerPlugin::Euroscope::EuroScopeCFlightPlanInterface& flightplan,
UKControllerPlugin::Euroscope::EuroScopeCRadarTargetInterface& radarTarget) -> bool = 0;
virtual auto ForceLocalSquawkForAircraft(
UKControllerPlugin::Euroscope::EuroScopeCFlightPlanInterface& flightplan,
UKControllerPlugin::Euroscope::EuroScopeCRadarTargetInterface& radarTarget) -> bool = 0;
};
} // namespace UKControllerPlugin::Squawk