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

DtDetonationPdu is used to represent the impact or detonation of a munition. More...

+ Inheritance diagram for DtDetonationPdu:
+ Collaboration diagram for DtDetonationPdu:

Public Types

enum  { PduStaticSize = 104 }

Public Member Functions

 DtDetonationPdu (DtBufferPtr buffer=DtUSE_INTERNAL_BUFFER)
 DtDetonationPdu (const DtNetDetonationPdu *initial, DtBufferPtr buffer=DtUSE_INTERNAL_BUFFER, DtPduFactory *pduFactory=0)
 DtDetonationPdu (const DtEntityIdentifier &attacker, const DtEntityIdentifier &target, const DtEntityIdentifier &munition, const DtEventID &eventId, const DtVector32 &linVelocity, const DtVector &location, const DtBurstDescriptor &burst, const DtVector32 &entLocation, DtDetonationResult result, DtBufferPtr buffer=DtUSE_INTERNAL_BUFFER)
 DtDetonationPdu (const DtFireInteraction &fire, DtBufferPtr buffer=DtUSE_INTERNAL_BUFFER)
 Fills in common fields with data from Fire Interaction.
virtual ~DtDetonationPdu ()
 destructor
const DtObjectIdattackerId () const
void setAttackerId (const DtObjectId &id)
const DtObjectIdtargetId () const
void setTargetId (const DtObjectId &id)
const DtObjectIdmunitionId () const
void setMunitionId (const DtObjectId &id)
const DtEventIDeventId () const
void setEventId (const DtEventID &id)
const DtVector32velocity () const
void setVelocity (const DtVector32 &velocity)
const DtVectorworldLocation () const
void setWorldLocation (const DtVector &location)
const DtVector32entityLocation () const
void setEntityLocation (const DtVector32 &location)
DtDetonationResult result () const
void setResult (DtDetonationResult result)
DtDetonatorFuze fuseType () const
void setFuseType (DtDetonatorFuze fuse)
const DtEntityTypemunitionType () const
void setMunitionType (const DtEntityType &munType)
int quantity () const
void setQuantity (int quant)
int rate () const
void setRate (int rate)
DtWarheadType warheadType () const
void setWarheadType (DtWarheadType type)
const DtBurstDescriptorburst () const
 NOT USED IN HLA.
void setBurst (const DtBurstDescriptor &burst)
void setArticulatedParts (const DtArticulatedPartCollection &apList)
const DtArticulatedPartCollectionarticulatedParts () const
DtArticulatedPartCollectionarticulatedParts ()
void setAttachedParts (const DtAttachedPartCollection &apList)
const DtAttachedPartCollectionattachedParts () const
DtAttachedPartCollectionattachedParts ()
virtual void printData () const
 Print the PDU's data (not including header).
virtual void printDataToStream (std::ostream &stream) const
virtual void printDataToString (DtString &str) const
virtual const std::vector
< DtVPRecord * > * 
variableParameterList () const
 Get the VP Records list.
virtual std::vector
< DtVPRecord * > * 
variableParameterList ()
 Get the VP Records list.
- Public Member Functions inherited from DtInteraction
 DtInteraction ()
 default constructor
virtual ~DtInteraction ()
 destructor
 DtInteraction (const DtInteraction &orig)
 copy constructor
DtInteractionoperator= (const DtInteraction &orig)
 assignment operator
- Public Member Functions inherited from DtPduWithAttributeRecordSets
 DtPduWithAttributeRecordSets ()
 Constructor.
 DtPduWithAttributeRecordSets (const DtPduWithAttributeRecordSets &orig)
 Constructor.
DtPduWithAttributeRecordSetsoperator= (const DtPduWithAttributeRecordSets &other)
 Assignment operator.
virtual ~DtPduWithAttributeRecordSets ()
 Destructor.
virtual void printToStream (std::ostream &stream) const
 Print the contents of the PDU. This will call DtPdu's printToStream and also call printRecordSets()
virtual void printRecordSets (bool printEntityObjectId=false) const
 Prints the Record Sets to DtInfo.
virtual void printRecordSetsToStream (std::ostream &stream, bool printEntityObjectId=false) const
 Prints the Record Sets to the specified stream.
virtual void addRecord (std::auto_ptr< DtStandardVariableRecord > record, const DtEntityIdentifier &id=DtEntityIdentifier::nullId())
 Adds a Record.
