VR-Engage  2.2
Loading...
Searching...
No Matches
DtSceneObjectMimicUpdaterClasses.hpp
Go to the documentation of this file.
1/******************************************************************************
2** Copyright (c) 2025 MAK Technologies
3** All rights reserved.
4******************************************************************************/
5
6//! \file DtSceneObjectMimicUpdaterClasses.hpp
7//! \brief Implementations of agent and factory classes for the DtSceneObjectMimicUpdater
8//! \ingroup vreCommonComponents
9
10#pragma once
11
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 the DtSceneObjectMimicUpdater
25//!
26//! This class provides the concrete implementation of the DtSceneObjectMimicUpdaterAgent interface.
27//! It handles communication with the actual DtSceneObjectMimicUpdater instance and implements
28//! the required virtual functions for setting parent scene objects and model offsets.
29class VRECOMMONCOMPONENTS_DLL DtSceneObjectMimicUpdaterAgentImplementation : public virtual DtSceneObjectMimicUpdaterAgent , public makVrv::DtSceneObjectUpdaterAgentImplementation
30{
31public:
32 //! \brief Constructor for the DtSceneObjectMimicUpdaterAgentImplementation
34
35 //! \brief Destructor for the DtSceneObjectMimicUpdaterAgentImplementation
37
38 //! \brief Sets the parent scene object that this mimic updater will follow
39 //! \param id Unique ID of the parent scene object to mimic
40 //!
41 //! Implementation of the abstract method from DtSceneObjectMimicUpdaterAgent
42 virtual void setParentSceneObject(makVrv::DtUniqueID id);
43
44
45 //! \brief Sets the position offset from the parent scene object
46 //! \param offset Vector specifying the local-space offset from the parent scene object
47 //!
48 //! Implementation of the abstract method from DtSceneObjectMimicUpdaterAgent
49 virtual void setModelOffset(const DtVector& offset);
50
51
52protected:
53 //! \brief Finds and casts the object to DtSceneObjectUpdater
54 //! \return Pointer to the controlled DtSceneObjectUpdater or nullptr if not found
55 //!
56 //! Implementation of the abstract method from DtSceneObjectUpdaterAgentImplementation
57 virtual makVrv::DtSceneObjectUpdater* findObjectAsDtSceneObjectUpdater();
58
59 //! \brief Finds and casts the object to DtSceneObjectMimicUpdater
60 //! \return Pointer to the controlled DtSceneObjectMimicUpdater or nullptr if not found
61 //!
62 //! Implementation of the abstract method from DtSceneObjectMimicUpdaterAgent
64
65};
66
67}
68
69// *** Generated Code - Do Not Edit! ***
70// *** Created by dcgen ***
71
72
73#include <vrvCore/DtSceneObjectUpdaterClasses.hpp>
75
76namespace makVre
77{
78
79//! \brief Definition class for the DtSceneObjectMimicUpdater
80//!
81//! This class defines the agent interfaces and functionality for the DtSceneObjectMimicUpdater.
82//! It registers function IDs for the various operations that can be performed on the updater,
83//! such as setting the parent scene object and model offset.
84class VRECOMMONCOMPONENTS_DLL DtSceneObjectMimicUpdaterClassDefinition : public makVrv::DtInheritedAgentDefinition<makVrv::DtSceneObjectUpdaterClassDefinition,DtSceneObjectMimicUpdater>
85{
86public:
87 //! \brief Constructor for DtSceneObjectMimicUpdaterClassDefinition
88 //! \param className The class name to register (defaults to "DtSceneObjectMimicUpdater")
89 //!
90 //! All function pointers are bound in the constructor to establish the interface
91 DtSceneObjectMimicUpdaterClassDefinition(const std::string& className = "DtSceneObjectMimicUpdater");
92
93 //! \brief Destructor for DtSceneObjectMimicUpdaterClassDefinition
95
96 //! \brief Unique Function IDs used to store the state functions in a message
97 //!
98 //! These IDs identify the specific functions that can be called on a DtSceneObjectMimicUpdater
99 //! when communicating over a network or between processes
101 {
102 //! \brief ID for the setParentSceneObject function
103 function_setParentSceneObject = makVrv::DtSceneObjectUpdaterClassDefinition::end_FunctionIds,
104
105 //! \brief ID for the setModelOffset function
107
108 //! \brief Marker for the end of the function ID enumeration
110 };
111
112};
113
114}
115
116// *** Generated Code - Do Not Edit! ***
117// *** Created by dcgen ***
118
119#include <vrvCore/DtAgentCreator.h>
120#include <vrvCore/DtAgentFactory.h>
121
122namespace makVre
123{
124
126
127//! \brief Creator class for the DtSceneObjectMimicUpdater
128//!
129//! This class is responsible for creating DtSceneObjectMimicUpdater instances and their
130//! corresponding agents. It registers with the agent factory system to allow creation
131//! of these objects through the standard factory mechanism.
133{
134public:
135
136 //! \brief Constructor for DtSceneObjectMimicUpdaterClassesCreator
137 //!
138 //! Initializes the creator and registers the class definition
140
141 //! \brief Destructor for DtSceneObjectMimicUpdaterClassesCreator
143
144 //! \brief Static factory method to create an instance of this creator
145 //! \return Pointer to a new DtAgentCreator instance
146 //!
147 //! Used by the agent factory system to create instances of this creator
148 static makVrv::DtAgentCreator* create();
149
150 //! \brief Creates an agent object for the DtSceneObjectMimicUpdater class
151 //! \param sceneInterface The agent manager interface to register with
152 //! \return Pointer to the newly created agent
153 //!
154 //! Implementation of the abstract method from DtAgentCreator
155 virtual makVrv::DtAgent* createAgent(makVrv::DtAgentManagerInterface& sceneInterface);
156
157 //! \brief Creates an updater object for the DtSceneObjectMimicUpdater class
158 //! \param de The distributed environment in which to create the updater
159 //! \param id The unique ID to assign to the new updater
160 //! \return Pointer to the newly created updater resolver interface
161 //!
162 //! Implementation of the abstract method from DtAgentCreator
163 virtual makVrv::DtAgentUpdateResolverInterface* createResolver(makVrv::DtDe& de, makVrv::DtUniqueID id);
164
165protected:
166 //! \brief Pointer to the class definition used by this creator
168
169 //! \brief Flag indicating if this class has been registered with the factory
170 static bool theRegisteredFlag;
171
172 //! \brief Auto-unregistrar to clean up factory registration when the application exits
173 static makVrv::DtAgentFactory::DtAutoUnregistrar theAutoUnregistrar;
174};
175
176}
177
Defines the DtSceneObjectMimicUpdater class that allows one scene object to mimic another's position.
Agent interface for the DtSceneObjectMimicUpdater that enables one scene object to mimic another.
DtSceneObjectMimicUpdaterAgent()
Constructor for the DtSceneObjectMimicUpdaterAgent.
virtual void setParentSceneObject(makVrv::DtUniqueID id)
Sets the parent scene object that this mimic updater will follow.
virtual DtSceneObjectMimicUpdater * findObjectAsDtSceneObjectMimicUpdater()
Finds and casts the object to DtSceneObjectMimicUpdater.
virtual void setModelOffset(const DtVector &offset)
Sets the position offset from the parent scene object.
virtual ~DtSceneObjectMimicUpdaterAgentImplementation()
Destructor for the DtSceneObjectMimicUpdaterAgentImplementation.
DtSceneObjectMimicUpdaterAgentImplementation()
Constructor for the DtSceneObjectMimicUpdaterAgentImplementation.
virtual makVrv::DtSceneObjectUpdater * findObjectAsDtSceneObjectUpdater()
Finds and casts the object to DtSceneObjectUpdater.
Definition class for the DtSceneObjectMimicUpdater.
Definition DtSceneObjectMimicUpdaterClasses.hpp:85
virtual ~DtSceneObjectMimicUpdaterClassDefinition()
Destructor for DtSceneObjectMimicUpdaterClassDefinition.
FunctionIds
Unique Function IDs used to store the state functions in a message.
Definition DtSceneObjectMimicUpdaterClasses.hpp:101
@ function_setModelOffset
ID for the setModelOffset function.
Definition DtSceneObjectMimicUpdaterClasses.hpp:106
@ function_setParentSceneObject
ID for the setParentSceneObject function.
Definition DtSceneObjectMimicUpdaterClasses.hpp:103
@ end_FunctionIds
Marker for the end of the function ID enumeration.
Definition DtSceneObjectMimicUpdaterClasses.hpp:109
DtSceneObjectMimicUpdaterClassDefinition(const std::string &className="DtSceneObjectMimicUpdater")
Constructor for DtSceneObjectMimicUpdaterClassDefinition.
DtSceneObjectMimicUpdaterClassDefinition * myDefinition
Pointer to the class definition used by this creator.
Definition DtSceneObjectMimicUpdaterClasses.hpp:167
virtual makVrv::DtAgent * createAgent(makVrv::DtAgentManagerInterface &sceneInterface)
Creates an agent object for the DtSceneObjectMimicUpdater class.
virtual ~DtSceneObjectMimicUpdaterClassesCreator()
Destructor for DtSceneObjectMimicUpdaterClassesCreator.
static makVrv::DtAgentCreator * create()
Static factory method to create an instance of this creator.
virtual makVrv::DtAgentUpdateResolverInterface * createResolver(makVrv::DtDe &de, makVrv::DtUniqueID id)
Creates an updater object for the DtSceneObjectMimicUpdater class.
static bool theRegisteredFlag
Flag indicating if this class has been registered with the factory.
Definition DtSceneObjectMimicUpdaterClasses.hpp:170
DtSceneObjectMimicUpdaterClassesCreator()
Constructor for DtSceneObjectMimicUpdaterClassesCreator.
static makVrv::DtAgentFactory::DtAutoUnregistrar theAutoUnregistrar
Auto-unregistrar to clean up factory registration when the application exits.
Definition DtSceneObjectMimicUpdaterClasses.hpp:173
Scene object updater that mimics the position and orientation of another scene object.
Definition DtSceneObjectMimicUpdater.h:52
Defines export/import macros for the vreCommonComponents library.
#define VRECOMMONCOMPONENTS_DLL
DLL export/import macro for the vreCommonComponents library.
Definition export.h:28
Include export definitions for this library.
Definition glsVreMessageUtil.h:49
makVrv::DtDe * de()
Gets the display element pointer used by the plugin.