VR-Engage  2.2
Loading...
Searching...
No Matches
vreVrfMessageInterface.h
Go to the documentation of this file.
1/******************************************************************************
2** Copyright (c) 2025 MAK Technologies
3** All rights reserved.
4******************************************************************************/
5
6//! \file vreVrfMessageInterface.h
7//! \brief Defines DtVreVrfMsgInterface for handling VR-Forces message interactions
8//!
9//! This interface manages message communication with VR-Forces, providing factory
10//! registration for various message types and handling of incoming data events.
11
12#pragma once
13
14#include "export.h"
15
16#include <vrfMsgTransport/vrfMessageInterface.h>
17#include <vrfmsgs/defaultVrfObjectMessageFactory.h>
18#include <vrftasks/defaultSimTaskFactory.h>
19#include <vrftasks/defaultSimReportFactory.h>
20#include <vrftasks/defaultSetDataRequestFactory.h>
21#include <vrfutil/defaultCondExprFactory.h>
22#include <vrfplan/defaultStatementFactory.h>
23
24
25//! \brief Interface for handling VR-Forces message interactions in the VREngage framework
26//!
27//! DtVreVrfMsgInterface extends the base VR-Forces message interface to provide
28//! VREngage-specific message handling functionality. It initializes various factory
29//! objects for creating message types, tasks, reports, and other simulation elements.
30class VRL_DLL DtVreVrfMsgInterface : public DtVrfMessageInterface
31{
32public:
33 //! \brief Constructor for the VR-Forces message interface
34 //! \param exConn Pointer to the communication manager to use
35 //! \param useDefaultInterfaceFactory If true, uses the default interface factory
36 DtVreVrfMsgInterface(DtCommunicationManager* exConn, bool useDefaultInterfaceFactory = true);
37
38 //! \brief Processes an incoming VR-Forces data event
39 //! \param dataInter Pointer to the data event to process
40 //! \return True if the message was successfully handled, false otherwise
41 //!
42 //! This method is overridden to handle VR-Forces data interactions.
43 //! Currently, it simply delegates to the parent class implementation.
44 virtual bool receiveMessage(const makVrfEvents::DtDataEvent* dataInter) override;
45
46 //! \brief Initializes the message interface and registers message factory objects
47 //! \return True if initialization was successful, false otherwise
48 //!
49 //! This method sets up the factory objects for various message types and simulation elements.
50 //! It can be extended to register custom message types as needed.
51 virtual bool init() override;
52
53protected:
54 //! \brief Default constructor - not implemented
55 //!
56 //! Declared but not implemented to prevent usage.
58
59protected:
60 //! \brief Factory for creating VR-Forces object messages
61 DtDefaultVrfObjectMessageFactory myRadioMsgFact;
62
63 //! \brief Factory for creating condition expressions
64 DtDefaultCondExprFactory myCondExprFact;
65
66 //! \brief Factory for creating simulation statements
67 DtDefaultStatementFactory myStmtFact;
68
69 //! \brief Factory for creating simulation reports
70 DtDefaultSimReportFactory myReportFact;
71
72 //! \brief Factory for creating simulation tasks
73 DtDefaultSimTaskFactory myTaskFact;
74
75 //! \brief Factory for creating set data requests
76 DtDefaultSetDataRequestFactory mySetDataFact;
77};
DtVreVrfMsgInterface(DtCommunicationManager *exConn, bool useDefaultInterfaceFactory=true)
Constructor for the VR-Forces message interface.
DtDefaultStatementFactory myStmtFact
Factory for creating simulation statements.
Definition vreVrfMessageInterface.h:67
virtual bool receiveMessage(const makVrfEvents::DtDataEvent *dataInter) override
Processes an incoming VR-Forces data event.
DtDefaultCondExprFactory myCondExprFact
Factory for creating condition expressions.
Definition vreVrfMessageInterface.h:64
virtual bool init() override
Initializes the message interface and registers message factory objects.
DtDefaultSetDataRequestFactory mySetDataFact
Factory for creating set data requests.
Definition vreVrfMessageInterface.h:76
DtDefaultSimTaskFactory myTaskFact
Factory for creating simulation tasks.
Definition vreVrfMessageInterface.h:73
DtDefaultVrfObjectMessageFactory myRadioMsgFact
Factory for creating VR-Forces object messages.
Definition vreVrfMessageInterface.h:61
DtVreVrfMsgInterface()
Default constructor - not implemented.
DtDefaultSimReportFactory myReportFact
Factory for creating simulation reports.
Definition vreVrfMessageInterface.h:70
Defines export macros and protocol namespace for vrePlayerStationConnector.
#define VRL_DLL
Empty definition for non-Windows platforms.
Definition export.h:52