27 #include <boost/signals2.hpp>
28 #include <boost/shared_ptr.hpp>
29 #include <boost/unordered_set.hpp>
30 #include <boost/unordered_map.hpp>
35 class DtJoystickManager;
47 functionGroup(orig.functionGroup), function(orig.function), configuration(orig.configuration)
52 std::string functionGroup;
70 virtual void tick(
bool sentEvents);
73 virtual void gameControllerDeviceRemoved(
int);
76 virtual void gameControllerDeviceAdded(
int);
81 virtual bool enableJoystickFunctions(
const std::string& configuration,
const std::set<std::string>& functionalGroups,
82 std::set<std::string>& enabled);
85 virtual bool inControlOfConfiguration(
const std::string& configuration)
const;
89 virtual bool disableJoystickFunctions(
const std::set<std::string>& functionalGroups,
90 std::set<std::string>& disabled);
93 virtual std::set<std::string> controlledFunctionGroups()
const;
96 virtual bool canFunctionGroupBeAssigned(
const std::string& functionGroup)
const;
105 virtual bool anyFunctionGroupsActive()
const;
108 virtual void releaseAllControllerInformation();
115 virtual bool isFunctionGroupActive(
const std::string& configuration,
const std::string&)
const;
118 virtual void activateFunctionGroup(
const std::string& configuration,
const std::string&);
121 virtual void deactivateFunctionGroup(
const std::string& configuration,
const std::string&);
123 virtual void switchControlOfFunction(
const std::string& configuration,
const std::string& functionGroup);
126 virtual void noQueuedEvents();
130 virtual void gameControlInformationAdded(
const std::string& configuration,
136 virtual bool joystickFunctionFired(
const std::string& functionGroup,
const std::string&
function,
137 double value,
bool repeat,
bool valueChanged) = 0;
156 typedef boost::unordered_map<std::string, ControlStruct>
InControlOf;
166 typedef boost::unordered_map<DtGameControlProcessor*, std::pair<ControlStatus, DtGenericControllerEvent*> >
RepeatQueue;
std::vector< ControlStatus > ControlStatusVector
Devices that are controlled and their current status.
Definition: joystickFunctionEnableHandler.h:141
boost::unordered_map< DtGameControlProcessor *, std::pair< ControlStatus, DtGenericControllerEvent * > > RepeatQueue
Queue of funcutons that wish to get a repeat of an event if that event is not triggered (such as a bu...
Definition: joystickFunctionEnableHandler.h:166
Control processors that are keeping track of current values by function group and function...
Definition: joystickFunctionEnableHandler.h:43
boost::unordered_map< std::string, ControlStruct > InControlOf
Configurations that are controlled and their current switch status.
Definition: joystickFunctionEnableHandler.h:156
LastJoystickAxisValue myLastJoystickAxisValue
Definition: joystickFunctionEnableHandler.h:163
std::map< std::string, ControlStatusVector > ControlStatusMap
By function group.
Definition: joystickFunctionEnableHandler.h:144
InControlOf myInControlOf
Definition: joystickFunctionEnableHandler.h:157
Handler that you insert into the manager to be made aware of game controller events.
Definition: joystickManager.h:42
This class will be used to query about current joysticks and the capabilities they might have...
Definition: joystickManager.h:96
ControlStatus()
Definition: joystickFunctionEnableHandler.h:45
Contains makVrv::DtStateView class.
std::set< std::string > functionGroups
Definition: joystickFunctionEnableHandler.h:150
Definition: joystickFunctionEnableHandler.h:148
Definition: gameControllerEvents.h:33
DtSignalConnectionManager myConnections
Definition: joystickFunctionEnableHandler.h:160
#define DT_DLL_JOYSTICKCORE
Contains DLL export macros.
Definition: joystickCore.h:25
Handler that will manage the objects that are taken control of for joystick controls and process the ...
Definition: joystickFunctionEnableHandler.h:39
Contains makVrv::DtVirtualBaseClass class.
DtDe & myDe
Definition: joystickFunctionEnableHandler.h:169
boost::shared_ptr< DtGameControlProcessor > controlProcessor
Definition: joystickFunctionEnableHandler.h:55
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Contains makVrv::DtEntityState class.
std::map< std::string, std::set< std::string > > switchGroups
Definition: joystickFunctionEnableHandler.h:151
std::string configuration
Definition: joystickFunctionEnableHandler.h:54
Base class to provide boost signal/slot management.
RepeatQueue myRepeatQueue
Definition: joystickFunctionEnableHandler.h:167
std::map< int, std::map< int, int > > LastJoystickAxisValue
Definition: joystickFunctionEnableHandler.h:162
virtual ~ControlStatus()
Definition: joystickFunctionEnableHandler.h:50
std::map< std::string, int > switchGroupsIndex
Definition: joystickFunctionEnableHandler.h:152
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
std::map< int, ControlStatusMap > ControlledDevices
Definition: joystickFunctionEnableHandler.h:145
DtJoystickManager & myJoystickManager
Definition: joystickFunctionEnableHandler.h:159
ControlStatus(const ControlStatus &orig)
Definition: joystickFunctionEnableHandler.h:46
ControlledDevices myControlledDevices
Definition: joystickFunctionEnableHandler.h:146