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

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 ObjectAsset;
class HandlerAsset final : public QObject
, protected Interface::Fts::AssetModifyRequestHandler
, protected Interface::Fts::AssetRemoveRequestHandler
{
Q_OBJECT
public:
explicit HandlerAsset(MainHandler *mainHandler,
QObject *parent = nullptr);
~HandlerAsset();
bool init();
private:
void onAssetModifyRequest(const rti::core::SampleIdentity &cookie,
const Asset &request) override;
Core::FunctionReplyObject assetModifyRequest(const Asset &request);
void onAssetRemoveRequest(const rti::core::SampleIdentity &cookie,
const Core::RemoveElementRequest &request) override;
private:
QHash<int, ObjectAsset *> m_objectAssetMap;
MainHandler *m_mainHandler;
NGL::INGLLogger &m_logger;
};
}