From 9869a448d8c90f263b378d4343617dc27786ec4a Mon Sep 17 00:00:00 2001 From: Norman Princen <63923352+NPrincen@users.noreply.github.com> Date: Sat, 2 May 2020 14:07:10 -0700 Subject: [PATCH] Added HandlePosT function that combines HandlePosi with HandleGetT --- xpcPlugin/MessageHandlers.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/xpcPlugin/MessageHandlers.cpp b/xpcPlugin/MessageHandlers.cpp index 43e90af..0008f8f 100644 --- a/xpcPlugin/MessageHandlers.cpp +++ b/xpcPlugin/MessageHandlers.cpp @@ -70,6 +70,7 @@ namespace XPC handlers.insert(std::make_pair("GETC", MessageHandlers::HandleGetC)); handlers.insert(std::make_pair("GETP", MessageHandlers::HandleGetP)); handlers.insert(std::make_pair("GETT", MessageHandlers::HandleGetT)); + handlers.insert(std::make_pair("POST", MessageHandlers::HandlePosT)); // X-Plane data messages handlers.insert(std::make_pair("DSEL", MessageHandlers::HandleXPlaneData)); handlers.insert(std::make_pair("USEL", MessageHandlers::HandleXPlaneData)); @@ -630,6 +631,21 @@ namespace XPC } } + void MessageHandlers::HandlePosT(const Message& msg) + { + MessageHandlers::HandlePosi(msg); + + const unsigned char* buffer = msg.GetBuffer(); + char aircraftNumber = buffer[5]; + Log::FormatLine(LOG_TRACE, "POST", "Getting terrain information for aircraft %u", aircraftNumber); + + double pos[3]; + pos[0] = DataManager::GetDouble(DREF_Latitude, aircraftNumber); + pos[1] = DataManager::GetDouble(DREF_Longitude, aircraftNumber); + pos[2] = 0.0; + MessageHandlers::SendTerr(pos, aircraftNumber); + } + void MessageHandlers::HandleGetT(const Message& msg) { const unsigned char* buffer = msg.GetBuffer();