VR-Engage  2.2
Loading...
Searching...
No Matches
makVre::DtVreLadderClimbingPSR Class Reference

Detailed Description

This class provides storage and management for ladder climbing state data, including the climbing state, ladder access points, and related timing information. It is used by entities that need to climb ladders in the simulation, particularly human entities, to maintain their state throughout the ladder climbing process.

#include <vreLadderClimbingPSR.h>

Inheritance diagram for makVre::DtVreLadderClimbingPSR:
[legend]

Public Member Functions

 DtVreLadderClimbingPSR (DtLocalObject *vrfObject, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
 
 DtVreLadderClimbingPSR (const DtVreLadderClimbingPSR &orig, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
 
virtual ~DtVreLadderClimbingPSR () override
 
DtVreLadderClimbingPSRoperator= (const DtVreLadderClimbingPSR &orig)
 
virtual DtVrfProcessStateRepository * clone (const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const override
 
virtual DtString type () const override
 
virtual void setLadderClimbingState (DtLadderClimbingState state)
 
virtual DtLadderClimbingState ladderClimbingState () const
 
virtual void setLadder (const DtLadder &ladder)
 
virtual DtLadder ladder () const
 
virtual void setLadderEntryPoint (const DtVector &ladderAccessPoint)
 
virtual DtVector ladderEntryPoint () const
 
virtual void setLadderExitPoint (const DtVector &ladderAccessPoint)
 
virtual DtVector ladderExitPoint () const
 
virtual void setTimeToGetOnLadder (double simTime)
 
virtual double timeToGetOnLadder () const
 
virtual void setTimeToGetOffLadder (double simTime)
 
virtual double timeToGetOffLadder () const
 
virtual void setLadderStandoffOffset (const DtVector &offset)
 
virtual DtVector ladderStandoffOffset () const
 
virtual void setOrientationOnGround (const DtTaitBryan &orientation)
 
virtual DtTaitBryan orientationOnGround () const
 
virtual void setTerrainHeightGeodetic (double altitude)
 
virtual double terrainHeightGeodetic () const
 
virtual void setLadderBaseForSearch (const DtVector &ladderBase)
 
virtual DtVector ladderBaseForSearch () const
 

Static Public Member Functions

static DtVrfProcessStateRepository * creator (const DtString &rwName, DtLocalObject *vrfObject, DtReaderWriterRegistry *parentRegistry)
 

Protected Attributes

DtRwInt myLadderClimbingState
 
DtLadder myLadder
 
DtRwVector myLadderEntryPoint
 
DtRwVector myLadderExitPoint
 
DtRwReal myTimeToGetOnLadder
 
DtRwReal myTimeToGetOffLadder
 
DtRwVector myLadderStandoffOffset
 
DtTaitBryan myOrientationOnGround
 
DtRwReal myTerrainHeightGeodetic
 
DtRwVector myLadderBaseForSearch
 

Constructor & Destructor Documentation

◆ DtVreLadderClimbingPSR() [1/2]

makVre::DtVreLadderClimbingPSR::DtVreLadderClimbingPSR ( DtLocalObject * vrfObject,
const DtString & rwName = DtString::nullString(),
DtReaderWriterRegistry * parentRegistry = 0 )

Constructor with VRF object and optional name.

Parameters
vrfObjectPointer to the local object this PSR is associated with
rwNameOptional reader/writer name
parentRegistryOptional parent registry for reader/writer functionality

Creates a new ladder climbing PSR for the specified VRF object.

Referenced by DtVreLadderClimbingPSR(), and operator=().

◆ DtVreLadderClimbingPSR() [2/2]

makVre::DtVreLadderClimbingPSR::DtVreLadderClimbingPSR ( const DtVreLadderClimbingPSR & orig,
const DtString & rwName = DtString::nullString(),
DtReaderWriterRegistry * parentRegistry = 0 )

Copy constructor.

Parameters
origThe source PSR to copy from
rwNameOptional reader/writer name
parentRegistryOptional parent registry for reader/writer functionality

Creates a new ladder climbing PSR as a copy of the provided original.

References DtVreLadderClimbingPSR().

◆ ~DtVreLadderClimbingPSR()

virtual makVre::DtVreLadderClimbingPSR::~DtVreLadderClimbingPSR ( )
overridevirtual

Virtual destructor.

Cleans up resources used by the PSR.

Member Function Documentation

◆ operator=()

DtVreLadderClimbingPSR & makVre::DtVreLadderClimbingPSR::operator= ( const DtVreLadderClimbingPSR & orig)

Assignment operator (not implemented)

Parameters
origThe source PSR to copy from
Returns
Reference to this PSR after assignment

Assignment operator is declared but not implemented to prevent assignment.

References DtVreLadderClimbingPSR().

◆ clone()

virtual DtVrfProcessStateRepository * makVre::DtVreLadderClimbingPSR::clone ( const DtString & rwName = DtString::nullString(),
DtReaderWriterRegistry * parentRegistry = 0 ) const
overridevirtual

Creates a clone of this PSR.

Parameters
rwNameOptional reader/writer name for the clone
parentRegistryOptional parent registry for reader/writer functionality
Returns
Pointer to a new PSR that is a clone of this one

Creates a new ladder climbing PSR as a deep copy of this one.

◆ type()

virtual DtString makVre::DtVreLadderClimbingPSR::type ( ) const
overridevirtual

Gets the type identifier for this PSR.

Returns
String identifying this PSR type

Returns a unique type identifier string for this PSR type. Will return DtVreLadderClimbingPSRType.

◆ setLadderClimbingState()

virtual void makVre::DtVreLadderClimbingPSR::setLadderClimbingState ( DtLadderClimbingState state)
virtual

Sets the ladder climbing state.

Parameters
stateThe new ladder climbing state to set

Sets the current ladder climbing state of the entity. This affects how the entity behaves in relation to ladders.

◆ ladderClimbingState()

virtual DtLadderClimbingState makVre::DtVreLadderClimbingPSR::ladderClimbingState ( ) const
virtual

Gets the ladder climbing state.

Returns
The current ladder climbing state

Returns the current ladder climbing state of the entity.

◆ setLadder()

virtual void makVre::DtVreLadderClimbingPSR::setLadder ( const DtLadder & ladder)
virtual

Sets the current ladder.

Parameters
ladderThe ladder object this entity is interacting with

Sets the ladder that the entity is currently interacting with. This includes all the ladder's properties such as base, top, and orientation.

References ladder().

◆ ladder()

virtual DtLadder makVre::DtVreLadderClimbingPSR::ladder ( ) const
virtual

Gets the current ladder.

Returns
The ladder object this entity is interacting with

Returns the ladder that the entity is currently interacting with.

Referenced by setLadder().

◆ setLadderEntryPoint()

virtual void makVre::DtVreLadderClimbingPSR::setLadderEntryPoint ( const DtVector & ladderAccessPoint)
virtual

Sets the ladder entry point.

Parameters
ladderAccessPointThe position where the entity mounts the ladder

Sets the position where the entity mounts (gets on) the ladder. This is typically near the base of the ladder.

◆ ladderEntryPoint()

virtual DtVector makVre::DtVreLadderClimbingPSR::ladderEntryPoint ( ) const
virtual

Gets the ladder entry point.

Returns
The position where the entity mounts the ladder

Returns the position where the entity mounts (gets on) the ladder.

◆ setLadderExitPoint()

virtual void makVre::DtVreLadderClimbingPSR::setLadderExitPoint ( const DtVector & ladderAccessPoint)
virtual

Sets the ladder exit point.

Parameters
ladderAccessPointThe position where the entity dismounts the ladder

Sets the position where the entity dismounts (gets off) the ladder. This is typically near the top of the ladder for upward climbing.

◆ ladderExitPoint()

virtual DtVector makVre::DtVreLadderClimbingPSR::ladderExitPoint ( ) const
virtual

Gets the ladder exit point.

Returns
The position where the entity dismounts the ladder

Returns the position where the entity dismounts (gets off) the ladder.

◆ setTimeToGetOnLadder()

virtual void makVre::DtVreLadderClimbingPSR::setTimeToGetOnLadder ( double simTime)
virtual

Sets the simulation time when the entity will finish mounting the ladder.

Parameters
simTimeThe simulation time in seconds

Sets the simulation time at which the entity will complete the process of mounting (getting on) the ladder. Used for timing the transition animation.

◆ timeToGetOnLadder()

virtual double makVre::DtVreLadderClimbingPSR::timeToGetOnLadder ( ) const
virtual

Gets the simulation time when the entity will finish mounting the ladder.

Returns
The simulation time in seconds

Returns the simulation time at which the entity will complete the process of mounting (getting on) the ladder.

◆ setTimeToGetOffLadder()

virtual void makVre::DtVreLadderClimbingPSR::setTimeToGetOffLadder ( double simTime)
virtual

Sets the simulation time when the entity will finish dismounting the ladder.

Parameters
simTimeThe simulation time in seconds

Sets the simulation time at which the entity will complete the process of dismounting (getting off) the ladder. Used for timing the transition animation.

◆ timeToGetOffLadder()

virtual double makVre::DtVreLadderClimbingPSR::timeToGetOffLadder ( ) const
virtual

Gets the simulation time when the entity will finish dismounting the ladder.

Returns
The simulation time in seconds

Returns the simulation time at which the entity will complete the process of dismounting (getting off) the ladder.

◆ setLadderStandoffOffset()

virtual void makVre::DtVreLadderClimbingPSR::setLadderStandoffOffset ( const DtVector & offset)
virtual

Sets the ladder standoff offset.

Parameters
offsetThe offset vector in local coordinates

Sets the offset vector used to position the entity relative to the ladder so that it doesn't appear embedded in the ladder geometry.

◆ ladderStandoffOffset()

virtual DtVector makVre::DtVreLadderClimbingPSR::ladderStandoffOffset ( ) const
virtual

Gets the ladder standoff offset.

Returns
The offset vector in local coordinates

Returns the offset vector used to position the entity relative to the ladder.

◆ setOrientationOnGround()

virtual void makVre::DtVreLadderClimbingPSR::setOrientationOnGround ( const DtTaitBryan & orientation)
virtual

Sets the entity's orientation when on the ground.

Parameters
orientationThe orientation in Tait-Bryan angles

Sets the orientation of the entity when it's on the ground before mounting the ladder. This is saved to restore the entity's orientation after dismounting.

◆ orientationOnGround()

virtual DtTaitBryan makVre::DtVreLadderClimbingPSR::orientationOnGround ( ) const
virtual

Gets the entity's orientation when on the ground.

Returns
The orientation in Tait-Bryan angles

Returns the saved orientation of the entity when it was on the ground before mounting the ladder.

◆ setTerrainHeightGeodetic()

virtual void makVre::DtVreLadderClimbingPSR::setTerrainHeightGeodetic ( double altitude)
virtual

Sets the terrain height in geodetic coordinates.

Parameters
altitudeThe terrain height in geodetic coordinates

Sets the height of the terrain in geodetic coordinates at the ladder location. This is used for positioning calculations when mounting and dismounting the ladder.

◆ terrainHeightGeodetic()

virtual double makVre::DtVreLadderClimbingPSR::terrainHeightGeodetic ( ) const
virtual

Gets the terrain height in geodetic coordinates.

Returns
The terrain height in geodetic coordinates

Returns the height of the terrain in geodetic coordinates at the ladder location.

◆ setLadderBaseForSearch()

virtual void makVre::DtVreLadderClimbingPSR::setLadderBaseForSearch ( const DtVector & ladderBase)
virtual

Sets the ladder base position for search operations.

Parameters
ladderBaseThe position of the ladder base in local coordinates

Sets the position of the ladder base used in findNearestLadder() searches. This helps optimize ladder searches by providing a starting point.

◆ ladderBaseForSearch()

virtual DtVector makVre::DtVreLadderClimbingPSR::ladderBaseForSearch ( ) const
virtual

Gets the ladder base position for search operations.

Returns
The position of the ladder base in local coordinates

Returns the position of the ladder base used in findNearestLadder() searches.

◆ creator()

static DtVrfProcessStateRepository * makVre::DtVreLadderClimbingPSR::creator ( const DtString & rwName,
DtLocalObject * vrfObject,
DtReaderWriterRegistry * parentRegistry )
static

Factory function to create a new instance of this PSR.

Parameters
rwNameThe reader/writer name for the new instance
vrfObjectPointer to the local object this PSR will be associated with
parentRegistryParent registry for reader/writer functionality
Returns
Pointer to a newly created PSR instance

Static factory function used by the PSR creation system to instantiate new instances of this PSR type.

Member Data Documentation

◆ myLadderClimbingState

DtRwInt makVre::DtVreLadderClimbingPSR::myLadderClimbingState
protected

Current ladder climbing state.

Stores the current state of the entity in relation to ladder climbing. See DtLadderClimbingState enumeration for possible values.

◆ myLadder

DtLadder makVre::DtVreLadderClimbingPSR::myLadder
protected

Current ladder being used.

Stores the ladder that the entity is currently interacting with. This is valid when in the DtOnLadderAtAccessPoint or DtOnLadder states.

◆ myLadderEntryPoint

DtRwVector makVre::DtVreLadderClimbingPSR::myLadderEntryPoint
protected

Ladder entry point.

Stores the position where the entity mounts (gets on) the ladder. This is typically near the base of the ladder.

◆ myLadderExitPoint

DtRwVector makVre::DtVreLadderClimbingPSR::myLadderExitPoint
protected

Ladder exit point.

Stores the position where the entity dismounts (gets off) the ladder. This is typically near the top of the ladder for upward climbing.

◆ myTimeToGetOnLadder

DtRwReal makVre::DtVreLadderClimbingPSR::myTimeToGetOnLadder
protected

Time to finish mounting the ladder.

Stores the simulation time at which the entity will complete the process of mounting (getting on) the ladder. Used for timing the transition animation.

◆ myTimeToGetOffLadder

DtRwReal makVre::DtVreLadderClimbingPSR::myTimeToGetOffLadder
protected

Time to finish dismounting the ladder.

Stores the simulation time at which the entity will complete the process of dismounting (getting off) the ladder. Used for timing the transition animation.

◆ myLadderStandoffOffset

DtRwVector makVre::DtVreLadderClimbingPSR::myLadderStandoffOffset
protected

Ladder standoff offset.

Stores the offset vector in local coordinates, used to position the entity such that it doesn't appear embedded in the ladder geometry.

◆ myOrientationOnGround

DtTaitBryan makVre::DtVreLadderClimbingPSR::myOrientationOnGround
protected

Entity orientation when on the ground.

Stores the orientation of the entity when it's on the ground before mounting the ladder. This is used to restore the entity's orientation after dismounting.

◆ myTerrainHeightGeodetic

DtRwReal makVre::DtVreLadderClimbingPSR::myTerrainHeightGeodetic
protected

Terrain height in geodetic coordinates.

Stores the height of the terrain in geodetic coordinates at the ladder location. This is used for positioning calculations when mounting and dismounting the ladder.

◆ myLadderBaseForSearch

DtRwVector makVre::DtVreLadderClimbingPSR::myLadderBaseForSearch
protected

Ladder base for search operations.

Stores the position of the ladder base used in findNearestLadder() searches. This helps optimize ladder searches by providing a starting point.


The documentation for this class was generated from the following file: