17#include "vreVrfModel/vreSimComponent.h"
21#include <vrfmodel/joystickControllerInterface.h>
23#include <vrfobjcore/controllerComponent.h>
26class DtSimulationServices;
27class DtGroundVehicleStateRepository;
28class DtBooleanOutputPort;
29class DtAnalogOutputPort;
47 public DtJoystickControllerInterface
61 DtComponentDescriptor* desc, DtReaderWriterRegistry* parentRegistry = 0);
74 virtual const char*
type()
const override;
82 virtual bool init()
override;
110 static DtSimComponent*
creator(
const DtString& name, DtLocalObject* owner, DtSimulationServices* simManager,
111 DtComponentDescriptor* desc = 0, DtReaderWriterRegistry* parentRegistry = 0);
152 const DtString& functionGroup,
const DtString& function,
double value,
bool repeat)
override;
bool myCommanderOverrideActive
Flag indicating whether commander override mode is active.
Definition vreJoystickController.h:196
DtVreJoystickController(const DtVreJoystickController &orig)
Copy constructor (not implemented)
virtual const char * type() const override
Gets the type identifier for this component.
std::string myOutputPortGroupName
Name of the output port group.
Definition vreJoystickController.h:176
static DtSimComponent * creator(const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0)
Factory method to create a new instance of this component.
virtual void joystickDisconnected() override
Handles joystick disconnection events.
DtVreJoystickController()
Default constructor (not implemented)
virtual bool createPortGroups() override
Creates output port groups for joystick inputs.
virtual void joystickConnected() override
Handles joystick connection events.
DtOutputPortGroup * myOutputGroup
Pointer to the output port group.
Definition vreJoystickController.h:181
DtVreJoystickController & operator=(const DtVreJoystickController &orig)
Assignment operator (not implemented)
virtual DtVreMessageResult handleCommanderOverride(DtVreMessage *msg)
Handles commander override messages.
virtual void tick() override
Updates the controller state each simulation frame.
std::map< std::string, DtOutputPort * > OutputPortMap
Type definition for mapping port names to port objects.
Definition vreJoystickController.h:184
DtVreJoystickController(const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc, DtReaderWriterRegistry *parentRegistry=0)
Constructor.
virtual bool createPorts() override
Creates output ports for joystick inputs.
virtual void calcAndSetPortValues(const DtString &functionGroup, const DtString &function, double value, bool repeat) override
Calculates and sets port values based on function input.
virtual bool init() override
Initializes the joystick controller.
virtual ~DtVreJoystickController() override
Virtual destructor.
OutputPortMap myOutputPorts
Map of output ports indexed by name.
Definition vreJoystickController.h:190
Abstract base class for all VREngage messages.
Definition vreMessage.h:50
DtVreSimComponent(const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0)
Definition vreSimComponent.h:54
Defines export macros for the vreVrfmodel library.
#define VREVRFMODEL_DLL
Definition export.h:22
Include export definitions for this library.
Definition glsVreMessageUtil.h:49
const char DtVreJoystickControllerType[]
Type identifier for the VRE joystick controller component.
Definition vreJoystickController.h:35
DtVreMessageResult
Enumeration of possible message handling results.
Definition vreMessage.h:33
Defines the base class for all VREngage messages.