VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
DtExtEntityBaseStateRepository Class Reference
Inheritance diagram for DtExtEntityBaseStateRepository:
Inheritance graph
[legend]

Public Member Functions

 DtExtEntityBaseStateRepository ()
 default constructor
virtual ~DtExtEntityBaseStateRepository ()
 destructor
 DtExtEntityBaseStateRepository (const DtExtEntityBaseStateRepository &orig)
 copy constructor
DtExtEntityBaseStateRepositoryoperator= (const DtExtEntityBaseStateRepository &orig)
 assignment operator
virtual DtStateRepositoryclone (bool copy=false) const
 Return a copy/empty object of the same type as this.
virtual int compare (const DtExtEntityBaseStateRepository *rhs)
 Compares us against the supplied state repository and returns what's changed.
virtual int compareToMostRecent ()
 Returns what has changed since the last time we called compare.
virtual int compareArtParts (const std::list< int > &)
 Compares articulated parts in the local copy to current values and returns a non-zero value if modified.
virtual int compareArtParts (const DtArticulatedPart *source, const DtArticulatedPart *target)
 Compares each value that is valid, and, if any have changed, returns DtChanged_Other.
virtual bool locationsDifferent (bool updateIfDifferent)
 Returns true if our stashed location is different than our current location.
virtual void setDiGuyStateRepository (DtDIGuyObjectStateRepository *diGuyStateRep)
 If the DI guy repository being set is not of the extended type, then create one of the extended type (passing in the di guy state rep into the copy constructor) before setting in the base class.
virtual void setBodyWeight (double)
 DI-Guy extension. Get/set body weight.
virtual double bodyWeight () const
virtual DtString uuidString () const
 Returns a string version of the VRF UUID of this object, if it can be determined.
bool needsVrfDataUpdate () const
 Returns true if the vrf object data has been modified.
void clearVrfDataNeedsUpdate ()
bool hasVrfObjectDataMessage () const
 Returns true if at least on vrf object data message has been processed by this entity.
void setHasVrfObjectDataMessage (bool)
 Sets whether or not has an object data message.
virtual DtExtDiGuyStateRepositoryextDiGuyStateRepository ()
virtual const
DtExtDiGuyStateRepository
extDiGuyStateRepository () const
virtual void createDiGuyStateRep ()
 Overrides the one in base, creates an extended DI-Guy object state repository instead.
virtual bool setupFromVrfObjectData (const DtIfVrfObjectData &data)
 Override to set myHasVrfObjectDataMessage to true.
virtual void setSendVrfObjectDataRecord (bool shouldSend)
 Whether a separate VrfObjectData message should be sent to convey additional VRF object information.
virtual bool shouldSendVrfObjectDataRecord () const
- Public Member Functions inherited from DtVrfExtensions
 DtVrfExtensions ()
virtual ~DtVrfExtensions ()
 DtVrfExtensions (const DtVrfExtensions &orig)
DtVrfExtensionsoperator= (const DtVrfExtensions &orig)
virtual const DtStringname () const
virtual void setName (const DtString &n)
virtual const DtStringvrfObjectLabel () const
virtual void setVrfObjectLabel (const DtString &l)
virtual const DtStringechelonId () const
virtual void setEchelonId (const DtString &l)
virtual const DtStringoverlayParent () const
virtual void setOverlayParent (const DtString &l)
virtual bool isVrfSimulated () const
virtual void setIsVrfSimulated (bool vrf)
virtual DtU32 vrfSessionId () const
virtual void setVrfSessionId (DtU32 id)
virtual void setVrfMessageVersionSupported (DtU32 id)
virtual DtU32 vrfMessageVersionSupported () const
virtual void setObjectType (const DtObjectType &)
virtual const DtObjectTypeobjectType () const
virtual void setIsSubordinateOfForce (bool b)
virtual bool isSubordinateOfForce () const
virtual int superType () const
virtual void setHasPlan (bool yesNo)
virtual bool hasPlan () const
virtual void setIsCurrentlyTasked (bool yesNo)
virtual bool isCurrentlyTasked () const
virtual void setRulesOfEngagement (const DtString &)
virtual const DtStringrulesOfEngagement () const
virtual void addRangeItem (const DtRangeItem &)
 Adds, removes and returns items in the range item list.
