24 #include <vlpi/entityType.h>
29 #include <boost/signals2.hpp>
30 #include <boost/function.hpp>
31 #include <boost/unordered_set.hpp>
32 #include <boost/unordered_map.hpp>
37 class DtRecordSettingsBackupInterface;
48 class DtGuiThreadVrfRemoteController;
49 class DtVrfGuiJoystickControlHandler;
74 virtual void requestJoystickControlInformation(
const DtUUID&);
79 virtual JoystickControls joystickControlInformation(
const DtEntityType&)
const;
81 virtual bool hasJoystickControlInformation(
const DtUUID&)
const;
82 virtual bool hasJoystickControlInformation(
const DtEntityType&)
const;
89 virtual void takeControlOf(
makVrv::DtUniqueID,
const std::string& configuration,
const std::set<std::string>& functionalGroups);
90 virtual void takeControlOf(
const DtUUID&,
const std::string& configuration,
const std::set<std::string>& functionalGroups);
94 virtual bool inControlOf(
const DtUUID&)
const;
97 virtual bool inControlOf(
const DtUUID&,
const std::string&)
const;
100 virtual bool canAnyFunctionGroupBeAssigned(
makVrv::DtUniqueID,
const std::string& configuration)
const;
101 virtual bool canAnyFunctionGroupBeAssigned(
const DtUUID&,
const std::string& configuration)
const;
105 virtual void releaseControlOf(
makVrv::DtUniqueID,
const std::set<std::string>& functionalGroups = std::set<std::string>(),
106 bool objectRemoved =
false);
107 virtual void releaseControlOf(
const DtUUID&,
const std::set<std::string>& functionalGroups = std::set<std::string>(),
108 bool objectRemoved =
false);
111 virtual void releaseControlOfAll();
117 virtual std::set<std::string> uncontrolledFunctionGroups(
const DtUUID&)
const;
121 virtual std::set<std::string> functionGroupsDefinedFor(
const DtUUID&)
const;
124 virtual bool canFunctionGroupBeAssigned(
const DtUUID& uuid,
125 const std::string& configuration,
const std::string& functionGroup)
const;
128 boost::signals2::signal<void (const DtUUID&, const std::string& configuration, const std::set<std::string>&)> signal_hasTakenControl;
131 boost::signals2::signal<void (const DtUUID&, const std::set<std::string>&)> signal_hasReleasedControl;
137 virtual void initialize();
143 virtual void processJoystickControlsResponse(
DtSimMessage*);
147 virtual void cleanupHandlers();
159 typedef boost::unordered_map<DtUUID, DtVrfGuiJoystickControlHandler*>
InControlOf;
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
Virtual base class.
Definition: DtVirtualBaseClass.h:22
JoystickControlsMap myJoystickControlsMap
Definition: vrfGuiJoystickControlManager.h:153
std::map< DtString, std::map< DtString, DtRwJoystickControl > > JoystickControls
Definition: vrfGuiJoystickControlManager.h:57
boost::unordered_set< DtUUID > myAwaitingResponses
Definition: vrfGuiJoystickControlManager.h:155
boost::unordered_map< DtUUID, DtVrfGuiJoystickControlHandler * > InControlOf
Definition: vrfGuiJoystickControlManager.h:159
std::map< DtString, JoystickControls > JoystickControlsMap
Definition: vrfGuiJoystickControlManager.h:58
Contains makVrv::DtStateView class.
This class is a thread-safe API to the DtVrfRemoteController.
Definition: guiThreadVrfRemoteController.h:93
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
This class will be used to query about current joysticks and the capabilities they might have...
Definition: vrfGuiJoystickControlManager.h:53
boost::signals2::signal< void(const DtEntityType &, const JoystickControls &)> signal_joystickControlsAdded
Signal sent when a new entity type has been added with joystick information.
Definition: vrfGuiJoystickControlManager.h:134
InControlOf myInControlOf
Definition: vrfGuiJoystickControlManager.h:160
makVrv::DtSignalConnectionManager myConnections
Definition: vrfGuiJoystickControlManager.h:152
makVrv::DtDe & myDe
Definition: vrfGuiJoystickControlManager.h:150
Contains makVrv::DtVirtualBaseClass class.
DtGuiThreadVrfRemoteController & myRemoteController
Definition: vrfGuiJoystickControlManager.h:157
File: simMsg.h.
Definition: simMessage.h:35
const JoystickControlsMap & joystickControlsMap() const
Definition: vrfGuiJoystickControlManager.h:113
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
Contains makVrv::DtEntityState class.
std::vector< DtVrfGuiJoystickControlHandler * > myCleanupQueue
Definition: vrfGuiJoystickControlManager.h:162
unsigned long long DtUniqueID
Definition: DtUniqueID.h:22
Base class to provide boost signal/slot management.
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69