Files
qt5-legatus-legacy/Lts/Services/EffectShowManagement/object_aes_data.h
T

102 lines
3.4 KiB
C++
Executable File

/**
* Exercise object
* $Id$
* $HeadURL$
* $Author$
*/
#pragma once
#include <QObject>
#include "dds_handler.h"
#include "logger.h"
#include <Core/function_reply_object.h>
// Generated
#include <EffectShowManagement/esm_db.h>
namespace EffectShowManagement
{
class Initialization;
class ObjectAesData : public QObject
{
Q_OBJECT
public:
explicit ObjectAesData(Initialization *mainHandler,
QObject *parent = nullptr);
Core::FunctionReplyObject createObject(const Database::EsmAesData &data);
Core::FunctionReplyObject updateObject(const Database::EsmAesData &data);
Core::FunctionReplyObject removeObject();
int getId() const { return m_data.idAes; }
void setData(const Database::EsmAesData &data) { m_data = data; }
/**
* @brief Checks if the area related to the effect show has been changed.
* @param data Area related to the effect show has been changed
* @return (true)Data has been chanbed
*/
bool areaChanged(const Database::EsmAesData &data) const;
/**
* @brief Checks if only the data related to the effect show has been changed, but the area has not been changed.
* @param data Current area simulation data extract
* @return (true)The data related to the effect show has been changed
*/
bool dataChanged(const Database::EsmAesData &data) const;
/**
* @brief Checks if the area simulation has been paused.
* @param data Current area simulation data extract
* @return (true)Area simulation has been paused
*/
bool statusPaused(const Database::EsmAesData &data) const;
/**
* @brief Checks if the area simulatin has been restarted.
* @param data Current area simulation data extract
* @return (true)The Area simulation has been restarted.
*/
bool statusContinued(const Database::EsmAesData &data) const;
/**
* @brief Checks if the area simulatin has been ended.
* @param data Current area simulation data extract
* @return (true)The Area simulation has been ended.
*/
bool statusExpired(const Database::EsmAesData &data) const;
/**
* @brief Reduces the data of the explosion area effect simulation to the data needed by the effect show.
* @param data Current area simulation data
* @return Extract needed from the area simulation data
*/
static Database::EsmAesData asEsmAesData(const AreaEffectSimulation::ExplosionArea &data);
/**
* @brief Reduces the data of the min area effect simulation to the data needed by the effect show.
* @param data Current area simulation data
* @return Extract needed from the area simulation data
*/
static Database::EsmAesData asEsmAesData(const AreaEffectSimulation::MineArea &data);
/**
* @brief Reduces the data of the min area effect simulation to the data needed by the effect show.
* @param data Current area simulation data
* @return Extract needed from the area simulation data
*/
static Database::EsmAesData asEsmAesData(const AreaEffectSimulation::ExplosionCluster &data);
/**
* @brief Reduces the data of the min area effect simulation to the data needed by the effect show.
* @param data Current area simulation data
* @return Extract needed from the area simulation data
*/
static Database::EsmAesData asEsmAesData(const AreaEffectSimulation::EffectCluster &data);
private:
Initialization *m_mainHandler;
Database::EsmAesData m_data;
NGL::INGLLogger &m_logger;
};
}