virtual void removeRecord (unsigned int index, const DtEntityIdentifier &id=DtEntityIdentifier::nullId())
 Removes a Record.
virtual void clearRecordSet (const DtEntityIdentifier &id=DtEntityIdentifier::nullId())
 Removes all Records and deletes the recordSet for the given Entity/Object Identifier.
virtual void clearAllRecordSets ()
 Removes all RecordSets.
virtual std::vector
< DtEntityIdentifier
recordSetIdentifiers () const
 Returns a vector of Entity/Object Identifiers. These are the Identifiers for the Record Sets.
virtual void getRecordSetIdentifiers (std::vector< DtEntityIdentifier > &entityIdVector) const
 Returns by reference the vector of Entity/Object Identifiers.
virtual const
DtStandardVariableRecordPtrVector
records (const DtEntityIdentifier &id=DtEntityIdentifier::nullId()) const
 This will return the Records for a given Entity/Object Identifier.
virtual const
DtAttributeRecordSet
recordSet (const DtEntityIdentifier &id) const
 This will return the Record Set for a given Entity/Object Identifier.
virtual const
DtStandardVariableRecordPtrVector 
allRecords () const
 This will return the Records of all Record Sets.
virtual unsigned int numberOfRecords () const
 Returns the number of records for all Record Sets.
virtual unsigned int numberOfRecords (const DtEntityIdentifier &id) const
 Returns the number of records in the Record Set for the given Entity/Object Identifier.
virtual bool containsStandardRecordSets () const
 Returns if this PDU contains Standard Record Sets. (This is only applicable to DIS 7 and higher).
virtual const DtSimulationAddressattributePduSimulationAddress () const
 Returns the Simulation address if an attribute PDU was coupled. Used internally in VR-Link in Reflected Lists.
virtual void setAttributePduSimulationAddress (const DtSimulationAddress &addr)
 Sets the Simulation address if an attribute PDU was coupled. Used internally in VR-Link in Reflected Lists.
virtual void encode ()
 Encode method.
virtual void decode (DtPduFactory *pduFactory=0)
 Decode method.
virtual unsigned int attributeRecordSetsNetSize () const
 Network Size of the all Attribute Record Sets.
virtual unsigned int recordSetsNetSize () const
 Network Size of the all Record Sets.
virtual void setStandardVariableRecordFactory (DtStandardVariableRecordFactory *factory)
 Sets/gets the Standard Variable Record Factory used for decoding.
virtual
DtStandardVariableRecordFactory
standardVariableRecordFactory () const
virtual unsigned int numberOfRecordSets () const
 Gets the number of Attribute Record Sets.
virtual const
DtAttributeRecordSetMap
attributeRecordSetMap () const
 Get the AttributeRecordSet Map.
virtual int computeMasterAttributeRecordType () const
 Get the Master Attribute Record Type (if applicable, this will return MULTIPLES_PRESENT if not)
virtual void setAttributeStrategy (DtAttributePduStrategy strat)
virtual DtAttributePduStrategy attributePduStrategy () const
virtual bool shouldAttributePduBeCoupled () const
- Public Member Functions inherited from DtPdu
virtual ~DtPdu ()
 Destructor.
 DtPdu (const DtPdu &pdu, DtBufferPtr buffer=DtUSE_INTERNAL_BUFFER)
 Copy constructor.
DtPduoperator= (const DtPdu &pdu)
 Assignment operator.
virtual void * packet () const
 Older function that returns a pointer to the network representation.
virtual int status () const
 Get PDU status.
virtual void setVersion (int vers)
 Set/Get protocol version from PDU header.
virtual int protocolVersion () const
virtual void setExerciseId (int id)
 Set/Get exerciseID in PDU header.
virtual int exerciseId () const
virtual DtPduKind kind () const
 Returns PDU kind from PDU header.
virtual DtProtocolFamily protocolFamily () const
 Returns protocol family from PDU header.
virtual void setTimeStamp (DtTime time, DtTimeStampType type=DtTimeStampRelative)
 Set the PDU header's time stamp to reflect time and type.
virtual DtTime timeStamp () const
 Return the time (in seconds past an hour) encoded in the PDU header's time stamp.
virtual DtTimeStampType timeStampType () const
 Return the type of the time stamp, as indicated in PDU header.
virtual void setReceivedTime (DtTime t)
 absRealTime when PDU was received into buffer.
