VR-Engage  2.2
Loading...
Searching...
No Matches
connector.h
Go to the documentation of this file.
1/******************************************************************************
2** Copyright (c) 2025 MAK Technologies
3** All rights reserved.
4******************************************************************************/
5
6//! \file connector.h
7//! \brief Defines the DtConnector base class for simulation protocol connections
8//!
9//! This file contains the base class for all connectors in VR-Engage. Connectors
10//! handle communication between the application and external simulation protocols
11//! like DIS and HLA. They provide a consistent interface for sending and receiving
12//! simulation data regardless of the underlying protocol implementation.
13
14#pragma once
15
17
18#include <string>
19
20namespace makVre
21{
22//! \brief Base class for simulation protocol connectors
23//!
24//! DtConnector serves as the foundation for all connector classes that
25//! interface with external simulation protocols. Connectors are responsible
26//! for translating between internal VR-Engage messages and protocol-specific
27//! data formats. Each supported protocol (DIS, HLA, etc.) has its own
28//! connector implementation.
30{
31public:
32 //! \brief Enumeration of supported connector types
33 //!
34 //! Defines the simulation protocols supported by VR-Engage.
36 {
37 DIS, //!< Distributed Interactive Simulation protocol
38 HLA13, //!< High Level Architecture 1.3 protocol
39 HLA1516, //!< High Level Architecture 1516 protocol
40 HLA1516E, //!< High Level Architecture 1516e protocol
41 HLA4 //!< High Level Architecture 4 (2025) protocol
42 };
43
44 //! \brief Constructor
45 //!
46 //! Creates a connector instance with default values.
48
49 //! \brief Virtual destructor
50 //!
51 //! Ensures proper cleanup of derived connector classes.
52 virtual ~DtConnector();
53
54 //! \brief Gets the connector type
55 //! \return The connector type (protocol) enumeration value
56 //!
57 //! Returns the protocol type this connector implements.
58 virtual DtConnectorType type() { return myType; }
59
60 //! \brief Gets the connector name
61 //! \return String containing the connector name
62 //!
63 //! Returns the name of this connector instance.
64 virtual std::string name() { return myName; }
65
66
67 //! \brief Gets the file extension for a specific connector type
68 //! \param type The connector type to get the extension for
69 //! \return String containing the file extension
70 //!
71 //! Returns the standard file extension associated with the specified
72 //! connector type (protocol). Used for identifying protocol-specific files.
73 static std::string extension(DtConnectorType type);
74
75protected:
76 //! \brief Connector instance name
77 std::string myName;
78
79 //! \brief Connector type (protocol)
81};
82
83} // namespace makVre
std::string myName
Connector instance name.
Definition connector.h:77
virtual DtConnectorType type()
Gets the connector type.
Definition connector.h:58
DtConnector()
Constructor.
DtConnectorType
Enumeration of supported connector types.
Definition connector.h:36
@ DIS
Distributed Interactive Simulation protocol.
Definition connector.h:37
@ HLA1516E
High Level Architecture 1516e protocol.
Definition connector.h:40
@ HLA4
High Level Architecture 4 (2025) protocol.
Definition connector.h:41
@ HLA1516
High Level Architecture 1516 protocol.
Definition connector.h:39
@ HLA13
High Level Architecture 1.3 protocol.
Definition connector.h:38
DtConnectorType myType
Connector type (protocol)
Definition connector.h:80
static std::string extension(DtConnectorType type)
Gets the file extension for a specific connector type.
virtual std::string name()
Gets the connector name.
Definition connector.h:64
virtual ~DtConnector()
Virtual destructor.
Defines export macros for the VR-Engage Player Station library.
#define PLAYERSTATION_DLL
Definition export.h:24
Include export definitions for this library.
Definition glsVreMessageUtil.h:49