19#include <vrfobjcore/actuatorComponent.h>
21class DtAnalogInputPort;
22class DtInputPortGroup;
23class DtUpdateRepositoryOutputPortGroup;
52 DtComponentDescriptor* desc = 0, DtReaderWriterRegistry* parentRegistry = 0);
65 virtual const char*
type()
const override;
73 virtual bool init()
override;
82 virtual void tick()
override;
111 static DtSimComponent*
creator(
const DtString& name, DtLocalObject* owner, DtSimulationServices* simManager,
112 DtComponentDescriptor* desc = 0, DtReaderWriterRegistry* parentRegistry = 0);
Helper class that represents a climbable ladder in simulations.
Definition ladder.h:35
const char * defaultPSRType() const
Gets the default process state repository type.
virtual bool init() override
Initializes the ladder climbing actuator.
virtual ~DtVreLadderClimbingActuator() override
Virtual destructor.
DtUpdateRepositoryOutputPortGroup * myUpdateRepositoryOutputPortGroup
Output port group for updating entity state.
Definition vreLadderClimbingActuator.h:184
virtual bool createPorts() override
Creates input and output ports for the actuator.
DtVreLadderClimbingPSR * myProcessState
Process state repository for ladder climbing state.
Definition vreLadderClimbingActuator.h:167
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 calculateAndUpdateNewState()
Calculates and updates entity state during ladder climbing.
virtual void clampToLadderExtent(const DtLadder &ladder, DtVector &bodyLadderBaseToEntity)
Constrains entity position to the ladder extent.
DtAnalogInputPort * myLadderClimbingMovementDirectionInputPort
Input port for ladder climbing movement direction.
Definition vreLadderClimbingActuator.h:177
virtual double ladderClimbingSpeed()
Gets the ladder climbing speed for this entity.
virtual const char * type() const override
Gets the type identifier for this component.
DtVreLadderClimbingActuator(const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0)
Constructor.
virtual bool createPortGroups() override
Creates input and output port groups for the actuator.
virtual DtVreLadderClimbingPSR * createPSR()
Creates the process state repository for the actuator.
virtual void tick() override
Updates the actuator state each simulation frame.
Process state repository for ladder climbing components.
Definition vreLadderClimbingPSR.h:61
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 DtVreLadderClimbingActuatorType[]
Type identifier for the VRE ladder climbing actuator component.
Definition vreLadderClimbingActuator.h:31
Base template class for VR-Engage simulation components.