Files
qt5-legatus-legacy/Lts/Services/TargetManagement/object_shootback_area.h
T
2026-08-13 18:33:10 +02:00

60 lines
1.3 KiB
C++
Executable File

/**
* Handler ShootbackAreas (L400)
* $Id$
* $HeadURL$
* $Author$
* Created by N. Thoden, NLE, 06.04.2020
*/
#pragma once
#include "dds_handler.h"
#include "logger.h"
#include <DDS/Core/function_reply_object.h>
// Generated
#include <TargetManagement/tgt.hpp>
#include <TargetManagement/tgt_db.h>
namespace NGL
{
class INGLLogger;
}
namespace TargetManagement
{
class MainHandler;
class ObjectShootbackArea
{
public:
explicit ObjectShootbackArea(MainHandler *mainHandler);
~ObjectShootbackArea();
Core::FunctionReplyObject createObject(const ShootbackArea &data);
Core::FunctionReplyObject updateObject(const ShootbackArea &data);
Core::FunctionReplyObject removeObject();
qint32 getId() const { return m_data.id(); }
QString getName() const { return QString::fromStdString(m_data.name()); }
const ShootbackArea &getData() const { return m_data; }
bool isValid() const;
bool isUsed() const;
Core::FunctionReplyObject setUsed(bool isUsed);
// convert methods
static Database::TgtShootbackArea toDbData(const ShootbackArea &ddsData); // dds -> db
static ShootbackArea toDdsData(const Database::TgtShootbackArea &dbData); // db -> dds
protected:
void onPublishData();
private:
MainHandler *m_mainHandler;
ShootbackArea m_data;
NGL::INGLLogger &m_logger;
};
}