virtual DtTime receivedTime () const
virtual void setPduLength (unsigned int length)
 Set the PDU header's length.
virtual unsigned int pduLength () const
 Return the length of the PDU, as indicated in the PDU header.
virtual void setPduStatus (int)
 Set the PDU Status in the PDU header.
virtual int pduStatus () const
 Returns the PDU Status from the PDU header.
virtual void setTransferredEntityIndicator (bool difference)
 Set the Transferred Entity Indicator in the PDU header False is No Difference True is Difference.
virtual bool transferredEntityIndicator () const
 Returns the Transferred Entity Indicator from the PDU header False is No Difference True is Difference.
virtual void setLvcIndicator (DtPduStatusLVCIndicator lvcIndicator)
 Set the LVC Indicator in the PDU header.
virtual DtPduStatusLVCIndicator lvcIndicator () const
 Returns the LVC Indicator from the PDU header.
virtual void setCoupledExtensionIndicator (bool coupled)
 Set the Coupled Extension Indicator in the PDU Header False is Not Coupled True is Coupled.
virtual bool coupledExtensionIndicator () const
 Returns the Coupled Extension Indicator from the PDU Header False is Not Coupled True is Coupled.
virtual void setFireTypeIndicator (DtPduStatusFireTypeIndicator fireTypeIndicator)
 Set the Fire Type Indicator in the PDU header.
virtual
DtPduStatusFireTypeIndicator 
fireTypeIndicator () const
 Returns the Fire Type Indicator from the PDU header.
virtual void setDetonationTypeIndicator (DtPduStatusDetonationTypeIndicator detonationTypeIndicator)
 Set the Detonation Type Indicator in the PDU header.
virtual
DtPduStatusDetonationTypeIndicator 
detonationTypeIndicator () const
 Returns the Detonation Type Indicator from the PDU header.
virtual void setRadioAttachedIndicator (DtPduStatusRadioAttachedIndicator radioAttachedIndicator)
 Set the Radio Attached Indicator in the PDU header.
virtual
DtPduStatusRadioAttachedIndicator 
radioAttachedIndicator () const
 Returns the Radio Attached Indicator from the PDU header.
virtual void setIntercomAttachedIndicator (DtPduStatusIntercomAttachedIndicator intercomAttachedIndicator)
 Set the Intercom Attached Indicator in the PDU header.
virtual
DtPduStatusIntercomAttachedIndicator 
intercomAttachedIndicator () const
 Returns the Intercom Attached Indicator from the PDU header.
virtual void setIffSimulationMode (bool interactive)
 Set the IFF Simulation Mode in the PDU header.
virtual bool iffSimulationMode () const
 Returns the IFF Simulation Mode from the PDU header.
virtual void setActiveInterrogationIndicator (bool active)
 Set the Active Interrogation Indicator in the PDU header.
virtual bool activeInterrogationIndicator () const
 Returns the Active Interrogation Indicator from the PDU header.
virtual DtTime guessTimeValid (DtTime referenceTime) const
 Since timestamp only represents number of seconds past the hour, guessTimeValid chooses the hour that would make the timestamp closest to reference time, and returns a time that is timestamp seconds past that hour.
virtual DtNetPduHeadernetHeader () const
 Returns a pointer to the PDU's header.
virtual void print () const
 Print the contents of the PDU by calling printToStream(DtInfo).
virtual void printHeader () const
 Print the PDU's header. This calls printHeaderToStream(DtInfo).
virtual void printHeaderToStream (std::ostream &stream) const
 Print the PDU's header to a stream.
virtual void printPduInHexToStream (std::ostream &stream, unsigned int numberOfColumns) const
 Prints the entire PDU's internal buffer to the stream in Hex.
virtual bool isTransientPdu () const
 This method returns true if transient, false if state.
- Public Member Functions inherited from DtBaseMsg
virtual ~DtBaseMsg ()
 Destructor.
 DtBaseMsg (const DtBaseMsg &msg, DtBufferPtr buffer=DtUSE_INTERNAL_BUFFER)
 Copy constructor.
DtBaseMsgoperator= (const DtBaseMsg &msg)
 Assignment.
virtual const char * netRep () const
 Get network representation.
virtual int length () const
 Get size of message.
 DtBaseMsg ()
 Constructor Object is not fully constructed until initMsg is called.
void initMsg (int size, DtBufferPtr bufferPtr)
void initMsg (const void *initial, int size, DtBufferPtr bufferPtr)
virtual void changeSize (int size)
 Changes the size of the message.
