![]() |
VR-Forces 4.0.4 Class Documentation
|
The DtRotaryWingTaskController class creates the rotary-wing-control port group needed to control rotary-wing actuators. More...

Public Member Functions | |
| DtRotaryWingTaskController (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) | |
| (const DtString&,DtVrfObject*,DtSimManager*, | |
| virtual | ~DtRotaryWingTaskController () |
| destructor | |
| virtual bool | init () |
| Overridden to initialize myRotaryWingEntityState. | |
| virtual DtString | type () const =0 |
| Returns a string identifies the class type of component. | |
| virtual void | clearTask () |
| Overridden to deactivate the port group when this controller completes a task. | |
| virtual void | setDesiredPosition (const DtVector &pos) |
| Sets the specified value into the corresponding output port after doing a check to make sure the port was created. | |
| virtual void | setDesiredVelocity (const DtVector &vel) |
| Sets the specified value into the corresponding output port after doing a check to make sure the port was created. | |
| virtual void | setDesiredAcceleration (const DtVector &accel) |
| Sets the specified value into the corresponding output port after doing a check to make sure the port was created. | |
| virtual void | setDesiredHeading (double heading) |
| Sets the specified value into the corresponding output port after doing a check to make sure the port was created. | |
| virtual void | setPositionSelector (double sel) |
| Sets the specified value into the corresponding output port after doing a check to make sure the port was created. | |
| virtual void | setVelocitySelector (double sel) |
| Sets the specified value into the corresponding output port after doing a check to make sure the port was created. | |
| virtual void | setAccelerationSelector (double sel) |
| Sets the specified value into the corresponding output port after doing a check to make sure the port was created. | |
| virtual void | setHeadingSelector (double sel) |
| Sets the specified value into the corresponding output port after doing a check to make sure the port was created. | |
| virtual void | setAggressiveness (double agg) |
| Sets the specified value into the corresponding output port after doing a check to make sure the port was created. | |
| virtual void | setPowerDown (bool powerDown) |
| Sets the specified value into the corresponding output port after doing a check to make sure the port was created. | |
| virtual DtVectorOutputPort * | desiredPositionPort () |
| virtual DtVectorOutputPort * | desiredVelocityPort () |
| virtual DtVectorOutputPort * | desiredAccelerationPort () |
| virtual DtAnalogOutputPort * | desiredHeadingPort () |
| virtual DtAnalogOutputPort * | positionSelectorPort () |
| virtual DtAnalogOutputPort * | velocitySelectorPort () |
| virtual DtAnalogOutputPort * | accelerationSelectorPort () |
| virtual DtAnalogOutputPort * | headingSelectorPort () |
| virtual DtAnalogOutputPort * | aggressivenessPort () |
| virtual DtBooleanOutputPort * | powerDownPort () |
Protected Member Functions | |
| virtual bool | createPortGroups () |
| Overridden to call createGuidancePortGroup() | |
| virtual bool | createPorts () |
| Overridden to create the guidance ports. | |
| virtual void | lookupAndCacheProcessSR () |
This function looks up a process state repository in the process state repository manager by name, and caches a pointer to it in
myProcessState. | |
| virtual bool | postAddComponentsInit () |
| Calls lookupAndCacheProcessSR(), to look up our process state repository after all of the components have been created and loaded. | |
| virtual bool | createGuidancePortGroup () |
| Create the various guidance ports to the pilot controller. | |
| virtual bool | createDesiredPositionPort () |
| Create the various guidance ports to the pilot controller. | |
| virtual bool | createDesiredVelocityPort () |
| Create the various guidance ports to the pilot controller. | |
| virtual bool | createDesiredAccelerationPort () |
| Create the various guidance ports to the pilot controller. | |
| virtual bool | createDesiredHeadingPort () |
| Create the various guidance ports to the pilot controller. | |
| virtual bool | createPositionSelectorPort () |
| Create the various guidance ports to the pilot controller. | |
| virtual bool | createVelocitySelectorPort () |
| Create the various guidance ports to the pilot controller. | |
| virtual bool | createAccelerationSelectorPort () |
| Create the various guidance ports to the pilot controller. | |
| virtual bool | createHeadingSelectorPort () |
| Create the various guidance ports to the pilot controller. | |
| virtual bool | createAggressivenessPort () |
| Create the various guidance ports to the pilot controller. | |
| virtual bool | createPowerDownPort () |
| Create the various guidance ports to the pilot controller. | |
Protected Attributes | |
| DtRotaryWingEntityStateRepository * | myRotaryWingEntityState |
| DtRotaryWingFlightPSR * | myProcessState |
| Pointer to a process state repository used to store state data associated with this component. | |
Ports and Port Groups | |
| DtOutputPortGroup * | myGuidancePortGroup |
| Output Port Group Name: guidance Output Port Group Description: Group of input ports that define the desired heading/position/velocity/acceleration and flight properties. | |
| DtVectorOutputPort * | myDesiredPositionPort |
| Output Port Name: desired-position Output Port Description: The desired position of the entity. | |
| DtVectorOutputPort * | myDesiredVelocityPort |
| Output Port Name: desired-velocity Output Port Description: The desired velocity of the entity Output Port Range: Database coordinates. | |
| DtVectorOutputPort * | myDesiredAccelerationPort |
| Output Port Name: desired-acceleration Output Port Description: The desired acceleration of the entity Output Port Range: Database coordinates. | |
| DtAnalogOutputPort * | myDesiredHeadingPort |
| Output Port Name: desired-heading Output Port Description: Output Port Range: -1. | |
| DtAnalogOutputPort * | myPositionSelectorPort |
| Output Port Name: position-selector Output Port Description: Determines whether the desired-position port is used. | |
| DtAnalogOutputPort * | myVelocitySelectorPort |
| Output Port Name: velocity-selector Output Port Description: Determines whether the desired-velocity port is used. | |
| DtAnalogOutputPort * | myAccelerationSelectorPort |
| Output Port Name: acceleration-selector Output Port Description: Determines whether the desired-avveleration port is used. | |
| DtAnalogOutputPort * | myHeadingSelectorPort |
| Output Port Name: heading-selector Output Port Description: Determines whether the desired-heading port is used. | |
| DtAnalogOutputPort * | myAggressivenessPort |
| Output Port Name: aggressiveness Output Port Description: How aggressively the autopilot will move the controls to gain the desired values. | |
| DtBooleanOutputPort * | myPowerDownPort |
| Output Port Name: power-down Output Port Description: Determines whether the control values will all be set to 0. | |
Private Member Functions | |
| DtRotaryWingTaskController () | |
| default constructor; not implemented | |
| DtRotaryWingTaskController (const DtRotaryWingTaskController &orig) | |
| copy constructor; not implemented | |
| const DtRotaryWingTaskController & | operator= (const DtRotaryWingTaskController &orig) |
| assignment operator; not implemented | |
The DtRotaryWingTaskController class creates the rotary-wing-control port group needed to control rotary-wing actuators.
Uses Descriptor Type: DtComponentDescriptor
| DtRotaryWingTaskController::DtRotaryWingTaskController | ( | const DtString & | name, |
| DtVrfObject * | owner, | ||
| DtSimManager * | simManager, | ||
| DtComponentDescriptor * | desc = 0, |
||
| DtReaderWriterRegistry * | parentRegistry = 0 |
||
| ) |
(const DtString&,DtVrfObject*,DtSimManager*,
| name | Reader writer name of this component. |
| owner | The DtVrfObject that owns this component |
| simManager | The simulation manager (provides access to terrain, message interface, simulation clock). |
| desc | The component descriptor used to initialize this component. |
| parentRegistry | Pointer to the parent reader writer registry (the containing object that reads/writes this object). |
| virtual DtRotaryWingTaskController::~DtRotaryWingTaskController | ( | ) | [virtual] |
destructor
| DtRotaryWingTaskController::DtRotaryWingTaskController | ( | ) | [private] |
default constructor; not implemented
| DtRotaryWingTaskController::DtRotaryWingTaskController | ( | const DtRotaryWingTaskController & | orig | ) | [private] |
copy constructor; not implemented
| virtual bool DtRotaryWingTaskController::init | ( | ) | [virtual] |
Overridden to initialize myRotaryWingEntityState.
Reimplemented from DtControllerComponent.
Reimplemented in DtRotaryWingWaitController, DtRotaryWingFlightCommandController, DtRotaryWingMoveAlongControllerComponent, and DtRotaryWingCollisionAvoidanceController.
| virtual DtString DtRotaryWingTaskController::type | ( | ) | const [pure virtual] |
Returns a string identifies the class type of component.
Type values are defined in compTypes.h. DtSimComponent creation functions are registered with the DtSimComponentFactory using the type values as the key.
Implements DtTaskControllerComponent.
Implemented in DtRotaryWingCollisionAvoidanceController, DtRotaryWingLandingController, DtRotaryWingTurnToHeadingController, DtRotaryWingPatrolBetweenController, DtRotaryWingPatrolRouteController, DtRotaryWingMoveAlongControllerComponent, DtRotaryWingFlightCommandController, DtRotaryWingFollowEntityController, DtRotaryWingLoiterControllerComponent, DtRotaryWingMoveToControllerComponent, DtRotaryWingWaitController, and DtRotaryWingMoveToLocationControllerComponent.
| virtual void DtRotaryWingTaskController::clearTask | ( | ) | [virtual] |
Overridden to deactivate the port group when this controller completes a task.
Reimplemented from DtSingleTaskControllerComponent.
Reimplemented in DtRotaryWingFlightCommandController, and DtRotaryWingLandingController.
| virtual void DtRotaryWingTaskController::setDesiredPosition | ( | const DtVector & | pos | ) | [virtual] |
Sets the specified value into the corresponding output port after doing a check to make sure the port was created.
| virtual void DtRotaryWingTaskController::setDesiredVelocity | ( | const DtVector & | vel | ) | [virtual] |
Sets the specified value into the corresponding output port after doing a check to make sure the port was created.
| virtual void DtRotaryWingTaskController::setDesiredAcceleration | ( | const DtVector & | accel | ) | [virtual] |
Sets the specified value into the corresponding output port after doing a check to make sure the port was created.
| virtual void DtRotaryWingTaskController::setDesiredHeading | ( | double | heading | ) | [virtual] |
Sets the specified value into the corresponding output port after doing a check to make sure the port was created.
| virtual void DtRotaryWingTaskController::setPositionSelector | ( | double | sel | ) | [virtual] |
Sets the specified value into the corresponding output port after doing a check to make sure the port was created.
| virtual void DtRotaryWingTaskController::setVelocitySelector | ( | double | sel | ) | [virtual] |
Sets the specified value into the corresponding output port after doing a check to make sure the port was created.
| virtual void DtRotaryWingTaskController::setAccelerationSelector | ( | double | sel | ) | [virtual] |
Sets the specified value into the corresponding output port after doing a check to make sure the port was created.
| virtual void DtRotaryWingTaskController::setHeadingSelector | ( | double | sel | ) | [virtual] |
Sets the specified value into the corresponding output port after doing a check to make sure the port was created.
| virtual void DtRotaryWingTaskController::setAggressiveness | ( | double | agg | ) | [virtual] |
Sets the specified value into the corresponding output port after doing a check to make sure the port was created.
| virtual void DtRotaryWingTaskController::setPowerDown | ( | bool | powerDown | ) | [virtual] |
Sets the specified value into the corresponding output port after doing a check to make sure the port was created.
| virtual DtVectorOutputPort* DtRotaryWingTaskController::desiredPositionPort | ( | ) | [virtual] |
| virtual DtVectorOutputPort* DtRotaryWingTaskController::desiredVelocityPort | ( | ) | [virtual] |
| virtual DtVectorOutputPort* DtRotaryWingTaskController::desiredAccelerationPort | ( | ) | [virtual] |
| virtual DtAnalogOutputPort* DtRotaryWingTaskController::desiredHeadingPort | ( | ) | [virtual] |
| virtual DtAnalogOutputPort* DtRotaryWingTaskController::positionSelectorPort | ( | ) | [virtual] |
| virtual DtAnalogOutputPort* DtRotaryWingTaskController::velocitySelectorPort | ( | ) | [virtual] |
| virtual DtAnalogOutputPort* DtRotaryWingTaskController::accelerationSelectorPort | ( | ) | [virtual] |
| virtual DtAnalogOutputPort* DtRotaryWingTaskController::headingSelectorPort | ( | ) | [virtual] |
| virtual DtAnalogOutputPort* DtRotaryWingTaskController::aggressivenessPort | ( | ) | [virtual] |
| virtual DtBooleanOutputPort* DtRotaryWingTaskController::powerDownPort | ( | ) | [virtual] |
| virtual bool DtRotaryWingTaskController::createPortGroups | ( | ) | [protected, virtual] |
Overridden to call createGuidancePortGroup()
Reimplemented from DtSimComponent.
| virtual bool DtRotaryWingTaskController::createPorts | ( | ) | [protected, virtual] |
Overridden to create the guidance ports.
Reimplemented from DtSimComponent.
| virtual bool DtRotaryWingTaskController::createGuidancePortGroup | ( | ) | [protected, virtual] |
Create the various guidance ports to the pilot controller.
| virtual bool DtRotaryWingTaskController::createDesiredPositionPort | ( | ) | [protected, virtual] |
Create the various guidance ports to the pilot controller.
| virtual bool DtRotaryWingTaskController::createDesiredVelocityPort | ( | ) | [protected, virtual] |
Create the various guidance ports to the pilot controller.
| virtual bool DtRotaryWingTaskController::createDesiredAccelerationPort | ( | ) | [protected, virtual] |
Create the various guidance ports to the pilot controller.
| virtual bool DtRotaryWingTaskController::createDesiredHeadingPort | ( | ) | [protected, virtual] |
Create the various guidance ports to the pilot controller.
| virtual bool DtRotaryWingTaskController::createPositionSelectorPort | ( | ) | [protected, virtual] |
Create the various guidance ports to the pilot controller.
| virtual bool DtRotaryWingTaskController::createVelocitySelectorPort | ( | ) | [protected, virtual] |
Create the various guidance ports to the pilot controller.
| virtual bool DtRotaryWingTaskController::createAccelerationSelectorPort | ( | ) | [protected, virtual] |
Create the various guidance ports to the pilot controller.
| virtual bool DtRotaryWingTaskController::createHeadingSelectorPort | ( | ) | [protected, virtual] |
Create the various guidance ports to the pilot controller.
| virtual bool DtRotaryWingTaskController::createAggressivenessPort | ( | ) | [protected, virtual] |
Create the various guidance ports to the pilot controller.
| virtual bool DtRotaryWingTaskController::createPowerDownPort | ( | ) | [protected, virtual] |
Create the various guidance ports to the pilot controller.
| virtual void DtRotaryWingTaskController::lookupAndCacheProcessSR | ( | ) | [protected, virtual] |
This function looks up a process state repository in the process state repository manager by name, and caches a pointer to it in
The name (if it exists) is given in the component descriptor (DtComponentDescriptor::processStateRepositoryName). If the name does not exist, it uses the appropriate default name defined in procSRTypes.h. Another component is responsible for creating and destroying the process state repository.
| virtual bool DtRotaryWingTaskController::postAddComponentsInit | ( | ) | [protected, virtual] |
Calls lookupAndCacheProcessSR(), to look up our process state repository after all of the components have been created and loaded.
Reimplemented from DtSimComponent.
| const DtRotaryWingTaskController& DtRotaryWingTaskController::operator= | ( | const DtRotaryWingTaskController & | orig | ) | [private] |
assignment operator; not implemented
Output Port Group Name: guidance
Output Port Group Description: Group of input ports that define the desired heading/position/velocity/acceleration and flight properties.
Output Port Name: desired-position
Output Port Description: The desired position of the entity.
Output Port Range: Database coordinates.
Output Group Parent: guidance
Output Port Name: desired-velocity
Output Port Description: The desired velocity of the entity
Output Port Range: Database coordinates.
Output Group Parent: guidance
Output Port Name: desired-acceleration
Output Port Description: The desired acceleration of the entity
Output Port Range: Database coordinates.
Output Group Parent: guidance
Output Port Name: desired-heading
Output Port Description:
Output Port Range: -1.
to 1.
Output Group Parent: guidance
Output Port Name: position-selector
Output Port Description: Determines whether the desired-position port is used.
Set to 1.0 to use, otherwise 0.0.
Output Port Range: 0.0 to 1.0
Output Group Parent: guidance
Output Port Name: velocity-selector
Output Port Description: Determines whether the desired-velocity port is used.
Set to 1.0 to use, otherwise 0.0. Desired velocity will be scaled by selector.
Output Port Range: 0.0 to 1.0
Output Group Parent: guidance
Output Port Name: acceleration-selector
Output Port Description: Determines whether the desired-avveleration port is used.
Set to 1.0 to use, otherwise 0.0.
Output Port Range: 0. to 1.
Output Group Parent: guidance
Output Port Name: heading-selector
Output Port Description: Determines whether the desired-heading port is used.
Set to 1.0 to use, otherwise 0.0.
Output Port Range: 0. to 1.
Output Group Parent: guidance
Output Port Name: aggressiveness
Output Port Description: How aggressively the autopilot will move the controls to gain the desired values.
0.0 will result in no movement of the controls.
Output Port Range: 0. to 1.
Output Group Parent: guidance
Output Port Name: power-down
Output Port Description: Determines whether the control values will all be set to 0.
Set power-down to true if the entity is landed and you wish it to stay landed on the ground. Setting power-down to true while the entity is not landed will likely result in the entity crashing to the ground. Output Port Range: True/False
Output Group Parent: guidance
Pointer to a process state repository used to store state data associated with this component.
This process state repository is shared with other components. Another component is responsible for creating and destroying the process state repository. This state is saved and restored as part of a scenario (or checkpoint).
Reimplemented in DtRotaryWingFlightCommandController.