VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
DtLinearObjectEncoder Class Reference

Provides encoding logic for the DtLinearObjectStatePdu class. More...

+ Inheritance diagram for DtLinearObjectEncoder:
+ Collaboration diagram for DtLinearObjectEncoder:

Public Member Functions

 DtLinearObjectEncoder (double locThresh=1.0, double oriThresh=1.0)
 CTOR.
 DtLinearObjectEncoder (const DtLinearObjectEncoder &orig)
 Copy CTOR.
virtual ~DtLinearObjectEncoder ()
 Virtual DTOR.
DtLinearObjectEncoderoperator= (const DtLinearObjectEncoder &orig)
 Assignment operator.
virtual DtLinearObjectStatePdustateMsg (const DtLinearObjectRepository &stateRep, const DtLinearObjectRepository &asSeenByRemote)
 Constructs a PDU from the state repository.
 DtCLONE_ENCODER (DtLinearObjectEncoder)
virtual void setLocThreshold (double val)
 Set/Query the value of the Location Update Threshold.
virtual double locThreshold () const
 Set/Query the value of the Location Update Threshold.
virtual void setOriThreshold (double val)
 Set/Query the value of the Orientation Update Threshold.
virtual double oriThreshold () const
 Set/Query the value of the Orientation Update Threshold.
- Public Member Functions inherited from DtStateEncoder
 DtStateEncoder ()
 Default constructor.
virtual ~DtStateEncoder ()
 Destructor.
 DtStateEncoder (const DtStateEncoder &orig)
 Copy constructor.
DtStateEncoderoperator= (const DtStateEncoder &orig)
 Assignment operator.
void setSendNeeded ()
 Sets myForceSendNeeded to true.
virtual DtPduEncoderclone () const =0
 clone.
virtual void encode (DtPdu *pdu)
 This is a dummy method for backwards compatibility with DIS encoders.
virtual void fillOutAttributeRecords (const DtStateRepository &stateRep, DtPduWithAttributeRecordSets *pdu, const DtEntityIdentifier &id, bool clearBeforeAdding=true)
 DIS 7 requires filling the Attribute Records for a coupled Attribute PDU.
virtual bool sendNeededAttributeRecords (const DtStateRepository &stateRep, const DtStateRepository &asSeenByRemote) const
 In order to modify records in place, and have them sent, we need to compare the stateRep with the As seen by remote.
- Public Member Functions inherited from DtPduEncoder
virtual ~DtPduEncoder ()

Protected Member Functions

virtual bool sendNeeded (const DtLinearObjectRepository &stateRep, const DtLinearObjectRepository &asSeenByRemote)
 Determine if a state message needs to be sent.
virtual void updateModifications (const DtLinearObjectRepository &lclRep, const DtLinearObjectRepository &remRep)
 Update the PDU's modification flags.

Protected Attributes

DtLinearObjectStatePdu myPdu
double myLocThresholdSquared
double myOriThresholdSquared
- Protected Attributes inherited from DtStateEncoder
bool myForceSendNeeded

Detailed Description

Provides encoding logic for the DtLinearObjectStatePdu class.

Constructor & Destructor Documentation

DtLinearObjectEncoder::DtLinearObjectEncoder ( double  locThresh = 1.0,
double  oriThresh = 1.0 
)

CTOR.

DtLinearObjectEncoder::DtLinearObjectEncoder ( const DtLinearObjectEncoder orig)

Copy CTOR.

virtual DtLinearObjectEncoder::~DtLinearObjectEncoder ( )
virtual

Virtual DTOR.

Member Function Documentation

DtLinearObjectEncoder::DtCLONE_ENCODER ( DtLinearObjectEncoder  )
double DtLinearObjectEncoder::locThreshold ( ) const
inlinevirtual

Set/Query the value of the Location Update Threshold.

References myLocThresholdSquared.

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

Assignment operator.

double DtLinearObjectEncoder::oriThreshold ( ) const
inlinevirtual

Set/Query the value of the Orientation Update Threshold.

References myOriThresholdSquared.

virtual bool DtLinearObjectEncoder::sendNeeded ( const DtLinearObjectRepository stateRep,
const DtLinearObjectRepository asSeenByRemote 
)
protectedvirtual

Determine if a state message needs to be sent.

void DtLinearObjectEncoder::setLocThreshold ( double  val)
inlinevirtual

Set/Query the value of the Location Update Threshold.

References myLocThresholdSquared.

void DtLinearObjectEncoder::setOriThreshold ( double  val)
inlinevirtual

Set/Query the value of the Orientation Update Threshold.

References myOriThresholdSquared.

virtual DtLinearObjectStatePdu* DtLinearObjectEncoder::stateMsg ( const DtLinearObjectRepository stateRep,
const DtLinearObjectRepository asSeenByRemote 
)
virtual

Constructs a PDU from the state repository.

stateMsg determines whether a Designator PDU needs to be sent and constructs one of it does.

Returns
PDU if send is needed, and NULL if not
virtual void DtLinearObjectEncoder::updateModifications ( const DtLinearObjectRepository lclRep,
const DtLinearObjectRepository remRep 
)
protectedvirtual

Update the PDU's modification flags.

Member Data Documentation

double DtLinearObjectEncoder::myLocThresholdSquared
protected

Referenced by locThreshold(), and setLocThreshold().

double DtLinearObjectEncoder::myOriThresholdSquared
protected

Referenced by oriThreshold(), and setOriThreshold().

DtLinearObjectStatePdu DtLinearObjectEncoder::myPdu
protected

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

Document ID: Generated on Mon Apr 8 04:49:21 EDT 2019 from SVN revision 197403
Copyright © 2005-2016 VT MÄK. All Rights Reserved (www.mak.com)