/** * Handler for all assets * $Id$ * $HeadURL$ * $Author$ * Created by Iuliana Ojog, SLSE, 2017-09-20 */ #pragma once #include #include #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 m_objectAssetMap; MainHandler *m_mainHandler; NGL::INGLLogger &m_logger; }; }