VR-Forces 4.0.4 Class Documentation
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
DtGroundOrbitController Class Reference

DtGroundOrbitController; models orbiting a given location for ground vehicles. More...

Inheritance diagram for DtGroundOrbitController:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 DtGroundOrbitController (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=NULL, DtReaderWriterRegistry *parentRegistry=NULL)
 (const DtString&,DtVrfObject*,DtSimManager*,
virtual ~DtGroundOrbitController ()
 destructor
virtual DtString type () const
 Returns a string identifies the class type of component.
virtual void processOrbitTask (DtSimMessage *msg)
virtual void tick ()
 Update control values.
virtual void registerTaskMsgCallbacks ()
 Overridden to register interest in orbit messages.

Static Public Member Functions

static void orbitTaskCallback (DtSimMessage *msg, void *usr)
 Instances of this component will register this callback with their own 'this' pointer as user data with the msg executive requesting notification of orbit tasks.
static DtSimComponentcreator (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0)
 (const DtString&,DtVrfObject*,DtSimManager*,

Protected Member Functions

void setActuatorsState (double currentHeading, double desiredHeading, double desiredSpeed, double desiredBreak, DtAutoTransmissionGearEnum desiredGear)
DtVector center () const
void setCenter (const DtVector &newCenter)
double radius () const
 The radius from which to orbit.
void setRadius (double newRadius)
 The radius from which to orbit.
bool clockwise () const
void setClockwise (bool yesOrNo)

Private Member Functions

 DtGroundOrbitController (const DtGroundOrbitController &original)
 not implemented
DtGroundOrbitControlleroperator= (const DtGroundOrbitController &original)

Private Attributes

double myOrbitRadiusSquared
 Cached calculation value!

Detailed Description

DtGroundOrbitController; models orbiting a given location for ground vehicles.

DtGroundOrbitController is a controller that models orbiting a given location, at a given radius, for ground vehicles.

End User Description: Moves the entity of which it is a part around a user-specified (or other controller specified) center point. The resulting behavior is that the entity "orbits" the desired location.

Uses Descriptor Type: DtComponentDescriptor


Constructor & Destructor Documentation

DtGroundOrbitController::DtGroundOrbitController ( const DtString name,
DtVrfObject owner,
DtSimManager simManager,
DtComponentDescriptor desc = NULL,
DtReaderWriterRegistry parentRegistry = NULL 
)

(const DtString&,DtVrfObject*,DtSimManager*,

Parameters:
nameReader writer name of this component.
ownerThe DtVrfObject that owns this component
simManagerThe simulation manager (provides access to terrain, message interface, simulation clock).
descThe component descriptor used to initialize this component.
parentRegistryPointer to the parent reader writer registry (the containing object that reads/writes this object).
(const DtString&,DtVrfObject*,DtSimManager*, DtComponentDescriptor*,DtReaderWriterRegistry* parentRegistry)

destructor

not implemented


Member Function Documentation

virtual DtString DtGroundOrbitController::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.

Returns:
DtGroundOrbitControllerType

Reimplemented from DtGroundAutoControllerComponent.

static void DtGroundOrbitController::orbitTaskCallback ( DtSimMessage msg,
void *  usr 
) [static]

Instances of this component will register this callback with their own 'this' pointer as user data with the msg executive requesting notification of orbit tasks.

virtual void DtGroundOrbitController::processOrbitTask ( DtSimMessage msg) [virtual]
virtual void DtGroundOrbitController::tick ( ) [virtual]

Update control values.

Reimplemented from DtSimComponent.

static DtSimComponent* DtGroundOrbitController::creator ( const DtString name,
DtVrfObject owner,
DtSimManager simManager,
DtComponentDescriptor desc = 0,
DtReaderWriterRegistry parentRegistry = 0 
) [static]

(const DtString&,DtVrfObject*,DtSimManager*,

Parameters:
nameReader writer name of this component.
ownerThe DtVrfObject that owns this component
simManagerThe simulation manager (provides access to terrain, message interface, simulation clock).
descThe component descriptor used to initialize this component.
parentRegistryPointer to the parent reader writer registry (the containing object that reads/writes this object).
(const DtString&,DtVrfObject*,DtSimManager*, DtComponentDescriptor*,DtReaderWriterRegistry* parentRegistry)

Returns:
New instance of this class.

Overridden to register interest in orbit messages.

Reimplemented from DtTaskControllerComponent.

Returns:
the center point of the orbit.
void DtGroundOrbitController::setCenter ( const DtVector newCenter) [protected]
Returns:
the center point of the orbit.
double DtGroundOrbitController::radius ( ) const [protected]

The radius from which to orbit.

This must be greater than 0.0!

void DtGroundOrbitController::setRadius ( double  newRadius) [protected]

The radius from which to orbit.

This must be greater than 0.0!

Returns:
the direction of movement around the orbit.
void DtGroundOrbitController::setClockwise ( bool  yesOrNo) [protected]
Returns:
the direction of movement around the orbit.
void DtGroundOrbitController::setActuatorsState ( double  currentHeading,
double  desiredHeading,
double  desiredSpeed,
double  desiredBreak,
DtAutoTransmissionGearEnum  desiredGear 
) [protected]
DtGroundOrbitController& DtGroundOrbitController::operator= ( const DtGroundOrbitController original) [private]

Member Data Documentation

Cached calculation value!


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

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)