VR-Forces 4.0.4 Class Documentation
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
DtObjectSensorPSR Class Reference
Inheritance diagram for DtObjectSensorPSR:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 DtObjectSensorPSR (DtVrfObject *vrfObject, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
 constructor
 DtObjectSensorPSR (const DtObjectSensorPSR &orig, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
 copy constructor
virtual ~DtObjectSensorPSR ()
 destructor
DtObjectSensorPSR & operator= (const DtObjectSensorPSR &orig)
 assignment operator - not implemented
virtual
DtVrfProcessStateRepository * 
clone (const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const
 returns a newly created copy of this object
virtual DtString type () const
 Returns the string type of the repository, as defined in procSRTypes.h.
virtual bool init ()
 Call after creation.
virtual DtSensorContactInfoList * contactInfoList ()
 The list of DtRwSensorContactInfo (or derivative) objects.
virtual const
DtSensorContactInfoList * 
contactInfoList () const
 The const list of DtRwSensorContactInfo (or derivative) objects.
virtual DtRwSensorContactInfo * lookupContactById (const DtEntityIdentifier &id) const
 Returns the contact info for the contact with the specified entity ID, or NULL if not found.
virtual void clearContactInfoList ()
 Empties the contact info list.
virtual DtRwSensorContactInfo * createSensorContactInfo () const
 Returns a new DtRwSensorContactInfo (or derivative) class by calling myContactInfoList->createSensorContactInfo().
virtual void putSelf (FILE *fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtReaderWriter::appPath())
 Override to call mapTargetIdsToTargetNames() before calling base class version to write ourselves to file.
virtual void getSelf (DtlObjPtr args, const DtFilename &searchPath, const DtVariableBindingsList &variableBindings)
 Override to set flag indicating we should map target names to target identifiers the next time lookupPreviousTarget() is called.

Static Public Member Functions

static
DtVrfProcessStateRepository * 
creator (const DtString &rwName, DtVrfObject *vrfObject, DtReaderWriterRegistry *parentRegistry)
 Returns a newly created instance of this class.

Protected Member Functions

virtual DtSensorContactInfoList * createSensorContactInfoList (const DtString &name)
 Returns a new DtSensorContactInfoList.
virtual void mapContactIdsToContactNames ()
 Looks up each object in myContactInfoList by the entity ID in the contact information and sets the name of the contact in the contact info to the name of the object found.
virtual void mapContactNamesToContactIds ()
 Looks up each object in myContactInfoList by name, and sets the entity ID in the contact information to the one found in the vrf object.

Protected Attributes

DtSensorContactInfoList * myContactInfoList
 Init() creates this item by using the createSensorContactInfoList() factory method.
bool myMutableMapContactNamesToContactIds
 Flag used to indicate that we should initialize contact names to DtEntityIdentifiers.

Constructor & Destructor Documentation

DtObjectSensorPSR::DtObjectSensorPSR ( DtVrfObject *  vrfObject,
const DtString &  rwName = DtString::nullString(),
DtReaderWriterRegistry *  parentRegistry = 0 
)

constructor

DtObjectSensorPSR::DtObjectSensorPSR ( const DtObjectSensorPSR &  orig,
const DtString &  rwName = DtString::nullString(),
DtReaderWriterRegistry *  parentRegistry = 0 
)

copy constructor

destructor


Member Function Documentation

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

assignment operator - not implemented

virtual DtVrfProcessStateRepository* DtObjectSensorPSR::clone ( const DtString &  rwName = DtString::nullString(),
DtReaderWriterRegistry *  parentRegistry = 0 
) const [virtual]

returns a newly created copy of this object

Implements DtVrfProcessStateRepository.

Reimplemented in DtRadarObjectSensorPSR, and DtRotaryWingFlightCommandControllerPSR.

virtual DtString DtObjectSensorPSR::type ( ) const [virtual]

Returns the string type of the repository, as defined in procSRTypes.h.

Implements DtVrfProcessStateRepository.

Reimplemented in DtRadarObjectSensorPSR, and DtRotaryWingFlightCommandControllerPSR.

virtual bool DtObjectSensorPSR::init ( ) [virtual]

Call after creation.

Sets myContactInfoList using createSensorContactInfoList().

Reimplemented from DtVrfProcessStateRepository.

The list of DtRwSensorContactInfo (or derivative) objects.

Will call mapContactNamesToIds() if the flag is set. For this reason, avoid holding a pointer to this list outside of this class.

virtual const DtSensorContactInfoList* DtObjectSensorPSR::contactInfoList ( ) const [virtual]

The const list of DtRwSensorContactInfo (or derivative) objects.

Will call mapContactNamesToIds() if the flag is set. (casting away constness to do so) For this reason, avoid holding a pointer to this list outside of this class.

virtual DtRwSensorContactInfo* DtObjectSensorPSR::lookupContactById ( const DtEntityIdentifier &  id) const [virtual]

Returns the contact info for the contact with the specified entity ID, or NULL if not found.

virtual void DtObjectSensorPSR::clearContactInfoList ( ) [virtual]

Empties the contact info list.

Returns a new DtRwSensorContactInfo (or derivative) class by calling myContactInfoList->createSensorContactInfo().

This returns the type being used in the contactInfoList. All items added to the contactInfoList should be created by calling this method. Returns NULL if myContactInfoList is not set.

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

Override to call mapTargetIdsToTargetNames() before calling base class version to write ourselves to file.

It fills out our writable list of target object names from the non-writable myPreviousTargets list of DtEntityIdentifiers. This way the identities of previously detected targets get preserved as part of a checkpoint save.

Reimplemented from DtReaderWriter.

virtual void DtObjectSensorPSR::getSelf ( DtlObjPtr  args,
const DtFilename &  searchPath,
const DtVariableBindingsList &  variableBindings 
) [virtual]

Override to set flag indicating we should map target names to target identifiers the next time lookupPreviousTarget() is called.

Reimplemented from DtVrfProcessStateRepository.

virtual DtSensorContactInfoList* DtObjectSensorPSR::createSensorContactInfoList ( const DtString &  name) [protected, virtual]

Returns a new DtSensorContactInfoList.

If you are adding custom data to the sensor contact info, create a new derivative of DtSensorContactInfoList, and override this method to create your new subclass here.

static DtVrfProcessStateRepository* DtObjectSensorPSR::creator ( const DtString &  rwName,
DtVrfObject *  vrfObject,
DtReaderWriterRegistry *  parentRegistry 
) [static]

Returns a newly created instance of this class.

Reimplemented in DtRadarObjectSensorPSR, and DtRotaryWingFlightCommandControllerPSR.

virtual void DtObjectSensorPSR::mapContactIdsToContactNames ( ) [protected, virtual]

Looks up each object in myContactInfoList by the entity ID in the contact information and sets the name of the contact in the contact info to the name of the object found.

Objects that are not found are left as they were.

virtual void DtObjectSensorPSR::mapContactNamesToContactIds ( ) [protected, virtual]

Looks up each object in myContactInfoList by name, and sets the entity ID in the contact information to the one found in the vrf object.


Member Data Documentation

Init() creates this item by using the createSensorContactInfoList() factory method.

Flag used to indicate that we should initialize contact names to DtEntityIdentifiers.


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)