/** * @RDE_HEADER@ * MeteoDataManagement - Static Meteo Data Edit Dialog * $Id$ * $HeadURL$ * $Author$ * Created by hjl, SLSE, 2016-10-17 */ #pragma once #include #include #include namespace EffectShowManagement { /** * @brief Converts the data telegrams to be set to Training Area Base proxy. * * For the telegram data to be converted see GUEZSB60_ICD-0046C. */ namespace ConvertToTab { /** * @brief Order effect show. */ struct EffectShowOrder_t { qint16 idEffectShow = 0; // ID effect show qint32 startTime = 0; // GPS time Core::GeoPosition2D centerPosition; // center pos effect area int areaWidth = 0; // [0..300] int areaDepth = 0; // [0..300] double rotation = 0; // [deg] Core::GeoPosition2D lowerLeftPosition; // lower left corner effect area qint8 numOfVolley = 0; // number of volley qint8 shotsPerVolley = 0; // number of volley qint8 typeOfAmmunition = 0; // type of ammunition qint16 duration = 0; // duration of the effect show QString name; }; /** * @brief Returns the telegram to order a effect show. * @return Telegram to order a effect show. */ std::vector convertEffectShowOrder(const EffectShowOrder_t &effectShowOrder); /** * @brief Order Relocation of Effect Show Actor. */ struct RelocationOrder_t { qint16 idRelocation = 0; qint64 executionTime = 0; // GPS time [s] Core::GeoPosition2D centerPosition; // center pos effect area QString infoText; // max ASCII-char: 40 }; /** * @brief Returns the telegram to order a relocation of the effect show actor. * @return Telegram to order a relocation. */ std::vector convertRelocationOrder(const RelocationOrder_t &relocationOrder); /** * @brief Returns the telegram to stop the effect show. * @return Telegram to stop the effect show. */ std::vector convertEffectShowStop(const qint16 &idEffectShow); /** * @brief Order continue Effect Show. */ struct EffectShowContinue_t { qint16 idEffectShow = 0; // ID of effect show qint64 executionTime = 0; // GPS time [s] }; /** * @brief Returns the telegram to continue the effect show. * @return Telegram to continue the effect show. */ std::vector convertEffectShowContinue(const EffectShowContinue_t &effectShowContinue); /** * @brief Retract order. */ struct RetractOrder_t { qint8 orderType = 0; // 0=Relocation; 1=Effect Show qint16 id = 0; // Id of Relocation or Effect Show }; /** * @brief Returns the telegram to retract the order. * @return Telegram to retract the order. */ std::vector convertOrderRetract(const RetractOrder_t &retractOrder); /** * @brief Returns the telegram to request the status. * @return Telegram to request the status. */ std::vector convertStatusRequest(); /** * @brief Returns the telegram to provide meteo data. * @return Telegram to to provide meteo data. */ std::vector convertMeteoData(const MeteoDataManagement::MeteoData &meteoData); } } //namespace EffectShowManagement