46 lines
1.1 KiB
C++
Executable File
46 lines
1.1 KiB
C++
Executable File
/**
|
|
* Handler for all assets
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
* Created by Iuliana Ojog, SLSE, 2017-09-20
|
|
*/
|
|
#pragma once
|
|
|
|
#include <QObject>
|
|
#include <QHash>
|
|
|
|
#include "dds_handler.h"
|
|
#include "logger.h"
|
|
|
|
namespace AssetManagement
|
|
{
|
|
class MainHandler;
|
|
class ObjectRelayInfo;
|
|
class HandlerRelayInfo final : public QObject
|
|
, protected Interface::Fts::RelayInfoModifyRequestHandler
|
|
, protected Interface::Fts::RelayInfoRemoveRequestHandler
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit HandlerRelayInfo(MainHandler *mainHandler,
|
|
QObject *parent = nullptr);
|
|
~HandlerRelayInfo();
|
|
|
|
bool init();
|
|
|
|
private:
|
|
void onRelayInfoModifyRequest(const rti::core::SampleIdentity &cookie,
|
|
const RelayInfo &request) override;
|
|
Core::FunctionReplyObject relayInfoModifyRequest(const RelayInfo &request);
|
|
void onRelayInfoRemoveRequest(const rti::core::SampleIdentity &cookie,
|
|
const Core::RemoveElementRequest &request) override;
|
|
|
|
private:
|
|
QHash<int, ObjectRelayInfo*> m_objectRelayInfoMap;
|
|
MainHandler *m_mainHandler;
|
|
NGL::INGLLogger &m_logger;
|
|
|
|
};
|
|
}
|