VR-Engage  2.2
Loading...
Searching...
No Matches
DtFpsOrientationUpdaterClasses.hpp
Go to the documentation of this file.
1/******************************************************************************
2** Copyright (c) 2025 MAK Technologies
3** All rights reserved.
4******************************************************************************/
5
6//! \file DtFpsOrientationUpdaterClasses.hpp
7//! \brief Defines implementation classes for the orientation updater in FPS mode
8//! \ingroup vreHumanFrontend
9
10#pragma once
11
12#include "export.h"
13
14// *** Generated Code - Do Not Edit! ***
15// *** Created by dcgen ***
16
17
18#include <vrvCore/DtSceneObjectUpdaterClasses.hpp>
20
21namespace makVre
22{
23
24//! \brief Implementation of the agent class for DtFpsOrientationUpdater
25//!
26//! DtFpsOrientationUpdaterAgentImplementation provides the concrete implementation
27//! of the DtFpsOrientationUpdaterAgent interface. It forwards method calls to the
28//! actual DtFpsOrientationUpdater object and handles distributed operation.
29class HUMAN_DLL DtFpsOrientationUpdaterAgentImplementation : public virtual DtFpsOrientationUpdaterAgent , public makVrv::DtSceneObjectUpdaterAgentImplementation
30{
31public:
32 //! \brief Default constructor
34
35 //! \brief Virtual destructor
37 //! \brief Sets the heading of the model
38 //! \param heading Heading angle in degrees
39 //! \param useYaw Flag indicating whether to use yaw rotation or direct orientation
40 //!
41 //! Controls the heading rotation of the model. When useYaw is true, the heading is
42 //! applied as a yaw rotation. Otherwise, it's applied as a direct orientation change.
43 virtual void setModelHeading(double heading, bool useYaw) override;
44
45
46protected:
47 //! \brief Finds the controlled object as DtSceneObjectUpdater
48 //! \return Pointer to the controlled updater object as DtSceneObjectUpdater
49 virtual makVrv::DtSceneObjectUpdater* findObjectAsDtSceneObjectUpdater() override;
50
51 //! \brief Implementation of the abstract method to find the controlled object
52 //! \return Pointer to the controlled DtFpsOrientationUpdater object
54
55};
56
57}
58
59// *** Generated Code - Do Not Edit! ***
60// *** Created by dcgen ***
61
62
64
65namespace makVre
66{
67
68//! \brief Class definition for the DtFpsOrientationUpdater
69//!
70//! DtFpsOrientationUpdaterClassDefinition defines the function IDs and agent
71//! interactions for the DtFpsOrientationUpdater class. It establishes the
72//! interface between the agent system and the actual updater object.
73class HUMAN_DLL DtFpsOrientationUpdaterClassDefinition : public makVrv::DtInheritedAgentDefinition<makVrv::DtSceneObjectUpdaterClassDefinition,DtFpsOrientationUpdater>
74{
75public:
76 //! \brief Constructor
77 //! \param className Name of the class being defined, defaults to "DtFpsOrientationUpdater"
78 //!
79 //! All function pointers are bound in the constructor.
80 DtFpsOrientationUpdaterClassDefinition(const std::string& className = "DtFpsOrientationUpdater");
81
82 //! \brief Virtual destructor
84
85 //! \brief Unique function IDs used to store the state functions in a message
86 //!
87 //! These IDs identify the different functions that can be invoked on this class
88 //! through the agent system. They are used for message serialization and routing.
90 {
91 //! \brief ID for the setModelHeading function
92 function_setModelHeading = makVrv::DtSceneObjectUpdaterClassDefinition::end_FunctionIds,
93
94 //! \brief Marks the end of the function IDs for this class
96 };
97
98};
99
100}
101
102// *** Generated Code - Do Not Edit! ***
103// *** Created by dcgen ***
104
105#include <vrvCore/DtAgentCreator.h>
106#include <vrvCore/DtAgentFactory.h>
107
108namespace makVre
109{
110
111//! \brief Forward declaration of the orientation updater class definition
113
114//! \brief Creator class for DtFpsOrientationUpdater agents
115//!
116//! DtFpsOrientationUpdaterClassesCreator handles the creation of agents and
117//! resolvers for DtFpsOrientationUpdater objects. It registers itself with
118//! the agent factory system to enable dynamic creation of these objects.
119class HUMAN_DLL DtFpsOrientationUpdaterClassesCreator : public makVrv::DtAgentCreator
120{
121public:
122 //! \brief Default constructor
124
125 //! \brief Virtual destructor
127
128 //! \brief Static factory method to create a new creator instance
129 //! \return Pointer to a newly created DtAgentCreator instance
130 static makVrv::DtAgentCreator* create();
131
132 //! \brief Creates an agent object for the DtFpsOrientationUpdater class
133 //! \param sceneInterface Reference to the agent manager interface
134 //! \return Pointer to the newly created agent
135 virtual makVrv::DtAgent* createAgent(makVrv::DtAgentManagerInterface& sceneInterface) override;
136
137 //! \brief Creates an updater resolver for the DtFpsOrientationUpdater class
138 //! \param de Reference to the display element
139 //! \param id Unique identifier for the new resolver
140 //! \return Pointer to the newly created agent update resolver interface
141 virtual makVrv::DtAgentUpdateResolverInterface* createResolver(makVrv::DtDe& de, makVrv::DtUniqueID id) override;
142
143protected:
144 //! \brief Pointer to the class definition for DtFpsOrientationUpdater
146
147 //! \brief Static flag indicating if this creator is registered with the factory
148 static bool theRegisteredFlag;
149
150 //! \brief Static auto-unregistrar to handle cleanup when the module is unloaded
151 static makVrv::DtAgentFactory::DtAutoUnregistrar theAutoUnregistrar;
152};
153
154}
155
Defines DtFpsOrientationUpdater for managing orientation in FPS mode.
Defines DtFpsOrientationUpdaterAgent for remote control of orientation updaters.
DtFpsOrientationUpdaterAgent()
Default constructor.
virtual ~DtFpsOrientationUpdaterAgentImplementation() override
Virtual destructor.
virtual void setModelHeading(double heading, bool useYaw) override
Sets the heading of the model.
virtual makVrv::DtSceneObjectUpdater * findObjectAsDtSceneObjectUpdater() override
Finds the controlled object as DtSceneObjectUpdater.
DtFpsOrientationUpdaterAgentImplementation()
Default constructor.
virtual DtFpsOrientationUpdater * findObjectAsDtFpsOrientationUpdater() override
Implementation of the abstract method to find the controlled object.
Class definition for the DtFpsOrientationUpdater.
Definition DtFpsOrientationUpdaterClasses.hpp:74
DtFpsOrientationUpdaterClassDefinition(const std::string &className="DtFpsOrientationUpdater")
Constructor.
virtual ~DtFpsOrientationUpdaterClassDefinition() override
Virtual destructor.
FunctionIds
Unique function IDs used to store the state functions in a message.
Definition DtFpsOrientationUpdaterClasses.hpp:90
@ end_FunctionIds
Marks the end of the function IDs for this class.
Definition DtFpsOrientationUpdaterClasses.hpp:95
@ function_setModelHeading
ID for the setModelHeading function.
Definition DtFpsOrientationUpdaterClasses.hpp:92
static makVrv::DtAgentFactory::DtAutoUnregistrar theAutoUnregistrar
Static auto-unregistrar to handle cleanup when the module is unloaded.
Definition DtFpsOrientationUpdaterClasses.hpp:151
DtFpsOrientationUpdaterClassDefinition * myDefinition
Pointer to the class definition for DtFpsOrientationUpdater.
Definition DtFpsOrientationUpdaterClasses.hpp:145
virtual makVrv::DtAgentUpdateResolverInterface * createResolver(makVrv::DtDe &de, makVrv::DtUniqueID id) override
Creates an updater resolver for the DtFpsOrientationUpdater class.
virtual ~DtFpsOrientationUpdaterClassesCreator() override
Virtual destructor.
static makVrv::DtAgentCreator * create()
Static factory method to create a new creator instance.
static bool theRegisteredFlag
Static flag indicating if this creator is registered with the factory.
Definition DtFpsOrientationUpdaterClasses.hpp:148
DtFpsOrientationUpdaterClassesCreator()
Default constructor.
virtual makVrv::DtAgent * createAgent(makVrv::DtAgentManagerInterface &sceneInterface) override
Creates an agent object for the DtFpsOrientationUpdater class.
Updater for controlling orientation in first-person shooter mode.
Definition DtFpsOrientationUpdater.h:45
Defines export macros for the Human Frontend library.
#define HUMAN_DLL
Definition export.h:19
Include export definitions for this library.
Definition glsVreMessageUtil.h:49
makVrv::DtDe * de()
Gets the display element pointer used by the plugin.