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

Public Member Functions | |
| DtRotaryWingPilotController (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) | |
| (const DtString&,DtVrfObject*,DtSimManager*, | |
| virtual | ~DtRotaryWingPilotController () |
| destructor | |
| virtual bool | init () |
| Overridden to initialize myRotaryWingEntityState. | |
| virtual void | tick () |
| Reads the data from the guidance ports into the state repository. | |
| virtual DtString | type () const |
| Returns a string identifies the class type of component. | |
| virtual DtConstrainedAnalogOutputPort * | throttlePort () |
| virtual DtConstrainedAnalogOutputPort * | collectivePort () |
| virtual DtConstrainedDualAxisAnalogOutputPort * | cyclicPort () |
| virtual DtConstrainedAnalogOutputPort * | pedalPort () |
| virtual bool | createGuidancePortGroup () |
| Create the guidance ports from the task controllers. | |
| virtual bool | createDesiredPositionPort () |
| Create the guidance ports from the task controllers. | |
| virtual bool | createDesiredVelocityPort () |
| Create the guidance ports from the task controllers. | |
| virtual bool | createDesiredAccelerationPort () |
| Create the guidance ports from the task controllers. | |
| virtual bool | createDesiredHeadingPort () |
| Create the guidance ports from the task controllers. | |
| virtual bool | createPositionSelectorPort () |
| Create the guidance ports from the task controllers. | |
| virtual bool | createVelocitySelectorPort () |
| Create the guidance ports from the task controllers. | |
| virtual bool | createAccelerationSelectorPort () |
| Create the guidance ports from the task controllers. | |
| virtual bool | createHeadingSelectorPort () |
| Create the guidance ports from the task controllers. | |
| virtual bool | createAggressivenessPort () |
| Create the guidance ports from the task controllers. | |
| virtual bool | createPowerDownPort () |
| Create the guidance ports from the task controllers. | |
| virtual DtVectorInputPort * | desiredPositionPort () |
| Accessors for guidance ports. | |
| virtual DtVectorInputPort * | desiredVelocityPort () |
| Accessors for guidance ports. | |
| virtual DtVectorInputPort * | desiredAccelerationPort () |
| Accessors for guidance ports. | |
| virtual DtAnalogInputPort * | desiredHeadingPort () |
| Accessors for guidance ports. | |
| virtual DtAnalogInputPort * | positionSelectorPort () |
| Accessors for guidance ports. | |
| virtual DtAnalogInputPort * | velocitySelectorPort () |
| Accessors for guidance ports. | |
| virtual DtAnalogInputPort * | accelerationSelectorPort () |
| Accessors for guidance ports. | |
| virtual DtAnalogInputPort * | headingSelectorPort () |
| Accessors for guidance ports. | |
| virtual DtAnalogInputPort * | aggressivenessPort () |
| Accessors for guidance ports. | |
| virtual DtBooleanInputPort * | powerDownPort () |
| Accessors for guidance ports. | |
| virtual bool | createRotaryWingControlPortGroup () |
| These are called in init to create the ports used to communicate with the actuator. | |
| virtual bool | createThrottlePort () |
| These are called in init to create the ports used to communicate with the actuator. | |
| virtual bool | createCollectivePort () |
| These are called in init to create the ports used to communicate with the actuator. | |
| virtual bool | createCyclicPort () |
| These are called in init to create the ports used to communicate with the actuator. | |
| virtual bool | createPedalPort () |
| These are called in init to create the ports used to communicate with the actuator. | |
Static Public Member Functions | |
| static DtSimComponent * | creator (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) |
| (const DtString&,DtVrfObject*,DtSimManager*, | |
Protected Member Functions | |
| virtual bool | createPortGroups () |
| Overridden to call createRotaryWingControlPortGroup() and createGuidancePortGroup() | |
| virtual bool | createPorts () |
| Overridden to create rotary wing ports. | |
| virtual void | setStateFromPorts () |
| Sets the state repository variables from the ports. | |
| DtRotaryWingPilotController () | |
| default constructor; not implemented | |
| DtRotaryWingPilotController (const DtRotaryWingPilotController &orig) | |
| copy constructor; not implemented | |
| const DtRotaryWingPilotController & | operator= (const DtRotaryWingPilotController &orig) |
| assignment operator; not implemented | |
Protected Attributes | |
| DtRotaryWingEntityStateRepository * | myRotaryWingEntityState |
| DtVector | myNormalizedBodyVelocity |
Ports and Port Groups | |
| DtOutputPortGroup * | myRotaryWingControlPortGroup |
| Output Port Group Name: rotary-wing-control Output Port Group Description: | |
| DtConstrainedAnalogOutputPort * | myThrottlePort |
| Output Port Name: throttle Output Port Description: The position of the throttle control. | |
| DtConstrainedAnalogOutputPort * | myCollectivePort |
| Output Port Name: collective Output Port Description: The position of the collective control. | |
| DtConstrainedDualAxisAnalogOutputPort * | myCyclicPort |
| Output Port Name: cyclic Output Port Description: The position of the collective control in X and Y. | |
| DtConstrainedAnalogOutputPort * | myPedalPort |
| Output Port Name: pedal Output Port Description: The position of the pedal controls. | |
| DtInputPortGroup * | myGuidancePortGroup |
| Input Port Group Name: guidance Input Port Group Description: Group of input ports that define the desired heading/position/velocity/acceleration and flight properties. | |
| DtVectorInputPort * | myDesiredPositionPort |
| Input Port Name: desired-position Input Port Description: The desired position of the entity. | |
| DtVectorInputPort * | myDesiredVelocityPort |
| Input Port Name: desired-velocity Input Port Description: The desired velocity of the entity Input Port Range: Database coordinates. | |
| DtVectorInputPort * | myDesiredAccelerationPort |
| Input Port Name: desired-acceleration Input Port Description: The desired acceleration of the entity Input Port Range: Database coordinates. | |
| DtAnalogInputPort * | myDesiredHeadingPort |
| Input Port Name: desired-heading Input Port Description: Input Port Range: -1. | |
| DtAnalogInputPort * | myPositionSelectorPort |
| Input Port Name: position-selector Input Port Description: Determines whether the desired-position port is used. | |
| DtAnalogInputPort * | myVelocitySelectorPort |
| Input Port Name: velocity-selector Input Port Description: Determines whether the desired-velocity port is used. | |
| DtAnalogInputPort * | myAccelerationSelectorPort |
| Input Port Name: acceleration-selector Input Port Description: Determines whether the desired-acceleration port is used. | |
| DtAnalogInputPort * | myHeadingSelectorPort |
| Input Port Name: heading-selector Input Port Description: Determines whether the desired-heading port is used. | |
| DtAnalogInputPort * | myAggressivenessPort |
| Input Port Name: aggressiveness Input Port Description: How aggressively the autopilot will move the controls to gain the desired values. | |
| DtBooleanInputPort * | myPowerDownPort |
| Input Port Name: power-down Input Port Description: Determines whether the control values will all be set to 0. | |
The DtRotaryWingPilotController class creates the rotary-wing-control port group needed to control rotary-wing actuators.
Uses Descriptor Type: DtComponentDescriptor
| DtRotaryWingPilotController::DtRotaryWingPilotController | ( | 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 DtRotaryWingPilotController::~DtRotaryWingPilotController | ( | ) | [virtual] |
destructor
| DtRotaryWingPilotController::DtRotaryWingPilotController | ( | ) | [protected] |
default constructor; not implemented
| DtRotaryWingPilotController::DtRotaryWingPilotController | ( | const DtRotaryWingPilotController & | orig | ) | [protected] |
copy constructor; not implemented
| virtual bool DtRotaryWingPilotController::init | ( | ) | [virtual] |
Overridden to initialize myRotaryWingEntityState.
Reimplemented from DtControllerComponent.
Reimplemented in DtSimpleRotaryWingPilot, and DtRotaryWingJoyFlightController.
| virtual void DtRotaryWingPilotController::tick | ( | ) | [virtual] |
Reads the data from the guidance ports into the state repository.
Reimplemented from DtSimComponent.
Reimplemented in DtSimpleRotaryWingPilot, and DtRotaryWingJoyFlightController.
| virtual DtString DtRotaryWingPilotController::type | ( | ) | const [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.
Reimplemented from DtControllerComponent.
Reimplemented in DtSimpleRotaryWingPilot, and DtRotaryWingJoyFlightController.
| virtual bool DtRotaryWingPilotController::createGuidancePortGroup | ( | ) | [virtual] |
Create the guidance ports from the task controllers.
| virtual bool DtRotaryWingPilotController::createDesiredPositionPort | ( | ) | [virtual] |
Create the guidance ports from the task controllers.
| virtual bool DtRotaryWingPilotController::createDesiredVelocityPort | ( | ) | [virtual] |
Create the guidance ports from the task controllers.
| virtual bool DtRotaryWingPilotController::createDesiredAccelerationPort | ( | ) | [virtual] |
Create the guidance ports from the task controllers.
| virtual bool DtRotaryWingPilotController::createDesiredHeadingPort | ( | ) | [virtual] |
Create the guidance ports from the task controllers.
| virtual bool DtRotaryWingPilotController::createPositionSelectorPort | ( | ) | [virtual] |
Create the guidance ports from the task controllers.
| virtual bool DtRotaryWingPilotController::createVelocitySelectorPort | ( | ) | [virtual] |
Create the guidance ports from the task controllers.
| virtual bool DtRotaryWingPilotController::createAccelerationSelectorPort | ( | ) | [virtual] |
Create the guidance ports from the task controllers.
| virtual bool DtRotaryWingPilotController::createHeadingSelectorPort | ( | ) | [virtual] |
Create the guidance ports from the task controllers.
| virtual bool DtRotaryWingPilotController::createAggressivenessPort | ( | ) | [virtual] |
Create the guidance ports from the task controllers.
| virtual bool DtRotaryWingPilotController::createPowerDownPort | ( | ) | [virtual] |
Create the guidance ports from the task controllers.
| virtual DtVectorInputPort* DtRotaryWingPilotController::desiredPositionPort | ( | ) | [virtual] |
Accessors for guidance ports.
| virtual DtVectorInputPort* DtRotaryWingPilotController::desiredVelocityPort | ( | ) | [virtual] |
Accessors for guidance ports.
| virtual DtVectorInputPort* DtRotaryWingPilotController::desiredAccelerationPort | ( | ) | [virtual] |
Accessors for guidance ports.
| virtual DtAnalogInputPort* DtRotaryWingPilotController::desiredHeadingPort | ( | ) | [virtual] |
Accessors for guidance ports.
| virtual DtAnalogInputPort* DtRotaryWingPilotController::positionSelectorPort | ( | ) | [virtual] |
Accessors for guidance ports.
| virtual DtAnalogInputPort* DtRotaryWingPilotController::velocitySelectorPort | ( | ) | [virtual] |
Accessors for guidance ports.
| virtual DtAnalogInputPort* DtRotaryWingPilotController::accelerationSelectorPort | ( | ) | [virtual] |
Accessors for guidance ports.
| virtual DtAnalogInputPort* DtRotaryWingPilotController::headingSelectorPort | ( | ) | [virtual] |
Accessors for guidance ports.
| virtual DtAnalogInputPort* DtRotaryWingPilotController::aggressivenessPort | ( | ) | [virtual] |
Accessors for guidance ports.
| virtual DtBooleanInputPort* DtRotaryWingPilotController::powerDownPort | ( | ) | [virtual] |
Accessors for guidance ports.
| virtual bool DtRotaryWingPilotController::createRotaryWingControlPortGroup | ( | ) | [virtual] |
These are called in init to create the ports used to communicate with the actuator.
| virtual bool DtRotaryWingPilotController::createThrottlePort | ( | ) | [virtual] |
These are called in init to create the ports used to communicate with the actuator.
| virtual bool DtRotaryWingPilotController::createCollectivePort | ( | ) | [virtual] |
These are called in init to create the ports used to communicate with the actuator.
| virtual bool DtRotaryWingPilotController::createCyclicPort | ( | ) | [virtual] |
These are called in init to create the ports used to communicate with the actuator.
| virtual bool DtRotaryWingPilotController::createPedalPort | ( | ) | [virtual] |
These are called in init to create the ports used to communicate with the actuator.
| virtual DtConstrainedAnalogOutputPort* DtRotaryWingPilotController::throttlePort | ( | ) | [virtual] |
| virtual DtConstrainedAnalogOutputPort* DtRotaryWingPilotController::collectivePort | ( | ) | [virtual] |
| virtual DtConstrainedDualAxisAnalogOutputPort* DtRotaryWingPilotController::cyclicPort | ( | ) | [virtual] |
| virtual DtConstrainedAnalogOutputPort* DtRotaryWingPilotController::pedalPort | ( | ) | [virtual] |
| static DtSimComponent* DtRotaryWingPilotController::creator | ( | const DtString & | name, |
| DtVrfObject * | owner, | ||
| DtSimManager * | simManager, | ||
| DtComponentDescriptor * | desc = 0, |
||
| DtReaderWriterRegistry * | parentRegistry = 0 |
||
| ) | [static] |
(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). |
Reimplemented in DtSimpleRotaryWingPilot, and DtRotaryWingJoyFlightController.
| virtual bool DtRotaryWingPilotController::createPortGroups | ( | ) | [protected, virtual] |
Overridden to call createRotaryWingControlPortGroup() and createGuidancePortGroup()
Reimplemented from DtSimComponent.
| virtual bool DtRotaryWingPilotController::createPorts | ( | ) | [protected, virtual] |
Overridden to create rotary wing ports.
Reimplemented from DtSimComponent.
Reimplemented in DtSimpleRotaryWingPilot.
| virtual void DtRotaryWingPilotController::setStateFromPorts | ( | ) | [protected, virtual] |
Sets the state repository variables from the ports.
| const DtRotaryWingPilotController& DtRotaryWingPilotController::operator= | ( | const DtRotaryWingPilotController & | orig | ) | [protected] |
assignment operator; not implemented
Output Port Group Name: rotary-wing-control
Output Port Group Description:
Output Port Name: throttle
Output Port Description: The position of the throttle control.
Output Port Range: 0. to 1.
Output Port Default Value:
Output Group Parent: rotary-wing-control
Output Port Name: collective
Output Port Description: The position of the collective control.
Output Port Range: 0. to 1.
Output Port Default Value:
Output Group Parent: rotary-wing-control
Output Port Name: cyclic
Output Port Description: The position of the collective control in X and Y.
Output Port Range: X: -1. to 1. Y: -1 to 1.
Output Port Default Value:
Output Group Parent: rotary-wing-control
Output Port Name: pedal
Output Port Description: The position of the pedal controls.
Output Port Range: -1. to 1.
Output Port Default Value:
Output Group Parent: rotary-wing-control
Input Port Group Name: guidance
Input Port Group Description: Group of input ports that define the desired heading/position/velocity/acceleration and flight properties.
Input Port Name: desired-position
Input Port Description: The desired position of the entity.
Input Port Range: Database coordinates.
Input Group Parent: guidance
Input Port Name: desired-velocity
Input Port Description: The desired velocity of the entity
Input Port Range: Database coordinates.
Input Group Parent: guidance
Input Port Name: desired-acceleration
Input Port Description: The desired acceleration of the entity
Input Port Range: Database coordinates.
Input Group Parent: guidance
Input Port Name: desired-heading
Input Port Description:
Input Port Range: -1.
to 1.
Input Group Parent: guidance
Input Port Name: position-selector
Input Port Description: Determines whether the desired-position port is used.
Set to 1.0 to use, otherwise 0.0.
Input Port Range: 0.0 to 1.0
Input Group Parent: guidance
Input Port Name: velocity-selector
Input 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.
Input Port Range: 0.0 to 1.0
Input Group Parent: guidance
Input Port Name: acceleration-selector
Input Port Description: Determines whether the desired-acceleration port is used.
Set to 1.0 to use, otherwise 0.0.
Input Port Range: 0. to 1.
Input Group Parent: guidance
Input Port Name: heading-selector
Input Port Description: Determines whether the desired-heading port is used.
Set to 1.0 to use, otherwise 0.0.
Input Port Range: 0. to 1.
Input Group Parent: guidance
Input Port Name: aggressiveness
Input 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.
Input Port Range: 0. to 1.
Input Group Parent: guidance
Input Port Name: power-down
Input 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. Input Port Range: True/False
Input Group Parent: guidance