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
DtObjectSensorPSRoperator= (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 DtSensorContactInfoListcontactInfoList ()
 The list of DtRwSensorContactInfo (or derivative) objects.
virtual const
DtSensorContactInfoList
contactInfoList () const
 The const list of DtRwSensorContactInfo (or derivative) objects.
virtual DtRwSensorContactInfolookupContactById (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 DtRwSensorContactInfocreateSensorContactInfo () 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 DtSensorContactInfoListcreateSensorContactInfoList (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

DtSensorContactInfoListmyContactInfoList
 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)