virtual void removeRangeItem (int index)
virtual void setRangeItems (const DtRangeItems &)
const DtRangeItemsrangeItems () const
virtual bool createVrfObjectDataMessage ()
virtual DtIfVrfObjectDatavrfObjectDataMessage () const
virtual void setIndependentlyTasked (bool yesNo)
virtual bool independentlyTasked () const
virtual void setUnderFire (bool yesNo)
virtual bool underFire () const
virtual void setExecutingPlan (bool yesNo)
virtual bool executingPlan () const
virtual void setExtendedData (const std::map< DtString, DtString > &)
 Gets/sets extended data.
virtual const std::map
< DtString, DtString > & 
extendedData () const
virtual void setExtendedData (const DtString &key, const DtString &value)
virtual DtString extendedData (const DtString &) const
virtual void setBoundingVolume (const DtVector32 &)
 Sets/gets bounding volume and bounding volume offset of an entity.
virtual const DtVector32 & boundingVolume () const
virtual void setBoundingVolumeOffset (const DtVector32 &)
virtual const DtVector32 & boundingVolumeOffset () const

Static Public Member Functions

static
DtExtEntityBaseStateRepository
create ()
- Static Public Member Functions inherited from DtVrfExtensions
static void setExpectedVrfMessageVersion (DtU32 version)
 The expected VRF message version of this application.
static DtU32 expectedVrfMessageVersion ()

Protected Member Functions

virtual void extensionModified ()

Protected Attributes

DtExtEntityBaseStateRepositorymyLastCopy
bool myVrfObjectDataUpdated
bool myHasVrfObjectDataMessage
 If true, a vrf object data message has been seen for this object. By default, this is false.
bool mySendVrfObjectDataRec
- Protected Attributes inherited from DtVrfExtensions
DtString myName
DtIfVrfObjectDatamyVrfObjectDataMessage

Additional Inherited Members

- Static Protected Attributes inherited from DtVrfExtensions
static DtU32 theExpectedVrfMessageVersion

Constructor & Destructor Documentation

DtExtEntityBaseStateRepository::DtExtEntityBaseStateRepository ( )

default constructor

virtual DtExtEntityBaseStateRepository::~DtExtEntityBaseStateRepository ( )
virtual

destructor

DtExtEntityBaseStateRepository::DtExtEntityBaseStateRepository ( const DtExtEntityBaseStateRepository orig)

copy constructor

Member Function Documentation

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

assignment operator

virtual DtStateRepository* DtExtEntityBaseStateRepository::clone ( bool  copy = false) const
virtual
virtual int DtExtEntityBaseStateRepository::compare ( const DtExtEntityBaseStateRepository rhs)
virtual

Compares us against the supplied state repository and returns what's changed.

virtual int DtExtEntityBaseStateRepository::compareToMostRecent ( )
virtual

Returns what has changed since the last time we called compare.

virtual int DtExtEntityBaseStateRepository::compareArtParts ( const std::list< int > &  )
virtual

Compares articulated parts in the local copy to current values and returns a non-zero value if modified.

If modified, copies current into last value

virtual int DtExtEntityBaseStateRepository::compareArtParts ( const DtArticulatedPart source,
const DtArticulatedPart target 
)
virtual

Compares each value that is valid, and, if any have changed, returns DtChanged_Other.

virtual bool DtExtEntityBaseStateRepository::locationsDifferent ( bool  updateIfDifferent)
virtual

Returns true if our stashed location is different than our current location.