virtual void changeBufferSize (int size)
 Changes the size of the message buffer, but not the message itself.
virtual void insertBytes (int offset, int numBytes)
 Inserts numBytes zeroed-out bytes at the indicated offset into the net rep.
virtual void insertBytes (void *address, int numBytes)
 Inserts numBytes zeroed-out bytes at the indicated address.
virtual void deleteBytes (int offset, int numBytes)
 Deletes numBytes bytes at the indicated offset in the net rep.
virtual void deleteBytes (void *address, int numBytes)
 Deletes numBytes bytes starting at the indicated address.
virtual void clearAll ()
 Zeros out all bytes in the network representation.
virtual void * newInternalBuffer (int size)
 Sets myInternalBuff to point to a malloc'ed buffer of size bytes.

Static Public Member Functions

static DtPducreate (const DtNetPacket *initial, DtBufferPtr buffer=DtUSE_INTERNAL_BUFFER, DtPduFactory *pduFactory=0)
static void addCallback (DtExerciseConn *conn, DtDetonationInteractionCb cb, void *usr)
static void removeCallback (DtExerciseConn *conn, DtDetonationInteractionCb cb, void *usr)

Protected Member Functions

DtPduKind internalGetPduKind () const
 Returns the PDU kind associated with the derived PDU class.

Protected Attributes

DtObjectId att
DtObjectId tar
DtObjectId mun
DtEventID event
DtVector32 vel
DtVector32 ent
DtVector world
DtBurstDescriptor theBurst
DtEntityType myMunType
unsigned myArtPartCount
unsigned myAttPartCount
DtArticulatedPartCollection myArtPartCollection
DtAttachedPartCollection myAttPartCollection
std::vector< DtVPRecord * > myVPRecordCollection

Additional Inherited Members

- Static Protected Attributes inherited from DtPduWithAttributeRecordSets
static const DtAttributeRecordSet theEmptyAttributeRecordSet

Detailed Description

DtDetonationPdu is used to represent the impact or detonation of a munition.

Member Enumeration Documentation

anonymous enum
Enumerator:
PduStaticSize 

Constructor & Destructor Documentation

DtDetonationPdu::DtDetonationPdu ( DtBufferPtr  buffer = DtUSE_INTERNAL_BUFFER)
DtDetonationPdu::DtDetonationPdu ( const DtNetDetonationPdu initial,
DtBufferPtr  buffer = DtUSE_INTERNAL_BUFFER,
DtPduFactory pduFactory = 0 
)
DtDetonationPdu::DtDetonationPdu ( const DtEntityIdentifier attacker,
const DtEntityIdentifier target,
const DtEntityIdentifier munition,
const DtEventID eventId,
const DtVector32 linVelocity,
const DtVector location,
const DtBurstDescriptor burst,
const DtVector32 entLocation,
DtDetonationResult  result,
DtBufferPtr  buffer = DtUSE_INTERNAL_BUFFER 
)
DtDetonationPdu::DtDetonationPdu ( const DtFireInteraction fire,
DtBufferPtr  buffer = DtUSE_INTERNAL_BUFFER 
)

Fills in common fields with data from Fire Interaction.

virtual DtDetonationPdu::~DtDetonationPdu ( )
virtual

destructor

Member Function Documentation

static void DtDetonationPdu::addCallback ( DtExerciseConn conn,
DtDetonationInteractionCb  cb,
void *  usr 
)
static
const DtArticulatedPartCollection& DtDetonationPdu::articulatedParts ( ) const
DtArticulatedPartCollection& DtDetonationPdu::articulatedParts ( )
const DtAttachedPartCollection& DtDetonationPdu::attachedParts ( ) const
DtAttachedPartCollection& DtDetonationPdu::attachedParts ( )
const DtObjectId& DtDetonationPdu::attackerId ( ) const
const DtBurstDescriptor& DtDetonationPdu::burst ( ) const

NOT USED IN HLA.

static DtPdu* DtDetonationPdu::create ( const DtNetPacket initial,
DtBufferPtr  buffer = DtUSE_INTERNAL_BUFFER,
DtPduFactory pduFactory = 0 
)
static
const DtVector32& DtDetonationPdu::entityLocation ( ) const
const DtEventID& DtDetonationPdu::eventId ( ) const
DtDetonatorFuze DtDetonationPdu::fuseType ( ) const
DtPduKind DtDetonationPdu::internalGetPduKind ( ) const
inlineprotectedvirtual

