VR-Engage  2.2
Loading...
Searching...
No Matches
DtPlayerStationOsgGlStudioCockpitAgent.hpp
Go to the documentation of this file.
1/******************************************************************************
2** Copyright (c) 2025 MAK Technologies
3** All rights reserved.
4******************************************************************************/
5
6//! \file DtPlayerStationOsgGlStudioCockpitAgent.hpp
7//! \brief Agent class for player station OSG GLStudio cockpit integration
8//! \ingroup vreGlsEventSignaler
9
10#pragma once
11
12//! \note This file contains both generated code and manual modifications
13//! \note Generated by dcgen tool with manual export macro fixes
14//!
15//! The following modifications were made to the generated code:
16//! - Added include for the mfsRwrVrv.h file to ensure proper export macro availability
18
19#include <vrvGlStudioShared/DtOsgGlStudioCockpitAgent.hpp>
20
21namespace makVre
22{
23
24//! \brief Forward declaration of the player station OSG GLStudio cockpit class
26
27//! \brief Agent class for the DtPlayerStationOsgGlStudioCockpit scene object
28//!
29//! This agent provides an interface to control and communicate with a player station
30//! OSG GLStudio cockpit instance. It extends the basic GLStudio cockpit agent
31//! functionality to work specifically with player station cockpits, enabling
32//! interactive cockpit instrumentation and displays within the simulation environment.
33//!
34//! As an agent, it forms part of the scene graph management system and can be
35//! used in distributed rendering scenarios.
36class DT_DLL_MFSRWRVRV DtPlayerStationOsgGlStudioCockpitAgent : public virtual makVrv::DtOsgGlStudioCockpitAgent
37{
38public:
39 //! \brief Default constructor
40 //!
41 //! Initializes a new player station OSG GLStudio cockpit agent
43
44 //! \brief Static helper for creating a new agent instance
45 //! \param sceneInterface Reference to the agent manager interface
46 //! \param bDistribute Whether the agent should be distributed across the network
47 //! \return Pointer to the newly created agent
48 //!
49 //! Creates a new player station OSG GLStudio cockpit agent and registers it with the scene
50 static DtPlayerStationOsgGlStudioCockpitAgent* create(makVrv::DtAgentManagerInterface& sceneInterface, bool bDistribute = true);
51
52 //! \brief Virtual destructor
54
55 //! \brief Attempts to find the actual cockpit object this agent is controlling
56 //! \return Pointer to the controlled cockpit object, or nullptr if not found
57 //! \warning Any direct modifications to the object will not work in distributed rendering
58 //!
59 //! This method locates the underlying cockpit object that this agent represents.
60 //! Changes made directly to this object will not be replicated in distributed rendering.
62
63 //! \brief Const version of findObject()
64 //! \return Const pointer to the controlled cockpit object, or nullptr if not found
65 //! \warning Any direct modifications to the object will not work in distributed rendering
67
68
69protected:
70 //! \brief Pure virtual implementation method for finding the specific cockpit object
71 //! \return Pointer to the cockpit object cast to the correct type
72 //!
73 //! This protected method is implemented by concrete subclasses to perform
74 //! the actual finding and casting of the controlled cockpit object
76};
77
78}
79
virtual DtPlayerStationOsgGlStudioCockpit * findObjectAsDtPlayerStationOsgGlStudioCockpit()=0
Pure virtual implementation method for finding the specific cockpit object.
DtPlayerStationOsgGlStudioCockpit * findObject()
Attempts to find the actual cockpit object this agent is controlling.
const DtPlayerStationOsgGlStudioCockpit * findObject() const
Const version of findObject()
static DtPlayerStationOsgGlStudioCockpitAgent * create(makVrv::DtAgentManagerInterface &sceneInterface, bool bDistribute=true)
Static helper for creating a new agent instance.
DtPlayerStationOsgGlStudioCockpitAgent()
Default constructor.
virtual ~DtPlayerStationOsgGlStudioCockpitAgent() override
Virtual destructor.
Player station implementation of the OSG GLStudio cockpit.
Definition playerStationOsgGlStudioCockpit.h:54
Defines DLL export macros for the RadarWarningReceiver VRV extension.
#define DT_DLL_MFSRWRVRV
Export/import macro for non-Windows platforms (empty)
Definition mfsRwrVrv.h:25
Include export definitions for this library.
Definition glsVreMessageUtil.h:49