63 lines
1.6 KiB
C++
Executable File
63 lines
1.6 KiB
C++
Executable File
/**
|
|
* MainHandler for AereaEffectSimulation
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
*/
|
|
#pragma once
|
|
|
|
#include <QObject>
|
|
#include <memory>
|
|
|
|
#include "dds_handler.h"
|
|
#include "asm_db.h"
|
|
#include "WebSocketInterface/websocket_interface_handler.h"
|
|
|
|
#include "logger.h"
|
|
|
|
|
|
namespace NGLDB
|
|
{
|
|
template <typename DB> class DbServiceHandler;
|
|
}
|
|
namespace AssetManagement
|
|
{
|
|
using DbHandler = NGLDB::DbServiceHandler<DatabaseInterface>;
|
|
//class HandlerMapDescription;
|
|
class HandlerTrainingArea;
|
|
class HandlerWorkstationLogout;
|
|
class HandlerAsset;
|
|
class HandlerLocation;
|
|
class HandlerRelayInfo;
|
|
class MainHandler : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit MainHandler(QObject *parent = nullptr);
|
|
~MainHandler();
|
|
|
|
bool init(int domainId);
|
|
|
|
std::shared_ptr<DdsHandler> dds() const { return m_ddsHandler; }
|
|
std::shared_ptr<DatabaseInterface> db() const;
|
|
|
|
int exerciseId() const;
|
|
|
|
private:
|
|
bool initAsmHandler();
|
|
private:
|
|
// std::shared_ptr<HandlerMapDescription> m_handlerMapDesc;
|
|
std::shared_ptr<HandlerTrainingArea> m_handlerTrainingArea;
|
|
std::shared_ptr<HandlerWorkstationLogout> m_handlerWorkstationLogout;
|
|
std::shared_ptr<HandlerAsset> m_handlerAsset;
|
|
std::shared_ptr<HandlerLocation> m_handlerLocation;
|
|
std::shared_ptr<HandlerRelayInfo> m_handlerRelayInfo;
|
|
std::shared_ptr<DdsHandler> m_ddsHandler;
|
|
std::shared_ptr<DbHandler> m_dbHandler;
|
|
std::shared_ptr<WebSocketInterface::WebSocketInterfaceHandler> m_handlerWebSocket;
|
|
|
|
NGL::INGLLogger &m_logger;
|
|
|
|
};
|
|
} // namespace AssetManagement
|