![]() |
VR-Forces 4.8 Class Documentation
|
DtFixedWingDefaultController is a controller used to direct a fixed wing entity to loiter when it is in the air and not otherwise tasked. More...

Public Member Functions | |
| DtFixedWingDefaultController (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) | |
| virtual | ~DtFixedWingDefaultController () |
| destructor More... | |
| virtual bool | init () |
| Initialization - Calls base init() and creates and initializes our waypoint. More... | |
| virtual void | tick () |
| Calculate new control values. More... | |
| virtual const char * | type () const |
| Returns a string identifies the class type of component. More... | |
| virtual double | radius () const |
| Sets/gets radius of circle in process state repository (myProcessState, a DtFixedWingFlightPSR). More... | |
| virtual void | setRadius (double radius) |
| virtual bool | clockwise () const |
| Sets/gets clockwise flag in process state repository (myProcessState, a DtFixedWingFlightPSR). More... | |
| virtual void | setClockwise (bool clockwise) |
| virtual const DtVrfObject * | waypoint () const |
| OBSOLETE - returns 0. More... | |
| virtual bool | postAddComponentsInit () |
| Override to initialize loiter clockwise flag and loiter radius parameters in process state repository with values from component descriptor. More... | |
| virtual void | processOrbitTask (DtSimMessage *msg) |
| If the plane is not on the ground, this function will pull out the location, radius and direction of the orbit task and copy them into the process state repository. More... | |
Public Member Functions inherited from DtFixedWingPilotController | |
| DtFixedWingPilotController (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) | |
| virtual | ~DtFixedWingPilotController () |
| destructor More... | |
| virtual void | clearTask () |
| Overridden to deactivate the port group when this controller completes a task. More... | |
| virtual void | taxiTo (const DtVector &destination, double speed) |
| The following functions assume that the FWE is on the GROUND. More... | |
| virtual void | taxi (double speed, double turnRate) |
| Call this to taxi at a given speed and turn rate. More... | |
| virtual double | calculateSteering (double turnAngle) const |
| Calculates the pedal port value for the given turn angle. More... | |
| virtual double | approximateThrottle (double speed) |
| Calculates the throttle port value for the given speed using: throttle = (slope/maxSlope + ((desiredSpeed/maxSpeed)) More... | |
| virtual double | calculateCurrentBrakingDistance () const |
| Returns the braking distance using the current speed and breaking ability to determine how long it would take to brake. More... | |
| virtual void | flyTo (const DtVector &destination, double speed, double maxTerrainAvoidanceLookaheadDist=-1) |
| The following functions assume that the FWE is in the AIR. More... | |
| virtual void | flyToDirect (const DtVector &destination, double speed, double maxTerrainAvoidanceLookaheadDist=-1) |
| Call this to fly to a specified 3D point at the given speed. More... | |
| virtual void | fly (double speed, double turnRate, double climbRate, double maxTerrainAvoidanceLookaheadDist=-1) |
| Call this to fly at a given speed, turn rate and climb rate. More... | |
| virtual void | flyFixedPitch (double speed, double turnRate, double desiredPitch, double maxTerrainAvoidanceLookaheadDist=-1) |
| Call this to fly at a given speed, turn rate and pitch. More... | |
| virtual double | terrainAvoidancePitch (double speed, double desiredPitch, double maxTerrainAvoidanceLookaheadDist) |
| Checks for upcoming terrain collision along the path defined by the current heading and desiredPitch and if found, returns a new pitch to avoid terrain collision. More... | |
| virtual bool | clearPathTo (const DtVector &localPosition) |
| Checks if there is a clear path from the entity location to the specified location. More... | |
| virtual void | circle (const DtVector ¢er, double radius, double speed, double altitude, bool clockwise=true) |
| Call this to fly in a circle. More... | |
| virtual double | calcControlForRoll (double rollRate) |
| Calculates and returns the stickY value needed to achieve the desired roll rate. More... | |
| virtual double | calcControlForThrottle (double speed, bool &deployFlaps) |
| Calculates a throttle value based on the entity's current speed, desired speed, desired body pitch rate, and current acceleration. More... | |
| virtual double | decelerationLimitedClimbRate (double altitudeError, double desiredSpeed, double finalClimbRate=0.0) |
| Estimates a limited climb rate that the entity can command this tick that will allow it to level out when the altitude error has been reduced to zero. More... | |
| virtual void | calcControlForTurnAndClimb (double turnRate, double climbRate, double &stickX, double &pedal) |
| The calcControlForTurnAndClimb() method determines the appropriate pitch angle to use to achieve the desired climb rate, then calls calccontrolForTurnAndPitch(). More... | |
| virtual void | calcControlForTurnAndPitch (double turnRate, double desiredPitch, double &stickX, double &pedal, double rollRate=0.0) |
| The calcControlForTurnAndClimb() method determines complementary stickX and pedal values to achieve a desired turn rate and climb rate. More... | |
| virtual double | calculateClimbRate (double altitude, double climbTime) const |
| Calculates a climb rate to achieve the specified altitude in the climbTime specified. More... | |
| virtual double | calculateTurnRate (double turnAngle, double additionalTurnRate=0) const |
| Determines the turn rate that will be used to change heading. More... | |
| virtual double | calculateRollAngle (double turnRate, double speed) const |
| Calculates a roll angle for a turn based on the turn rate desired and the entity's current speed. More... | |
| virtual double | calculateRollRate (double rollAngle, double turnRate) |
| Calculates a desired rate of roll based on the current roll and the desired roll angle. More... | |
| virtual void | calculateNormalizedBodyVelocity () |
| Put current velocity into body coordinates. More... | |
| virtual void | calculateLocalAngularVelocity () |
| The calculateLocalAngularVelocity() function calculates the entity’s current rate of heading change and stores the value in myProcessState's myLocalAngularVelocity member. More... | |
| virtual void | calculateSpeedRatioSquared () |
| Calculate the square of our current speed divided by our max speed. More... | |
| virtual void | initializeControllerForTick () |
| The initializeControllerForTick() function is called to recompute the entity's normalized body velocity, local angular velocity, and speed ratio squared. More... | |
| virtual bool | createFixedWingControlPortGroup () |
| These are called in init to create the ports used to communicate with the actuator. More... | |
| virtual bool | createThrottlePort () |
| virtual bool | createStickPort () |
| virtual bool | createPedalPort () |
| virtual bool | createBrakePort () |
| virtual bool | createFlapsDeployedPort () |
| This is not currently used. More... | |
| virtual DtConstrainedAnalogOutputPort * | throttlePort () |
| These provide access to the ports. More... | |
| virtual DtConstrainedDualAxisAnalogOutputPort * | stickPort () |
| virtual DtConstrainedAnalogOutputPort * | pedalPort () |
| virtual DtConstrainedAnalogOutputPort * | brakePort () |
| virtual DtBooleanOutputPort * | flapsDeployedPort () |
| virtual void | setMaxThrustAcceleration (double maxThrustAcceleration) |
| These are used to set values in the process state repository. More... | |
| virtual void | setTakeOffDir (const DtVector &takeOffDir) |
| The direction vector for take off. More... | |
| virtual const DtVector & | takeOffDir () const |
| virtual double | maxTurningGs () const |
| This is a reference to the entity parameters, stored in the state repository. More... | |
| virtual bool | terrainAvoidanceEnabled () |
| virtual double | terrainAvoidanceLookaheadTime () |
| virtual DtReal | maxTurningGsForTask () const |
| Parameter value from descriptor. More... | |
| virtual DtReal | maxTurnRateCutoffAngle () const |
| virtual DtReal | maxTaxiingTurnSpeed () const |
| virtual DtReal | taxiingNearDistance () const |
| virtual DtReal | taxiingAtDistance () const |
| virtual DtReal | taxiingApproachSpeed () const |
| virtual DtReal | maxPitchAngle () const |
| virtual DtReal | timeToTargetAltitude () const |
Public Member Functions inherited from DtSingleTaskControllerComponent | |
| DtSingleTaskControllerComponent (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *compDesc=0, DtReaderWriterRegistry *parentRegistry=0) | |
| virtual | ~DtSingleTaskControllerComponent () |
| destructor More... | |
| virtual void | postTick () |
| Override to check if we're tasked and we want to give up (only performs the check if we're in play mode (dT() > 0)). More... | |
| virtual bool | beginProcessingTask (const DtTaskMessage &task, DtSimTaskStatePtr taskState) |
| Called by the task manager when this controller should start executing the specified task. More... | |
| virtual void | taskNotify (const DtSimTask &task) |
| This is called to let us know when some other component receives a task In the case of this component, we don't care what the task actually is. More... | |
| virtual void | taskComplete (bool success=true) |
| If we are currently tasked, this will cause us to notify the entity that we're done and delete the task. More... | |
| virtual void | suspendTask () |
| This method is called when the currently running task is being suspended. More... | |
| virtual int | sendSubtask (DtSimTask &task) |
| Sends subtask to ourself. More... | |
| virtual void | clearSubtask (int subtaskId) |
| Clears subtask with the given subtaskId (subtaskId is returned sendSubtask()). More... | |
| virtual void | addPendingSubtaskId (int subtaskId) |
| Adds given subtask Id to list of pending subtasks. More... | |
| virtual bool | findPendingSubtaskId (int subtaskId) |
| Checks to see if given subtaskId exists in our list of pending subtasks. More... | |
| virtual bool | isSubtasked () const |
| Returns true if this controller is currently subtasked. More... | |
| virtual void | removePendingSubtaskId (int subtaskId) |
| Removes pending subtask from list of subtasks for this component. More... | |
| virtual void | removeAllPendingSubtaskIds () |
| Clear all pending subtasks from our list of subtasks. More... | |
| virtual std::vector< int > | currentPendingSubstaskIds () const |
| Returns the list of all currently pending subtask ids for this controller. More... | |
| virtual void | clearCurrentTaskMessage () |
| Returns the current subtask with the specified id. More... | |
| virtual DtTaskMessage * | currentTaskMessage () const |
| Get a pointer to the message that was used to task this entity. More... | |
| virtual DtSimTaskStatePtr | currentTaskState () const |
| virtual void | giveUpTask () |
| Called when controller is tasked and decideToGiveUp() returns true. More... | |
| virtual bool | taskActive (int taskId) const |
| virtual bool | clearTopLevelTasks () |
| If this controller has any top level tasks (not subtasks), they are cleared. More... | |
| virtual void | clearConflictingTopLevelTasks (const DtSimTaskMessageType &conflictType) |
| Clears any top level tasks on this controller that conflict with the conflict task type. More... | |
| virtual void | clearTasksByType (const DtSimTaskMessageType &taskType) |
| Clears any tasks of the specified type running in this controller. More... | |
| virtual void | clearTaskById (int taskId) |
| Clears any task of the specified ID running in this controller. More... | |
| virtual DtSuspendedTaskInfo * | suspendTaskById (int taskId) |
| virtual DtSuspendedTaskInfo * | suspendSubtaskById (int taskId, int subtaskId) |
| virtual std::list < DtTaskMessage * > | currentTaskMessages () const |
| virtual DtTaskWithTaskStateListPtr | topLevelTasks () const |
| virtual void | disable () |
| Overridden to allow tasks controllers that can be disabled to call task complete. More... | |
Public Member Functions inherited from DtTaskControllerComponent | |
| DtTaskControllerComponent (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *compDesc=0, DtReaderWriterRegistry *parentRegistry=0) | |
| virtual | ~DtTaskControllerComponent () |
| destructor More... | |
| virtual bool | showCurrentTaskInGui () const |
| virtual void | setRadio (DtSimRadio *radio) |
| Calls registerTaskMsgCallbacks. More... | |
| virtual void | addTaskProcessorCallback (const DtSimTaskMessageType &taskType, DtTaskMessageCallbackFcn fcn, void *usr) |
| Adds a new function for processing the specified task type. More... | |
| virtual void | addTaskProcessorCallback (const DtSimTaskMessageType &taskType, DtMessageCallbackFcn fcn, void *usr) |
| Deprecated form of addTaskProcessorCallback. More... | |
| virtual void | removeTaskProcessorCallback (const DtSimTaskMessageType &taskType, DtMessageCallbackFcn fcn, void *usr) |
| Undoes anything done by addTaskProcessorCallback(). More... | |
| virtual void | removeTaskProcessorCallback (const DtSimTaskMessageType &taskType, DtTaskMessageCallbackFcn fcn, void *usr) |
| Deprecated form of removeTaskProcessorCallback. More... | |
| virtual void | enable () |
| Overridden to call registerTaskMsgCallbacks(). More... | |
| virtual void | sendTaskCanceled (DtTaskMessage *taskMsg) |
| Sends the task canceled report for the specified message. More... | |
| virtual bool | taskVisualizationsActive () const |
| Returns true if task visualizations are currently active for this component. More... | |
| virtual void | setTasked (bool tasked) |
| The current tasked state of this controller. More... | |
| virtual bool | tasked () const |
Public Member Functions inherited from DtControllerComponent | |
| DtControllerComponent (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) | |
| virtual | ~DtControllerComponent () |
| destructor More... | |
| virtual DtSimRadio * | radio () |
| The radio this component is listening to. More... | |
Public Member Functions inherited from DtSimComponent | |
| DtSimComponent (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) | |
| virtual | ~DtSimComponent () |
| destructor More... | |
| virtual void | setParentSystem (DtComponentSystem *system) |
| Sets the parent system of this component. More... | |
| DtComponentSystem * | parentSystem () const |
| virtual void | registerAttributeFunctions () |
| Called to register functions that provide system attribute values. More... | |
| virtual void | preFirstTickInit () |
| This function can be overridden to initialize a component before it is ticked for the first time. More... | |
| virtual void | timedTick () |
| This version of tick checks to see if the time to tick has arrived. More... | |
| virtual void | setMinTickPeriod (double minTickPeriod) |
| specifies a minimum tick period (which can also be thought of as More... | |
| virtual double | minTickPeriod () const |
| access the minimum tick period More... | |
| virtual void | setMinTickPeriodVariance (double minTickPeriodVariance) |
| set the variance in the minimum tick time More... | |
| virtual double | minTickPeriodVariance () const |
| access the variance in the minimum tick period More... | |
| virtual void | setNextTickTime (double nextTickTime) |
| The next tick time is normally calculated internally. More... | |
| virtual double | nextTickTime () const |
| access the next tick time More... | |
| virtual double | calculateNextTickTime () const |
| The next tick time is equal to mySimManager->exerciseClock()-> approximateElapsedRealTime() + myMinTickPeriod + a random # between -myMinTickPeriodVariance/2. More... | |
| virtual double | calculateFirstTickTime () const |
| Returns the first time value that the component should tick at. More... | |
| virtual void | setEntity (DtVrfObject *entity) |
| The entity's state repository is the place that actuator components make updates and other components look to see our current state. More... | |
| virtual DtSimComponent * | nextComponent () |
| List management functions. More... | |
| virtual DtSimComponent * | prevComponent () |
| virtual void | setListItem (DtListItem *item) |
| Used by DtComponentList. More... | |
| virtual DtListItem * | listItem () |
| virtual void | putData (std::string &fp, int indentLevel=0) |
| putData writes our type, which is provided by the virtual type accessor of the deriving class. More... | |
| virtual DtlObjPtr | getData (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings) |
| getData is just used to get us past the type in the data stream, since it's not actual stored. More... | |
| virtual void | addInputPort (DtInputPort *port) |
| Adds this input port to the components input port list so that other components can look it up and attach to it. More... | |
| virtual void | removeInputPort (DtInputPort *port) |
| virtual DtInputPort * | lookupInputPort (const DtString &portName) |
| Returns a pointer to the input port registered on this component with the specified name. More... | |
| virtual DtList | inputPortList () const |
| Returns the list of DtInputPorts registered on this component. More... | |
| virtual void | addOutputPort (DtOutputPort *port) |
| Adds this output port to the components output port list so that other components can look it up and attach to it. More... | |
| virtual void | removeOutputPort (DtOutputPort *port) |
| virtual DtOutputPort * | lookupOutputPort (const DtString &portName) |
| Returns a pointer to the output port registered on this component with the specified name. More... | |
| virtual DtList | outputPortList () const |
| Returns the list of DtOutputPorts registered on this component. More... | |
| virtual void | addInputPortGroup (DtInputPortGroup *group) |
| Adds this input port to the components input port list so that other components can look it up and attach to it. More... | |
| virtual void | removeInputPortGroup (DtInputPortGroup *group) |
| virtual DtInputPortGroup * | lookupInputPortGroup (const DtString &groupName) |
| Returns a pointer the input port group registered on this component with the specified name. More... | |
| virtual DtList | inputPortGroupList () const |
| Returns the list of DtInputPortGroups registered on this component. More... | |
| virtual void | addOutputPortGroup (DtOutputPortGroup *group) |
| Adds this output port group to the components output port group list so that other components can look it up and attach to it. More... | |
| virtual void | removeOutputPortGroup (DtOutputPortGroup *group) |
| virtual DtOutputPortGroup * | lookupOutputPortGroup (const DtString &groupName) |
| Returns a pointer the output port group registered on this component with the specified name. More... | |
| virtual DtList | outputPortGroupList () const |
| Returns the list of DtOutputPortGroups registered on this component. More... | |
| virtual int | priority () const |
| Return the current connection priority for this component. More... | |
| virtual void | setPriority (int priority) |
| Sets a new connection priority for this component, and changes all current outgoing connections from this component to the new value. More... | |
| double | dT () const |
| This is the delta-t for this component, which may or may not be the same as the exerciseClock dT. More... | |
| virtual void | setDT (double deltaT) |
| Note that while dT is calculated internally, this makes it possible to 'lie' to the component about dT if necessary. More... | |
| virtual void | setComponentDescriptor (DtComponentDescriptor *componentDescriptor) |
| The component descriptor specified in the order of battle file or parameter file that was used to create this component. More... | |
| virtual const DtComponentDescriptor * | componentDescriptor () const |
| virtual bool | tickWhileDestroyed () const |
| If the component returns true here, it will be ticked regardless of the destroyed state of the host entity. More... | |
| DtVrfProcessStateRepositoryManager * | psrManager () |
| virtual const DtSymbolString & | componentFullName () const |
| DtPhysicalWorld * | physicalWorld () |
| Gets the physical world that this component's entity exists in. More... | |
| const DtPhysicalWorld * | physicalWorld () const |
| DtAttachedTerrain * | terrainAttachedTo () |
| Gets the terrain that this component's entity is attached to, if any. More... | |
| const DtAttachedTerrain * | terrainAttachedTo () const |
| DtVrfObject * | entity () |
| Gets the entity. More... | |
| const DtVrfObject * | entity () const |
| const DtVrfObject * | const_entity () const |
| You would want to use this call if you could be either a const or non-const entity, and you wanted to be sure you only had const access. More... | |
| DtSimManager * | simManager () |
| Gets the sim manager. More... | |
| const DtSimManager * | simManager () const |
| const Coordinate_System * | coordinateSystem () const |
| Gets the coordinate system, as it should always exist if the physical world is in a valid state! More... | |
| DtVrfObjectStateRepository * | localStateRepository () |
| Gets the local state repository. More... | |
| const DtVrfObjectStateRepository * | localStateRepository () const |
| const DtVrfObjectStateRepository * | const_localStateRepository () const |
| You would want to use this call if you could be either a const or non-const local state repository, and you wanted to be sure you only had const access. More... | |
| virtual DtTaskVisualizationMap & | taskVisualizations () |
| Returns the list of task visualizations for this component. More... | |
| virtual bool | taskVisualizationsEnabled () const |
| Returns true if task visualizations are enabled for this component. More... | |
| virtual bool | isThreadSafe () const |
| Returns true if this component is marked as being thread safe. More... | |
| virtual void | addVRLinkDeferredJob (const boost::function< void()> &callback) |
| Adds a deferred job to the VRLink job queue in the DtParallelTickManager, but only if this component is marked at thread safe. More... | |
| virtual bool | isEnabled () |
| virtual void | setIsEnabled (bool yesNo) |
| virtual DtOutputStream & | objectConsoleDebug (const DtString &channel="") const |
| virtual DtOutputStream & | objectConsoleVerbose (const DtString &channel="") const |
| virtual DtOutputStream & | objectConsoleInfo (const DtString &channel="") const |
| virtual DtOutputStream & | objectConsoleWarn (const DtString &channel="") const |
| virtual DtOutputStream & | objectConsoleError (const DtString &channel="") const |
| virtual DtSimResourceManager & | resourceManager () |
| virtual const DtSimResourceManager & | resourceManager () const |
Public Member Functions inherited from DtReaderWriter | |
| DtReaderWriter () | |
| default constructor More... | |
| DtReaderWriter (const DtString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false) | |
| real constructor Setting the readonly flag prevents object from writing itself to the stream. More... | |
| DtReaderWriter (const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false) | |
| DtReaderWriter (const DtString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL) | |
| pseudo-copy constructor More... | |
| DtReaderWriter (const DtSymbolString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL) | |
| DtReaderWriter (const DtReaderWriter &, DtReaderWriterRegistry *parentRegistry=NULL) | |
| copy constructor More... | |
| const DtReaderWriter & | operator= (const DtReaderWriter &orig) |
| assignment operator More... | |
| bool | operator== (const DtReaderWriter &) const |
| Equivalence operator. More... | |
| bool | operator!= (const DtReaderWriter &rhs) |
| virtual | ~DtReaderWriter () |
| destructor More... | |
| virtual void | putSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename()) |
| Top level call to write itself to file. More... | |
| virtual void | postPutSelf () |
| Called after either version of put self (file or environment). Default is no-op. More... | |
| virtual void | prePutSelf () |
| Called before either version of put self (file or environment). Default is no-op. More... | |
| virtual void | getSelf (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference()) |
| Top level to read itself from an input stream. More... | |
| virtual void | postGetSelf () |
| Called after either version of getSelf (mtl or environment). Default is no-op. More... | |
| virtual void | preGetSelf () |
| Called before either version of get self (file or environment). Default is no-op. More... | |
| virtual void | writeSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename()) |
| Called from putSelf, calls myRegistry.putSelf which in turn calls putSelf on each reader/writer in the registry. More... | |
| virtual DtSymbolString | name () const |
| Accessor for name of this readable/writable object. More... | |
| virtual void | addAlias (const DtSymbolString &alias) |
| Add an alias as an alternative name for this object. More... | |
| virtual void | addAlias (const DtString &alias) |
| virtual bool | hasAlias (const DtSymbolString &alias) |
| virtual const aliasContainer & | aliases () const |
| virtual void | setReadonly (bool flag) |
| Set read-only flag. More... | |
| bool | isReadonly () const |
| virtual void | reset () |
| For those reader/writer items that support it, resets the reader/writer value to original state Default is no-op. More... | |
| virtual int | alignment () const |
| For those items that are sent over the network via HLA, this will give the network alignment. More... | |
| virtual bool | variableIsBound () const |
| virtual void | unbindVariable () |
| Sets the myVariableIsBound flag to false. More... | |
| virtual void | setName (const DtString &) |
| Set the name of the object. More... | |
| virtual const char * | readerWriterType () const |
| Used to supply a string type that this reader writer type is. More... | |
| virtual const char * | xmlType () const |
| virtual DtString | prettyPrint () const |
| Routine to return a human readable form of the reader/writer variable. More... | |
| std::string | debugText () const |
| virtual void | bindVariables (DtVariableBindingsList variableBindings) |
| Runs a variable binding pass on this reader writer and any of its children. More... | |
| virtual std::list < DtVariableNameType > | unboundVariables () const |
| bool | invalid () const |
| virtual bool | hasChild (const DtReaderWriter *p) const |
| Returns true if this variable has a child p in it's chain. More... | |
| virtual bool | hasVariableReference () const |
| Returns true if this item or any item in the registry (recursive) is a variable reference. More... | |
| virtual void | bindLocalVariables (const DtVariableBindingsList &variableBindings) |
| Checks to see if this RW object is a variable reference that can be bound using the provided bindings. More... | |
| virtual void | recordUpdateTime () const |
| Can be implemented in subclasses to stamp the time when updated. More... | |
| virtual bool | wasUpdatedSince (DtTime t) const |
| Can be implemented in subclasses to return true if an update occurred after the specified time. More... | |
| virtual bool | changedSinceLastChecked () |
| Returns true if this objects value has changed since the last time this function was called. More... | |
| virtual bool | peekChangedSinceLastChecked () const |
| Returns the value that changedSinceLastChecked would return but does not reset the internal flag. More... | |
| virtual void | setValueSpecified (bool specified, bool recurse=false) |
| The specified flags are used for optional values. More... | |
| virtual bool | valueSpecified () const |
| virtual bool | isVariableReference () const |
| Specifies whether or not this reader writer is really a variable that is specified elsewhere. More... | |
| virtual void | setIsVariableReference (bool value) |
| virtual void | clearAllVariableReferenceFlags () |
| Clears out all variable reference flags from all readerwriter items in registry recursively. More... | |
| virtual DtSymbolString | variableName () const |
| The variable name, if this object is a variable reference. More... | |
| virtual void | setVariableName (const DtSymbolString variableName) |
| virtual const DtReaderWriter * | defaultRWValue () const |
| The default value to use if the reader/writer object is a variable and that variable is not specified. More... | |
| virtual DtReaderWriter * | defaultRWValue () |
| virtual void | setDefaultRWValue (DtReaderWriter *) |
| Previous default value, if exists, will be removed and replaced with a clone of the supplied variable. More... | |
| virtual bool | checkAndSetDefaultRWValue (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference()) |
| Give the stream, if the stream contains a default value then set it here. More... | |
| const DtReaderWriterRegistry & | registry () const |
| Collection of child DtReaderWriter nodes owned by this object. More... | |
| DtReaderWriterRegistry & | registry () |
| virtual DtPropertyInterface * | property () |
| virtual const DtPropertyInterface * | property () const |
| virtual DtString | toXml () const |
| virtual DtRwVariableBindings * | generateVariableBindings () const |
| Iterates over the registry (recursively) and returns a variable bindings object that contains all the variables that are contained in this read/writer class. More... | |
| virtual bool | toXml (const DtFilename &) const |
| Writes contents of xml result to the given filename. More... | |
| virtual bool | fromXml (const DtString &) |
| Restores object from given xml string. Returns true if valid. More... | |
| virtual bool | fromXmlFile (const DtFilename &) |
| Restores object from given xml file. More... | |
| virtual void | putSelf (DtEnvironmentSP, DtEnvValueSP parent) const |
| virtual void | putData (DtEnvironmentSP, DtEnvValueSP value) const |
| Override to add attributes of actual data. More... | |
| virtual void | putVariableReference (DtEnvironmentSP, DtEnvValueSP value) const |
| Called when the item is a variable reference. More... | |
| virtual void | getSelf (const DtEnvironmentSP, const DtEnvValueSP root, const SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &bindings=DtVariableBindingsList()) |
| virtual void | getData (const DtEnvironmentSP, const DtEnvValueSP, const SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &bindings=DtVariableBindingsList()) |
| Gets data from the environment value. More... | |
| virtual void | unrecognizedItem (const DtEnvironmentSP env, const DtEnvValueSP root, const SearchPaths &searchPaths, const DtVariableBindingsList &varBindings) |
| Called when the xml reader tries to parse an unknown reader/writer item. Default is a no-op. More... | |
| virtual void | getVariableReference (DtEnvironmentSP, DtEnvValueSP value) |
| Called when the item is a variable reference. More... | |
Static Public Member Functions | |
| static DtSimComponent * | creator (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) |
| static void | orbitTaskCallback (DtSimMessage *msg, void *usr) |
| Calls processOrbitTask. More... | |
Static Public Member Functions inherited from DtFixedWingPilotController | |
| static DtSimComponent * | creator (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) |
Static Public Member Functions inherited from DtTaskControllerComponent | |
| static void | deprecatedTaskProcessorCallbackAdapter (DtSimMessage *msg, void *usr, DtSimTaskStatePtr taskState) |
| Task processor callback function that acts as an adapter for the deprecated forms of addTaskProcessorCallback and removeTaskProcessorCallback (the deprecated form is is version that. More... | |
Static Public Member Functions inherited from DtSimComponent | |
| static DtSimComponent * | MarkThreadSafe (DtSimComponent *) |
| Marks an instance of a component as being thread safe. More... | |
| static DtSimComponentFactory * | factory () |
| A DtSimComponentFactory is allocated by the DtSimCreator, and this pointer is set. More... | |
| static void | setFactory (DtSimComponentFactory *factory) |
| static DtSimComponent * | createComponent (const DtString &name, const DtString &type, DtVrfObject *owner, DtSimManager *simManager, DtComponentSystem *parentSystem, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) |
| Creates a DtSimComponent using the factory, then initializes it via the MTL stream. More... | |
| static void | addSimComponentCreatorFcn (const DtString &type, DtSimComponentCreatorFcn fcn) |
| Adds a DtSimComponent creation function to the DtSimComponentFactory, using the given type as the key. More... | |
Static Public Member Functions inherited from DtReaderWriter | |
| static void | putIndent (std::string &fp, int indentLevel) |
| static const DtVariableBindingsList & | nullVariableReference () |
| static void | setPostGetSelfCallback (DtGetSelfCallbackFcn fcn, void *usrData) |
| static void | setPrePutSelfCallback (DtPutSelfCallbackFcn fcn, void *usrData) |
| static void | setPutIndent (bool) |
| static bool | putIndent () |
| static const char * | theXmlType () |
| The type that is used when archiving to an XML stream. More... | |
| static const DtFilename & | appPath () |
| Gets the current working directory. More... | |
| static void | setFactoryCreatorFunction (DtReaderWriterFactoryCreatorFcn fcn) |
| Sets the function to create the DtReaderWriterFactory. More... | |
| static void | createReaderWriterFactory () |
| static void | cleanupFactory () |
| static DtReaderWriterFactory * | factory () |
| static void | setOutputStream (DtOutputStream *stream) |
| static DtOutputStream & | outputStream () |
| static DtReaderWriter * | createFromXmlFile (const DtFilename &, bool createAsProperty=false) |
| Given a filename, returns a newly created reader/writer object from the object found within. More... | |
| static DtReaderWriter * | createFromXml (const DtString &, bool createAsProperty=false) |
| Given a xml string, returns a newly created reader/writer object from the object found within. More... | |
| static DtReaderWriter * | createFromEnvironment (DtEnvironmentSP, bool createAsProperty=false) |
| Given a xml environment, returns a newly created reader/writer object from the object found within. More... | |
| static DtString | getAttribute (DtEnvironmentSP env, const DtString &name, DtEnvValueSP root) |
| Gets the named attribute from a DtEnvValueSP. More... | |
Static Public Member Functions inherited from DtObjectDebugger< DtSimComponent > | |
| static DtObjectCounter::CounterType | ObjectCount () |
| static const DtObjectContainer * | ObjectContainer () |
Protected Member Functions | |
| virtual void | registerTaskMsgCallbacks () |
| Overridden to register interest in orbit tasks. More... | |
Protected Member Functions inherited from DtFixedWingPilotController | |
| virtual bool | createPorts () |
| Overridden to create the fixed wing ports. More... | |
| virtual bool | createPortGroups () |
| Overridden to create myFixedWingControlPortGroup. More... | |
| 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. More... | |
| virtual bool | decideToGiveUpTask () const |
| If the entity is attached and the target of the current task is not, give up on the task. More... | |
| virtual void | updateCurrentState () |
| Get the values of the current state at this sim time, integrating over the past dt. More... | |
| virtual void | processEstimatedTotCalculation () |
| calculate estimated tot More... | |
| virtual double | calculateCollisionLookAhead (const double climbRate, const double speed, const double desiredAltitude) |
| Compute a limit for the terrain collision look-ahead distance. More... | |
| virtual void | updateTaskVisualizations () |
| update visualizations More... | |
| DtFixedWingPilotController () | |
| default constructor; not implemented More... | |
| DtFixedWingPilotController (const DtFixedWingPilotController &orig) | |
| copy constructor; not implemented More... | |
| const DtFixedWingPilotController & | operator= (const DtFixedWingPilotController &orig) |
| assignment operator; not implemented More... | |
Protected Member Functions inherited from DtSingleTaskControllerComponent | |
| virtual void | clearPendingSubtasks () |
| Iterates over collection of all pending subtasks for this controller, and calls clearSubtask() for each subtask type. More... | |
| virtual void | clearSubtasksByType (const DtSimTaskMessageType &taskType) |
| Clear all subtasks of a given type. More... | |
| virtual void | cleanupInactiveSubtaskStatus () |
| Clears out subtask status entries that are either completed or canceled which were started by this controller. More... | |
Protected Member Functions inherited from DtTaskControllerComponent | |
| virtual void | suspendSubtasksOfTask (int taskId, DtSuspendedTaskInfo *suspendInfo) |
| Suspends all running subtasks of taskId, and puts the suspend info for each of them as subtasks into the provided suspendInfo. More... | |
| virtual void | suspendSubtaskOfTask (int taskId, int subtaskId, DtSuspendedTaskInfo *suspendInfo) |
| Suspends a single running subtasks of taskId, and puts the suspend info into the provided suspendInfo. More... | |
| virtual DtSimTaskMessageType | remapScriptId (const DtSimTaskMessageType &) const |
| In case this is aliased, return the actual script id. More... | |
Protected Member Functions inherited from DtControllerComponent | |
| DtControllerComponent () | |
| default constructor More... | |
| DtControllerComponent (const DtControllerComponent &orig) | |
| copy constructor More... | |
| const DtControllerComponent & | operator= (const DtControllerComponent &orig) |
| assignment operator More... | |
| virtual void | onRestore () |
| Override to iterate over the descriptor to see if there are any targetting control tables. More... | |
| virtual void | initializeTargetingControlTableFromDescriptor (const DtReaderWriter *) |
Protected Member Functions inherited from DtSimComponent | |
| virtual double | computeCurrentTime () |
| Compute current time and myDT. More... | |
| bool | testInvariant () const |
| DtVrfProcessStateRepository * | createComponentPsr (const DtString &defaultPsrType, const DtString &defaultPsrName, bool useDescriptorParams=true) |
| Creates a PSR for this component and registers it with the PSR manager. More... | |
| virtual void | destroyTaskVisualizations () |
| Destroys all task visualizations for this component. More... | |
| virtual void | destroyTaskVisualization (const DtString &name) |
| Destroys an existing task visualization. More... | |
| virtual DtPointTaskVisualizationPtr | pointTaskVisualization (const DtString &name) |
| Finds an existing or creates a new point task visualization with the given name. More... | |
| virtual DtLineTaskVisualizationPtr | lineTaskVisualization (const DtString &name) |
| Finds an existing or creates a new line task visualization with the given name. More... | |
| virtual DtAreaTaskVisualizationPtr | areaTaskVisualization (const DtString &name) |
| Finds an existing or creates a new area task visualization with the given name. More... | |
| virtual DtTextTaskVisualizationPtr | textTaskVisualization (const DtString &name) |
| Finds an existing or creates a new text task visualization with the given name. More... | |
| double | calculateNextTaskVisTickTime () const |
| Determines the next time the task visualizations should be ticked. More... | |
Protected Member Functions inherited from DtReaderWriter | |
| virtual void | bindToRwAsVariable (const DtReaderWriter *rw) |
| Copies values from the specified DtReaderWriter. More... | |
Protected Member Functions inherited from DtObjectDebugger< DtSimComponent > | |
| DtObjectDebugger () | |
| DtObjectDebugger (const DtObjectDebugger &) | |
| ~DtObjectDebugger () | |
Private Member Functions | |
| DtFixedWingDefaultController () | |
| default constructor - should not be called. More... | |
| DtFixedWingDefaultController (const DtFixedWingDefaultController &orig) | |
| Copy constructor and assignment operator not implemented. More... | |
| DtFixedWingDefaultController & | operator= (const DtFixedWingDefaultController &orig) |
Additional Inherited Members | |
Public Types inherited from DtReaderWriter | |
| typedef std::vector < DtSymbolString > | aliasContainer |
| typedef std::vector < DtSymbolString >::iterator | aliasIter |
| typedef std::vector < DtSymbolString > ::const_iterator | aliasConstIter |
| typedef std::vector< DtFilename > | SearchPaths |
| typedef std::pair < DtSymbolString, DtString > | DtVariableNameType |
| typedef DtReaderWriterFactory *(* | DtReaderWriterFactoryCreatorFcn )() |
Protected Types inherited from DtTaskControllerComponent | |
| typedef std::pair < DtTaskMessageCallbackFcn, void * > | DtTaskCallbackMapPair |
| This map stores callbacks that have been registered to processes various tasks. More... | |
| typedef std::map < DtSimTaskMessageType, DtTaskCallbackMapPair > | DtTaskCallbackMap |
Protected Types inherited from DtSimComponent | |
| typedef std::map< DtString, DtInputPort * > | DtInputPortMap |
| typedef std::map< DtString, DtOutputPort * > | DtOutputPortMap |
| typedef std::map< DtString, DtInputPortGroup * > | DtInputPortGroupMap |
| typedef std::map< DtString, DtOutputPortGroup * > | DtOutputPortGroupMap |
Protected Attributes inherited from DtFixedWingPilotController | |
| DtFixedWingEntityStateRepository * | myFixedWingEntityState |
| DtFixedWingFlightPSR * | myProcessState |
| Pointer to a process state repository used to store state data associated with this component. More... | |
| const double | DtEstimatedTotCalcInterval = 5.0 |
| Interval for estimated tot calculations. More... | |
| bool | myEstimatedTotCalcEnabled |
| enabled flag for the tot calculations More... | |
| double | myEstimatedTotValue |
| the tot value More... | |
| double | myEstimatedTotLastCalcTime |
| used for tot calculation intervals More... | |
| DtVector | myEstimatedTotTextPos |
| tot text position More... | |
| DtOutputPortGroup * | myFixedWingControlPortGroup |
| Output Port Group Name: fixed-wing-control Output Port Group Description: More... | |
| DtConstrainedAnalogOutputPort * | myThrottlePort |
| Output Port Name: throttle Output Port Description: Output Port Range: 0. More... | |
| DtConstrainedDualAxisAnalogOutputPort * | myStickPort |
| Output Port Name: stick Output Port Description: Output Port Range: X: -1. More... | |
| DtConstrainedAnalogOutputPort * | myPedalPort |
| Output Port Name: pedal Output Port Description: Output Port Range: -1. More... | |
| DtConstrainedAnalogOutputPort * | myBrakePort |
| Output Port Name: brake Output Port Description: Output Port Range: 0. More... | |
| DtBooleanOutputPort * | myFlapsDeployedPort |
| Output Port Name: flaps Output Port Description: Output Port Range: Output Port Default Value: true Output Group Parent: fixed-wing-control. More... | |
| DtVector | myCurrentLocalPosition |
| State variables updated for the current time. More... | |
| DtVector | myCurrentLocalVelocity |
| double | myCurrentSpeed |
| DtDcm | myCurrentOrientationMatrix |
| double | myCurrentHeading |
| double | myCurrentTopoPitch |
| double | myCurrentTopoRoll |
| DtDcm | myLocalToTopoDcm |
Protected Attributes inherited from DtTaskControllerComponent | |
| DtTaskCallbackMap | myTaskCallbackMap |
| std::list < DtTaskProcessorCallbackInfo * > | myTaskProcessorCallbackInfoList |
| This list stores any DtTaskProcessorCallbackInfo allocated locally so that they can be deleted when the component is deleted. More... | |
Protected Attributes inherited from DtControllerComponent | |
| DtSimRadio * | myRadio |
| Controller components can send messages. More... | |
Protected Attributes inherited from DtSimComponent | |
| DtVrfObject * | myEntity |
| DtVrfObjectStateRepository * | myLocalStateRepository |
| DtSimManager * | mySimManager |
| DtComponentSystem * | mySystem |
| Pointer to the DtComponentSystem that this component belongs. More... | |
| DtListItem * | myListItem |
| DtInputPortMap | myInputPortList |
| DtOutputPortMap | myOutputPortList |
| DtInputPortGroupMap | myInputPortGroupList |
| DtOutputPortGroupMap | myOutputPortGroupList |
| int | myPriority |
| double | myMinTickPeriod |
| double | myMinTickPeriodVariance |
| double | myNextTickTime |
| double | myLastTickSimTime |
| double | myDT |
| bool | myIsEnabled |
| Indicates whether this component should be enabled for ticking or not. More... | |
| bool | myFirstTick |
| Initialized to true in the constructor, set to false by the first call to postTick. More... | |
| bool | myIsThreadSafe |
| Whether this component can be use the DtCriticalSection versions of the tick functions and be ticked in parallel with other components Defaults to false. More... | |
| const DtComponentDescriptor * | myComponentDescriptor |
| std::list < DtVrfProcessStateRepository * > | myComponentPsrs |
| List of PSRs made using createComponentPsr() that will be deleted by this component when it is destroyed. More... | |
| bool | myTickEveryFrame |
| Flag indicating that tickPeriod is set to 0, and the component will tick every frame. More... | |
| DtTaskVisualizationMap | myTaskVisualizations |
| The visualization objects to be drawn for this component. More... | |
| double | myNextTaskVisTickTime |
| The next tick time for updating the task visualizations. More... | |
| DtSymbolString | myFullComponentName |
Protected Attributes inherited from DtReaderWriter | |
| const DtSymbolString | myName |
| DtReaderWriterRegistry | myRegistry |
| DtReaderWriterRegistry * | myParentRegistry |
| bool | myValueSpecified |
| bool | myReadOnlyFlag |
| bool | myIsVariableReference |
| DtSymbolString | myVariableName |
| bool | myVariableIsBound |
| DtReaderWriter * | myDefaultValue |
| aliasContainer | myAliases |
| Container for the aliases which represent alternative names for the object. More... | |
| bool | myInvalid |
| Set to true if there is a problem reading this item. More... | |
| bool | myChangedFlag |
| Set to true when value changes Set to false when value checked with changedSinceLastChecked. More... | |
Static Protected Attributes inherited from DtSimComponent | |
| static DtSimComponentFactory * | myFactory |
Static Protected Attributes inherited from DtReaderWriter | |
| static DtString | theUnspecifiedValue |
| static DtGetSelfCallbackInfo | thePostGetSelfCallback |
| static DtPutSelfCallbackInfo | thePrePutSelfCallback |
| static const DtVariableBindingsList | theEmptyVariableBindingsList |
| static bool | theCreatorFcnSet |
| static DtReaderWriterFactory * | theFactory |
| static DtReaderWriterFactoryCreatorFcn | theFactoryCreatorFcn |
| static bool | thePutIndent |
| static DtOutputStream * | theOutputStream |
DtFixedWingDefaultController is a controller used to direct a fixed wing entity to loiter when it is in the air and not otherwise tasked.
It can also respond to orbit tasks.
End User Description: This controller is normally placed after all other controllers on the controller component list of fixed-wing entities. If no other controller has taken control of the fixed wing port group by the time this controller is ticked, it flies the entity in a circle. This controller will also respond to orbit tasks, which allows the user to specify the location, radius and direction of the orbit. This component is specified with a DtFixedWingDefaultControllerDescriptor on the controller list.
Uses Descriptor Type: DtFixedWingDefaultControllerDescriptor
| DtFixedWingDefaultController::DtFixedWingDefaultController | ( | const DtString & | name, |
| DtVrfObject * | owner, | ||
| DtSimManager * | simManager, | ||
| DtComponentDescriptor * | desc = 0, |
||
| DtReaderWriterRegistry * | parentRegistry = 0 |
||
| ) |
| 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 |
destructor
|
private |
default constructor - should not be called.
|
private |
Copy constructor and assignment operator not implemented.
|
virtual |
Initialization - Calls base init() and creates and initializes our waypoint.
Reimplemented from DtFixedWingPilotController.
|
virtual |
Calculate new control values.
Reimplemented from DtFixedWingPilotController.
|
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. Warning: this function should always return the same pointer and it should be valid forever. This means the data should be static.
Reimplemented from DtFixedWingPilotController.
|
virtual |
Sets/gets radius of circle in process state repository (myProcessState, a DtFixedWingFlightPSR).
|
virtual |
|
virtual |
Sets/gets clockwise flag in process state repository (myProcessState, a DtFixedWingFlightPSR).
|
virtual |
|
static |
| 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 |
OBSOLETE - returns 0.
Set/get location of loiter circle from process state repository setLoiterCenter() and loiterCenter().
|
virtual |
Override to initialize loiter clockwise flag and loiter radius parameters in process state repository with values from component descriptor.
Reimplemented from DtFixedWingPilotController.
|
static |
Calls processOrbitTask.
|
virtual |
If the plane is not on the ground, this function will pull out the location, radius and direction of the orbit task and copy them into the process state repository.
|
protectedvirtual |
Overridden to register interest in orbit tasks.
Reimplemented from DtTaskControllerComponent.
|
private |