allow to add flights as forced for AMAN to include them, if the neighboring controller is not using AMAN

This commit is contained in:
Sven Czarnian
2021-11-20 09:28:36 +01:00
parent 2cc7c401e8
commit 1bb9813a7a
2 changed files with 103 additions and 29 deletions

View File

@@ -35,6 +35,7 @@ namespace aman {
* @brief Defines the different internal and external tag functions
*/
enum class TagItemFunction {
ForceToBackend = 0,
};
private:
@@ -45,13 +46,12 @@ namespace aman {
aman::Aircraft* generateAircraftMessage(const EuroScopePlugIn::CRadarTarget& target);
void generateAircraftReportMessage(const EuroScopePlugIn::CRadarTarget& radarTarget, aman::AircraftReport* report);
Communication m_configuration;
std::shared_ptr<RadarScreen> m_screen;
std::mutex m_updateQueueLock;
std::list<std::string> m_updateQueue;
bool m_compatible;
std::mutex m_airportsLock;
std::vector<std::string> m_airports;
Communication m_configuration;
std::shared_ptr<RadarScreen> m_screen;
std::mutex m_updateQueueLock;
std::map<std::string, std::list<std::string>> m_updateQueue;
std::list<std::string> m_forcedToBackendCallsigns;
bool m_compatible;
public:
/**
@@ -79,6 +79,14 @@ namespace aman {
*/
EuroScopePlugIn::CRadarScreen* OnRadarScreenCreated(const char* displayName, bool needsRadarContent, bool geoReferenced,
bool canBeSaved, bool canBeCreated) override;
/**
* @brief Called as soon as a function is triggered
* @param[in] functionId The triggered ID
* @param[in] itemString The content of the message
* @param[in] pt The click position
* @param[in] area The clicked area
*/
void OnFunctionCall(int functionId, const char* itemString, POINT pt, RECT area) override;
/**
* @brief Called every second
* @param[in] counter The counter that indicates the seconds
@@ -89,5 +97,10 @@ namespace aman {
* @param[in] radarTarget The updated radar target
*/
void OnRadarTargetPositionUpdate(EuroScopePlugIn::CRadarTarget radarTarget) override;
/**
* @brief Called as soon as a flight plan is offline
* @param[in] flightPlan The disconnected flight plan
*/
void OnFlightPlanDisconnect(EuroScopePlugIn::CFlightPlan flightPlan) override;
};
}