VR-Forces 4.1 Class Documentation
List of all members | Public Member Functions | Static Public Member Functions | Protected Attributes | Private Types
DtAggregateMoveAlongPSR Class Reference

file aggregateMoveAlongPSR.h More...

Inheritance diagram for DtAggregateMoveAlongPSR:
Inheritance graph
[legend]

Public Member Functions

 DtAggregateMoveAlongPSR (DtVrfObject *vrfObject, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
 constructor
 DtAggregateMoveAlongPSR (const DtAggregateMoveAlongPSR &orig, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
 copy constructor
virtual ~DtAggregateMoveAlongPSR ()
 destructor
DtAggregateMoveAlongPSRoperator= (const DtAggregateMoveAlongPSR &orig)
 assignment operator
virtual
DtVrfProcessStateRepository
clone (const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const
 returns a newly created copy of this object
virtual DtString type () const
 String type of this process state repository, defined in procSRTypes.h.
virtual void setTimeToNextMaintainFormationTick (DtTime simTime)
 Simulation time of next maintain formation tick (in which we monitor the current state of the formation and issue slow down/speed up requests as needed.
virtual DtTime timeToNextMaintainFormationTick () const
virtual DtString lookupRouteName (int promotionId) const
 Lookup route name associated with given formation position id.
virtual DtString lookupRouteName (const DtString &objectName) const
 Lookup route name associated with given subordinate name.
virtual void clearPromotionIdRouteNameList ()
 Empty map of promotion Ids to route names.
virtual void addPromotionIdRouteNameEntry (int promotionId, const DtString &routeName)
 Add an entry to the promotion Id/route name map.
virtual const
DtPromotionIdObjectNameMap
promotionIdRouteNameList () const
virtual void addTaskedSubordinateNamePromotionIdEntry (const DtString &objectName, int promotionId)
 Add entry to the subordinate name/promotion Id map.
virtual void removeTaskedSubordinateName (const DtString &objectName)
 Remove subordinate with given object name.
virtual bool isATaskedSubordinate (const DtString &objectName)
 Returns true is if the given object name is in the subordinate name/promotion Id map.
virtual void removeRoute (const DtString &routeName)
 Remove route with given object name.
virtual void clearTaskSubordinateNames ()
 Remove all tasked subordinate names.
virtual bool taskedSubordinateNamesEmpty () const
 Check if there are any tasked subordinates.
virtual const
DtObjectNamePromotionIdMap
taskedSubordinateNames () const
 Map of subordinate names/promotion Ids.
virtual void putSelf (FILE *fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtReaderWriter::appPath())
 Override to put contents of myPromotionIndexRouteNameMap into myPromotionIdRouteNameList, to put it in a writeable form.
virtual void getSelf (DtlObjPtr args, const DtFilename &searchPath, const DtVariableBindingsList &variableBindings)
 Override to put contents of myPromotionIdRouteNameList into myPromotionIndexRouteNameMap.
virtual void setRouteName (const DtString &routeName)
 Name of the route the aggregate (as a whole) is moving along.
virtual const DtStringrouteName () const
 Name of the route the aggregate (as a whole) is moving along.
virtual void setMovingToRoute (bool trueOrFalse)
 Flag indicating whether we're in the 'moving to route state'.
virtual bool movingToRoute () const
 Flag indicating whether we're in the 'moving to route state'.
virtual void setRouteIsDiscovered (bool value)
 Flag indicating whether the current task has been sucessfully initialized.
virtual bool routeIsDiscovered () const
 Flag indicating whether the current task has been sucessfully initialized.
- Public Member Functions inherited from DtVrfProcessStateRepository
 DtVrfProcessStateRepository (DtVrfObject *vrfObject, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
 DtVrfProcessStateRepository (const DtVrfProcessStateRepository &orig, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
const DtVrfProcessStateRepositoryoperator= (const DtVrfProcessStateRepository &orig)
virtual ~DtVrfProcessStateRepository ()
virtual bool init ()
 Used for virtual construction. This base method simply returns true.
virtual bool loadedFromMTL () const
- Public Member Functions inherited from DtReaderWriter
 DtReaderWriter ()
 default constructor
 DtReaderWriter (const DtString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false)
 real constructor Setting the readonly flag prevents object from writing itself to the stream.
 DtReaderWriter (const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false)
 DtReaderWriter (const DtString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 copy constructor
 DtReaderWriter (const DtSymbolString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL)
const DtReaderWriteroperator= (const DtReaderWriter &orig)
 assignment operator
virtual ~DtReaderWriter ()
 destructor
virtual void writeSelf (FILE *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.
virtual DtSymbolString name () const
 Accessor for name of this readable/writable object.
virtual void addAlias (const DtSymbolString &alias)
 Add an alias as an alternative name for this object.
virtual bool hasAlias (const DtSymbolString &alias)
virtual const aliasContaineraliases () const
virtual void setReadonly (bool flag)
 Set read-only flag.
virtual bool isReadonly () const
virtual bool variableIsBound () const
virtual void unbindVariable ()
 Sets the myVariableIsBound flag to false.
virtual void setName (const DtString &)
 Set the name of the object.
virtual const char * readerWriterType () const
 Used to supply a string type that this reader writer type is.
virtual DtString prettyPrint () const
 Routine to return a human readable form of the reader/writer variable.
virtual void bindVariables (DtVariableBindingsList variableBindings)
 Runs a variable binding pass on this reader writer and any of its children.
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.
virtual void setValueSpecified (bool specified, bool recurse=false)
 The specified flags are used for optional values.
virtual bool valueSpecified () const
 The specified flags are used for optional values.
virtual bool isVariableReference () const
 Specifies whether or not this reader writer is really a variable that is specified elsewhere.
virtual void setIsVariableReference (bool value)
virtual DtSymbolString variableName () const
 The variable name, if this object is a variable reference.
virtual void setVariableName (const DtSymbolString variableName)
 The variable name, if this object is a variable reference.
const DtReaderWriterRegistryregistry () const
 Collection of child DtReaderWriter nodes owned by this object.
DtReaderWriterRegistryregistry ()
 Collection of child DtReaderWriter nodes owned by this object.

Static Public Member Functions

static
DtVrfProcessStateRepository
creator (const DtString &rwName, DtVrfObject *vrfObject, DtReaderWriterRegistry *parentRegistry)
 Returns a newly created instance of this class.
- Static Public Member Functions inherited from DtVrfProcessStateRepository
static
DtVrfProcessStateRepositoryFactory
factory ()
 a DtVrfProcessStateRepositoryFactory is allocated by the DtSimCreator, and this pointer is set.
static void setFactory (DtVrfProcessStateRepositoryFactory *factory)
static void addVrfProcessStateRepositoryCreatorFcn (const DtString &type, DtVrfProcessStateRepositoryCreatorFcn fcn)
static
DtVrfProcessStateRepository
createRepository (const DtString &name, const DtString &type, DtVrfObject *vrfObject, DtReaderWriterRegistry *parentRegistry=0)
 Creates a new state repository object, using the factory.
- Static Public Member Functions inherited from DtReaderWriter
static void putIndent (FILE *fp, int indentLevel)
static const
DtVariableBindingsList
nullVariableReference ()
static void setPostGetSelfCallback (DtGetSelfCallbackFcn fcn, void *usrData)
static void setPrePutSelfCallback (DtPutSelfCallbackFcn fcn, void *usrData)
static const DtFilename & appPath ()
 Gets the current working directory.

Protected Attributes

DtPromotionIdObjectNameMap myPromotionIndexRouteNameMap
 Map of promotion Ids (formation positions) to route names.
DtObjectNamePromotionIdMap myCurrentlyTaskedSubordinateNames
 Map of currently tasked subordinate object names to promotion Id.
DtRwString myRouteName
 Name of the route the aggregate is currently moving along.
DtPromotionIdObjectNameList myPromotionIdRouteNameList
 Readable writeable list of promotion Id/route name/.
DtPromotionIdObjectNameList myPromotionIdEntityNameList
 Readable writeable list of promotion Id/entity name/.
DtRwReal myTimeToNextMaintainFormationTick
 Time in seconds until next tick in which to perform formation monitoring.
DtRwBoolean myMovingToRoute
 Flag indicating whether we're in the moving to route phase of the task.
DtRwBoolean myRouteIsDiscovered
 Flag indicating whether has been discovered or not.
- Protected Attributes inherited from DtVrfProcessStateRepository
DtVrfObjectmyVrfObject
bool myLoadedFromMTL
- Protected Attributes inherited from DtReaderWriter
const DtSymbolString myName
DtReaderWriterRegistry myRegistry
bool myValueSpecified
bool myReadOnlyFlag
bool myIsVariableReference
DtSymbolString myVariableName
bool myVariableIsBound
aliasContainer myAliases
 Container for the aliases which represent alternative names for the object.
bool myInvalid
 Set to true if there is a problem reading this item.

Private Types

typedef std::map< DtString, int > DtObjectNamePromotionIdMap
typedef std::map< int, DtStringDtPromotionIdObjectNameMap

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::pair
< DtSymbolString, DtString
DtVariableNameType
- Protected Member Functions inherited from DtVrfProcessStateRepository
 DtVrfProcessStateRepository ()
- Static Protected Attributes inherited from DtVrfProcessStateRepository
static
DtVrfProcessStateRepositoryFactory
theFactory

Detailed Description

file aggregateMoveAlongPSR.h

DtAggregateMoveAlongPSR; process state repository used by DtAggregateMoveAlongController DtAggregateMoveAlongPSR is a process state repository for the DtAggregateMoveAlongController. It stores the list of the names of subordinates and the corresponding routes they have been tasked to follow by the aggregate. Maintains the association between promotion Ids (position in formation), subordinate names, and route names. Also maintains the time to next tick for monitoring formation.

Member Typedef Documentation

Constructor & Destructor Documentation

DtAggregateMoveAlongPSR::DtAggregateMoveAlongPSR ( DtVrfObject vrfObject,
const DtString rwName = DtString::nullString(),
DtReaderWriterRegistry parentRegistry = 0 
)

constructor

DtAggregateMoveAlongPSR::DtAggregateMoveAlongPSR ( const DtAggregateMoveAlongPSR orig,
const DtString rwName = DtString::nullString(),
DtReaderWriterRegistry parentRegistry = 0 
)

copy constructor

virtual DtAggregateMoveAlongPSR::~DtAggregateMoveAlongPSR ( )
virtual

destructor

Member Function Documentation

DtAggregateMoveAlongPSR& DtAggregateMoveAlongPSR::operator= ( const DtAggregateMoveAlongPSR orig)

assignment operator

virtual DtVrfProcessStateRepository* DtAggregateMoveAlongPSR::clone ( const DtString rwName = DtString::nullString(),
DtReaderWriterRegistry parentRegistry = 0 
) const
virtual

returns a newly created copy of this object

Implements DtVrfProcessStateRepository.

virtual DtString DtAggregateMoveAlongPSR::type ( ) const
virtual

String type of this process state repository, defined in procSRTypes.h.

Returns
"vrf-aggregate-move-along-process-state-repository".

Implements DtVrfProcessStateRepository.

virtual void DtAggregateMoveAlongPSR::setRouteName ( const DtString routeName)
virtual

Name of the route the aggregate (as a whole) is moving along.

virtual const DtString& DtAggregateMoveAlongPSR::routeName ( ) const
virtual

Name of the route the aggregate (as a whole) is moving along.

virtual void DtAggregateMoveAlongPSR::setTimeToNextMaintainFormationTick ( DtTime  simTime)
virtual

Simulation time of next maintain formation tick (in which we monitor the current state of the formation and issue slow down/speed up requests as needed.

{@

virtual DtTime DtAggregateMoveAlongPSR::timeToNextMaintainFormationTick ( ) const
virtual
virtual DtString DtAggregateMoveAlongPSR::lookupRouteName ( int  promotionId) const
virtual

Lookup route name associated with given formation position id.

virtual DtString DtAggregateMoveAlongPSR::lookupRouteName ( const DtString objectName) const
virtual

Lookup route name associated with given subordinate name.

virtual void DtAggregateMoveAlongPSR::clearPromotionIdRouteNameList ( )
virtual

Empty map of promotion Ids to route names.

virtual void DtAggregateMoveAlongPSR::addPromotionIdRouteNameEntry ( int  promotionId,
const DtString routeName 
)
virtual

Add an entry to the promotion Id/route name map.

virtual const DtPromotionIdObjectNameMap& DtAggregateMoveAlongPSR::promotionIdRouteNameList ( ) const
virtual
Returns
Promotion Id/route name map
virtual void DtAggregateMoveAlongPSR::addTaskedSubordinateNamePromotionIdEntry ( const DtString objectName,
int  promotionId 
)
virtual

Add entry to the subordinate name/promotion Id map.

virtual void DtAggregateMoveAlongPSR::removeTaskedSubordinateName ( const DtString objectName)
virtual

Remove subordinate with given object name.

virtual bool DtAggregateMoveAlongPSR::isATaskedSubordinate ( const DtString objectName)
virtual

Returns true is if the given object name is in the subordinate name/promotion Id map.

virtual void DtAggregateMoveAlongPSR::removeRoute ( const DtString routeName)
virtual

Remove route with given object name.

virtual void DtAggregateMoveAlongPSR::clearTaskSubordinateNames ( )
virtual

Remove all tasked subordinate names.

virtual bool DtAggregateMoveAlongPSR::taskedSubordinateNamesEmpty ( ) const
virtual

Check if there are any tasked subordinates.

virtual void DtAggregateMoveAlongPSR::setMovingToRoute ( bool  trueOrFalse)
virtual

Flag indicating whether we're in the 'moving to route state'.

virtual bool DtAggregateMoveAlongPSR::movingToRoute ( ) const
virtual

Flag indicating whether we're in the 'moving to route state'.

virtual const DtObjectNamePromotionIdMap& DtAggregateMoveAlongPSR::taskedSubordinateNames ( ) const
virtual

Map of subordinate names/promotion Ids.

virtual void DtAggregateMoveAlongPSR::setRouteIsDiscovered ( bool  value)
virtual

Flag indicating whether the current task has been sucessfully initialized.

virtual bool DtAggregateMoveAlongPSR::routeIsDiscovered ( ) const
virtual

Flag indicating whether the current task has been sucessfully initialized.

virtual void DtAggregateMoveAlongPSR::putSelf ( FILE *  fp,
int  indentLevel = 0,
bool  writeUnspecified = false,
const DtFilename &  path = DtReaderWriter::appPath() 
)
virtual

Override to put contents of myPromotionIndexRouteNameMap into myPromotionIdRouteNameList, to put it in a writeable form.

Reimplemented from DtReaderWriter.

virtual void DtAggregateMoveAlongPSR::getSelf ( DtlObjPtr  args,
const DtFilename &  searchPath,
const DtVariableBindingsList variableBindings 
)
virtual

Override to put contents of myPromotionIdRouteNameList into myPromotionIndexRouteNameMap.

Reimplemented from DtVrfProcessStateRepository.

static DtVrfProcessStateRepository* DtAggregateMoveAlongPSR::creator ( const DtString rwName,
DtVrfObject vrfObject,
DtReaderWriterRegistry parentRegistry 
)
static

Returns a newly created instance of this class.

Member Data Documentation

DtPromotionIdObjectNameMap DtAggregateMoveAlongPSR::myPromotionIndexRouteNameMap
protected

Map of promotion Ids (formation positions) to route names.

DtObjectNamePromotionIdMap DtAggregateMoveAlongPSR::myCurrentlyTaskedSubordinateNames
protected

Map of currently tasked subordinate object names to promotion Id.

DtRwString DtAggregateMoveAlongPSR::myRouteName
protected

Name of the route the aggregate is currently moving along.

DtPromotionIdObjectNameList DtAggregateMoveAlongPSR::myPromotionIdRouteNameList
protected

Readable writeable list of promotion Id/route name/.

Valid only immediately after getSelf() has been called. Used to populate the contents of myPromotionIndexRouteNameMap. (valid for the lifetime of this object).

DtPromotionIdObjectNameList DtAggregateMoveAlongPSR::myPromotionIdEntityNameList
protected

Readable writeable list of promotion Id/entity name/.

Valid only immediately after getSelf() has been called. Used to populate the contents of myCurrentlyTaskedSubordinateNames. (valid for the lifetime of this object).

DtRwReal DtAggregateMoveAlongPSR::myTimeToNextMaintainFormationTick
protected

Time in seconds until next tick in which to perform formation monitoring.

DtRwBoolean DtAggregateMoveAlongPSR::myMovingToRoute
protected

Flag indicating whether we're in the moving to route phase of the task.

DtRwBoolean DtAggregateMoveAlongPSR::myRouteIsDiscovered
protected

Flag indicating whether has been discovered or not.


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

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)