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

60 lines
1.4 KiB
C++
Executable File

/**
* Handler TargetAreaAssignments (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 ObjectTargetAreaAssignment
{
public:
explicit ObjectTargetAreaAssignment(MainHandler *mainHandler);
~ObjectTargetAreaAssignment();
Core::FunctionReplyObject createObject(const TargetAreaAssignment &data);
Core::FunctionReplyObject updateObject(const TargetAreaAssignment &data);
Core::FunctionReplyObject removeObject();
qint32 getId() const { return m_data.id(); }
QString getName() const { return QString::fromStdString(m_data.name()); }
const TargetAreaAssignment &getData() const { return m_data; }
bool isValid() const;
bool isUsed() const;
Core::FunctionReplyObject setUsed(bool isUsed);
// convert methods
static Database::TgtTargetAreaAssignment toDbData(const TargetAreaAssignment &ddsData); // dds -> db
static TargetAreaAssignment toDdsData(const Database::TgtTargetAreaAssignment &dbData); // db -> dds
protected:
void onPublishData();
private:
MainHandler *m_mainHandler;
TargetAreaAssignment m_data;
NGL::INGLLogger &m_logger;
};
}