virtual void DtExtEntityBaseStateRepository::setDiGuyStateRepository ( DtDIGuyObjectStateRepository diGuyStateRep)
virtual

If the DI guy repository being set is not of the extended type, then create one of the extended type (passing in the di guy state rep into the copy constructor) before setting in the base class.

virtual void DtExtEntityBaseStateRepository::setBodyWeight ( double  )
virtual

DI-Guy extension. Get/set body weight.

Reimplemented in DtExtEntityStateRepository.

virtual double DtExtEntityBaseStateRepository::bodyWeight ( ) const
virtual

Reimplemented in DtExtEntityStateRepository.

virtual DtString DtExtEntityBaseStateRepository::uuidString ( ) const
virtual

Returns a string version of the VRF UUID of this object, if it can be determined.

VRF has multiple ways of sending the UUID. This method only works when the UUID is sent via the object's extendedData. If sent by other means, such as using state properties (which is the default in 4.6 and later), the returned string will be empty.

Reimplemented in DtExtEntityStateRepository.

bool DtExtEntityBaseStateRepository::needsVrfDataUpdate ( ) const
inline

Returns true if the vrf object data has been modified.

References myVrfObjectDataUpdated.

void DtExtEntityBaseStateRepository::clearVrfDataNeedsUpdate ( )
inline
bool DtExtEntityBaseStateRepository::hasVrfObjectDataMessage ( ) const
inline

Returns true if at least on vrf object data message has been processed by this entity.

References myHasVrfObjectDataMessage.

void DtExtEntityBaseStateRepository::setHasVrfObjectDataMessage ( bool  b)
inline

Sets whether or not has an object data message.

Should not be called unless need to work around not having a object data message yet. Called by publisher to set to true since a published vrf entity will always have an object data message

References myHasVrfObjectDataMessage.

virtual void DtExtEntityBaseStateRepository::setSendVrfObjectDataRecord ( bool  shouldSend)
virtual

Whether a separate VrfObjectData message should be sent to convey additional VRF object information.

virtual bool DtExtEntityBaseStateRepository::shouldSendVrfObjectDataRecord ( ) const
virtual
virtual DtExtDiGuyStateRepository* DtExtEntityBaseStateRepository::extDiGuyStateRepository ( )
virtual
virtual const DtExtDiGuyStateRepository* DtExtEntityBaseStateRepository::extDiGuyStateRepository ( ) const
virtual
virtual void DtExtEntityBaseStateRepository::createDiGuyStateRep ( )
virtual

Overrides the one in base, creates an extended DI-Guy object state repository instead.

Important lesson learned from hours of misery: do not create an instance of DtExtDiGuyStateRepository anywhere but here. The one created gets handed down down, through a long, confusing chain, to HLA code deep inside VR-Link. If you delete the one maintained in this class, that code will hold a pointer to a deleted object.

static DtExtEntityBaseStateRepository* DtExtEntityBaseStateRepository::create ( )
static
void DtExtEntityBaseStateRepository::extensionModified ( )
inlineprotectedvirtual

Reimplemented from DtVrfExtensions.

References myVrfObjectDataUpdated.

virtual bool DtExtEntityBaseStateRepository::setupFromVrfObjectData ( const DtIfVrfObjectData data)
virtual

Override to set myHasVrfObjectDataMessage to true.

Reimplemented from DtVrfExtensions.

Member Data Documentation

DtExtEntityBaseStateRepository* DtExtEntityBaseStateRepository::myLastCopy
protected
bool DtExtEntityBaseStateRepository::myVrfObjectDataUpdated
protected
bool DtExtEntityBaseStateRepository::myHasVrfObjectDataMessage
protected

If true, a vrf object data message has been seen for this object. By default, this is false.

Referenced by hasVrfObjectDataMessage(), and setHasVrfObjectDataMessage().

bool DtExtEntityBaseStateRepository::mySendVrfObjectDataRec
protected

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

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)