Returns the PDU kind associated with the derived PDU class.

Implements DtPdu.

References DtDetonationPduKind.

const DtObjectId& DtDetonationPdu::munitionId ( ) const
const DtEntityType& DtDetonationPdu::munitionType ( ) const
virtual void DtDetonationPdu::printData ( ) const
virtual

Print the PDU's data (not including header).

Base DtPdu version just prints hex. Use the printDataToString to put the data into a DtString instead of simply sending the output to stdout. printData() calls printDataToStream(DtInfo).

Reimplemented from DtPdu.

virtual void DtDetonationPdu::printDataToStream ( std::ostream &  stream) const
virtual

Reimplemented from DtPdu.

virtual void DtDetonationPdu::printDataToString ( DtString str) const
virtual

Reimplemented from DtPdu.

int DtDetonationPdu::quantity ( ) const
int DtDetonationPdu::rate ( ) const
static void DtDetonationPdu::removeCallback ( DtExerciseConn conn,
DtDetonationInteractionCb  cb,
void *  usr 
)
static
DtDetonationResult DtDetonationPdu::result ( ) const
void DtDetonationPdu::setArticulatedParts ( const DtArticulatedPartCollection apList)
void DtDetonationPdu::setAttachedParts ( const DtAttachedPartCollection apList)
void DtDetonationPdu::setAttackerId ( const DtObjectId id)
void DtDetonationPdu::setBurst ( const DtBurstDescriptor burst)
void DtDetonationPdu::setEntityLocation ( const DtVector32 location)
void DtDetonationPdu::setEventId ( const DtEventID id)
void DtDetonationPdu::setFuseType ( DtDetonatorFuze  fuse)
void DtDetonationPdu::setMunitionId ( const DtObjectId id)
void DtDetonationPdu::setMunitionType ( const DtEntityType munType)
void DtDetonationPdu::setQuantity ( int  quant)
void DtDetonationPdu::setRate ( int  rate)
void DtDetonationPdu::setResult ( DtDetonationResult  result)
void DtDetonationPdu::setTargetId ( const DtObjectId id)
void DtDetonationPdu::setVelocity ( const DtVector32 velocity)
void DtDetonationPdu::setWarheadType ( DtWarheadType  type)
void DtDetonationPdu::setWorldLocation ( const DtVector location)
const DtObjectId& DtDetonationPdu::targetId ( ) const
const std::vector< DtVPRecord * > * DtDetonationPdu::variableParameterList ( ) const
inlinevirtual

Get the VP Records list.

This does not include articulated parts even though those are technically also VPs. Only available in DIS version 7 or higher.

References myVPRecordCollection.

std::vector< DtVPRecord * > * DtDetonationPdu::variableParameterList ( )
inlinevirtual

Get the VP Records list.

This does not include articulated parts even though those are technically also VPs. Only available in DIS version 7 or higher.

References myVPRecordCollection.

const DtVector32& DtDetonationPdu::velocity ( ) const
DtWarheadType DtDetonationPdu::warheadType ( ) const
const DtVector& DtDetonationPdu::worldLocation ( ) const

Member Data Documentation

DtObjectId DtDetonationPdu::att
protected
DtVector32 DtDetonationPdu::ent
protected
DtEventID DtDetonationPdu::event
protected
DtObjectId DtDetonationPdu::mun
protected
DtArticulatedPartCollection DtDetonationPdu::myArtPartCollection
mutableprotected
unsigned DtDetonationPdu::myArtPartCount
protected
DtAttachedPartCollection DtDetonationPdu::myAttPartCollection
mutableprotected
unsigned DtDetonationPdu::myAttPartCount
protected
DtEntityType DtDetonationPdu::myMunType
protected
std::vector<DtVPRecord*> DtDetonationPdu::myVPRecordCollection
protected

Referenced by variableParameterList().

DtObjectId DtDetonationPdu::tar
protected
DtBurstDescriptor DtDetonationPdu::theBurst
protected
DtVector32 DtDetonationPdu::vel
protected
DtVector DtDetonationPdu::world
protected

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

Document ID: Generated on Mon Jun 22 21:18:40 EDT 2020 from SVN revision 213785
Copyright © 2005-2018 MAK Technologies. All Rights Reserved (www.mak.com)