71 lines
2.2 KiB
C++
Executable File
71 lines
2.2 KiB
C++
Executable File
/**
|
|
* Exercise object
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
*/
|
|
#pragma once
|
|
|
|
#include <QObject>
|
|
#include "dds_handler.h"
|
|
#include "esm_convert_to_tab.h"
|
|
#include "esm_convert_from_tab.h"
|
|
#include "logger.h"
|
|
|
|
#include <Core/function_reply_object.h>
|
|
#include <EffectShowManagement/esm_db.h>
|
|
#include <EffectShowManagement/esm_dts.h>
|
|
|
|
namespace EffectShowManagement
|
|
{
|
|
class Initialization;
|
|
|
|
class ObjectEffectShow : QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit ObjectEffectShow(Initialization *mainHandler, QObject *parent = nullptr);
|
|
~ObjectEffectShow();
|
|
|
|
Core::FunctionReplyObject createObject(const Database::EsmEffectShow &data, bool bForceUpdateDb = false);
|
|
Core::FunctionReplyObject removeObject();
|
|
Core::FunctionReplyObject updateObject(const EffectShowManagement::EffectShow &data);
|
|
bool updateObject(const ConvertFromTab::OrderConfirmation_t &data);
|
|
bool updateObject(const Database::EsmEffectShow &data);
|
|
bool resetOrderConfirmation();
|
|
|
|
int getId() const { return m_data.id; }
|
|
QString getName() const { return m_data.name; }
|
|
int getIdAES() const { return m_data.idAreaEffectSimulation; }
|
|
const Database::EsmEffectShow &getData() const { return m_data; }
|
|
void setRemoveFromDdsOnDestruction(bool remove) { m_bRemoveFromDdsOnDestruction = remove; }
|
|
|
|
/**
|
|
* @brief Creates the data needed for the effect show order telegram from the effect show data.
|
|
* @return Data needed for the effect show order telegram from the effect show data
|
|
*/
|
|
ConvertToTab::EffectShowOrder_t getEffectShowOrder() const;
|
|
/**
|
|
* @brief Creates the data needed for the effect show retract order telegram from the effect show data.
|
|
* @return Data needed for the effect show retract order telegram from the effect show data
|
|
*/
|
|
ConvertToTab::RetractOrder_t getRetractOrder() const;
|
|
/**
|
|
* @brief Creates the data needed for the effect show continue telegram from the effect show data.
|
|
* @return Data needed for the effect show continue telegram from the effect show data
|
|
*/
|
|
ConvertToTab::EffectShowContinue_t getContinueOrder() const;
|
|
|
|
public Q_SLOTS:
|
|
void onPublishData();
|
|
|
|
private:
|
|
Initialization *m_mainHandler;
|
|
Database::EsmEffectShow m_data;
|
|
bool m_bRemoveFromDdsOnDestruction = true;
|
|
|
|
NGL::INGLLogger &m_logger;
|
|
|
|
};
|
|
}
|