MAK RTIspy API Documentation for HLA 1.3
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes
DtInteractionMsg Class Reference

DtInteractionMsg is a message type that represents an HLA Interaction. More...

+ Inheritance diagram for DtInteractionMsg:
+ Collaboration diagram for DtInteractionMsg:

Public Member Functions

 DtInteractionMsg (DtBufferPtr buffer=DtUSE_INTERNAL_BUFFER)
 Constructor.
virtual ~DtInteractionMsg ()
 Destructor.
virtual void setChannel (unsigned long handleValue)
 Set/Get DDM channel.
virtual unsigned long channel () const
virtual void setHandle (DtInteractionClassHandle hand)=0
 Set/Get handle.
virtual DtInteractionClassHandle handle () const =0
virtual void setTag (char const *tag)
 Set/Get tag.
virtual char const * tag () const
virtual void setParams (const DtPhvps &theParameters, bool checkBufferSize=true)
 Set/Get parameters.
virtual void getParams (DtPhvps &params, bool useMsgMemory, DtInteractionClassInfo *classInfo=NULL) const
 Parameter value set allocates own memory for values or accesses the message's memory directly Fills in only subscribed parameters if class info is provided otherwise gets all parameters in message.
virtual unsigned long numParams () const
 Get number of parameters.
- Public Member Functions inherited from DtRtiMsg
virtual ~DtRtiMsg ()
 Destructor.
virtual DtRtiMsgclone (bool copy=true) const =0
 Return a copy/empty object of the same type as this.
virtual DtRtiMsgcloneWithTransport (bool copy=true) const
 Return a copy/empty object of the same type as this using clone and set the transport type from the host message.
virtual DtNetMsgHeadernetHeader () const
 Get header of network representation.
virtual int version () const
 Return the message version.
virtual bool isValidVersion () const
 Returns bool: message version is valid?
virtual void setFedEx (const MAKRti::DtString &name)
 All RTI messages contain information to identify which federation execution the message applies to.
virtual void setFedEx (int handle)
 Set federation execution identifier as a handle.
virtual bool isForExec (const MAKRti::DtString &execName, int execHandle) const
 Returns true if the current message belongs to the indicated federation execution, false otherwise.
virtual DtRtiMsgKind msgKind () const
 Get the message kind.
virtual const char * kindString () const
 Returns the message kind string name.
virtual bool isConstrained () const
 Return boolean: message type can be time constrained?
virtual bool isAllowedDuringSave () const
 Return boolean: message type can be processed during save?
virtual void setTime (const RTI::FedTime &time)
 Set/Get time Used in timestamped messages.
virtual RTI::FedTime const * time (DtLogicalTimeFactory *fedTimeFactory) const
virtual bool hasTime () const
 Returns true if time field is valid.
virtual void setSerialNumber (unsigned long serialNumberValue)
 Set/Get event retraction serial number Used in timestamped messages.
virtual unsigned long serialNumber () const
virtual void setTransportType (DtTransportHandle type)
 Set/Get transport type.
virtual DtTransportHandle transportType () const
virtual DtOrderHandle orderType () const
 This base implementation always returns recieve order.
virtual bool isMetadataPresent () const
 Test if metadata has been added to a DtRtiMsg object.
virtual bool addMetadata (caddr_t *mtdAddr, unsigned int size, unsigned int *alignPad, unsigned int *headerPad=NULL)
 Allocate space for next block of metadata.
virtual void removeMetadata (unsigned int size)
 Update the size of the message when metadata has been removed.
bool isInteractionMsgType () const
 Utility functions, check the message type against known interaciton/update message types.
bool isUpdateMsgType () const
virtual void print (DtLogicalTimeFactory *logicalTimeFactory) const
 Printing functions.
virtual void printHeader (DtLogicalTimeFactory *logicalTimeFactory) const
virtual void printData (DtLogicalTimeFactory *logicalTimeFactory) const
virtual void printTime (const char *label, RTI::FedTime const *timeValue) const
 Print the given time.
virtual void printInterval (const char *label, RTI::FedTime const *intervalValue) const
 Print the interval.
virtual int status () const
 Returns MSG_STATUS_OK if OK, a reason enumeration otherwise.
virtual const MAKRti::DtString fedExName () const
 These two functions should be avoided in favor of isForExec().
virtual int fedExHandle () const
 Get the federation execution identifier as a handle Returns 0 if the identifier is being represented as a name.
virtual void setFederateHandle (DtFederateHandle handle)
 Set/Get federate handle.
virtual DtFederateHandle federateHandle () const
 Set/Get federate handle.
virtual void setSequenceNumber (unsigned long value)
 Set/Get message sequence number.
virtual unsigned long sequenceNumber () const
 Set/Get message sequence number.
virtual void setServiceCallNumber (unsigned long value)
 Set/Get service call number.
virtual unsigned long serviceCallNumber () const
 Set/Get service call number.
virtual void setTriggerMessageNumber (unsigned long value)
 Set/Get trigger message sequence number (i.e., the message being processed that triggered this message being sent).
virtual unsigned long triggerMessageNumber () const
 Set/Get trigger message sequence number (i.e., the message being processed that triggered this message being sent).

Static Public Member Functions

static void setChannelIncluded (bool includeChannel)
 Set/Get flag to include DDM channel identifier.
static bool channelIncluded ()
- Static Public Member Functions inherited from DtRtiMsg
static const char * kindToString (DtRtiMsgKind kind)
 Returns the name of the message, by kind enumeration.
static const char * kindString (const void *buffer)
 Extracts the message kind from the given buffer and returns its string name.
static void setDefaultRegionSet (unsigned long defaultRegionSet)
 Set the default region set handle.
static void setUse32BitsForValueSize (bool use32BitsForValueSizeEnabled)
 Set/Get flag to enable use of 32 bit size field for attribute/parameter values.
static bool use32BitsForValueSize ()
static void setSmartForwardingEnabled (bool enabled)
 Set/Get is SmartForwarding enabled?
static bool smartForwardingEnabled ()

Protected Member Functions

virtual void setTagSize (int size)=0
 Set/Get tag size.
virtual int tagSize () const =0
virtual DtNetU32 * channelPtr () const =0
 Returns pointer to the channel in the netMsg.
virtual char * tagPtr ()=0
 Returns pointer to the tag in the netMsg.
virtual DtNetParamsnetParams ()=0
 Returns pointer to the network rep of the pvList.
virtual DtNetBigParamsnetBigParams ()=0
 Supports big parameter values > 64K.
virtual DtNetParamValuenextNetParam (DtNetParamValue *netParam) const
 Find pointer to next parameter in the network rep.
virtual DtNetBigParamValuenextNetBigParam (DtNetBigParamValue *netParam) const
 Supports parameter values > 64K.
virtual void fillFromNetParams (const DtNetParams *netRepParams, DtPhvps &params, bool useMsgMemory, DtInteractionClassInfo *classInfo=NULL) const
 Fill the given parameter set with the message's parameters Parameter value set allocates own memory for values or accesses the message's memory directly Fills in only subscribed attributes if class info is provided otherwise gets all attributes in message.
virtual void fillFromNetBigParams (const DtNetBigParams *netRepParams, DtPhvps &params, bool useMsgMemory, DtInteractionClassInfo *classInfo=NULL) const
 Fill the given parameter set with the message's parameters Supports parameter values > 64K Parameter value set allocates own memory for values or accesses the message's memory directly Fills in only subscribed attributes if class info is provided otherwise gets all attributes in message.
virtual void fillNetParams (const DtPhvps &theParameters, DtNetParams *netRepParams)
 Fill message with given parameter set.
virtual void fillNetBigParams (const DtPhvps &theParameters, DtNetBigParams *netRepParams)
 Supports parameter values > 64K.
virtual void setSizeOfNetParams (unsigned long size)
 Sets size for the network rep of the pvList.
virtual unsigned long sizeNeededForNetParams (const DtPhvps &params) const
 Returns the size the network representation will consume.
virtual int channelFieldSize () const
 Returns size of channel field.
virtual int tagFieldSize () const
 Returns size of tag field.
virtual DtInteractionMsgself () const
 Returns pointer to the serial number in the netMsg.
- Protected Member Functions inherited from DtRtiMsg
 DtRtiMsg ()
 Constructor.
virtual DtRtiMsgKind internalDtRtiMsgKind ()=0
virtual void sizeChanged (int size)
 Called whenever size is changed using changeSize, or insert/deleteBytes.
void initDtRtiMsg (int size, DtRtiMsgKind msgKindVal, DtBufferPtr buffer)
 Called by ctor, so not virtual.
void initDtRtiMsg (const void *initial, int size, DtBufferPtr buffer)
void initDtRtiMsg (const DtNetMsgHeader *header, DtBufferPtr buffer)
virtual void adjustBytes (int offset, int numBytes)
 Adjust numBytes bytes at the indicated offset in the net rep.
virtual void adjustBytes (void *address, int numBytes)
 Adjust the numBytes starting at the indicated addres.

Protected Attributes

char * myTag
unsigned long myParamFieldLength
- Protected Attributes inherited from DtRtiMsg
DtTransportHandle myTransportType
DtOrderHandle myOrderType
RTI::FedTimemyFedTime
bool myTimeIsValid
bool myConstrained
bool myAllowedDuringSave
unsigned long mySerialNumber
unsigned long myServiceCallNumber
unsigned long myTriggerMessage

Static Protected Attributes

static bool theChannelIncluded = false
- Static Protected Attributes inherited from DtRtiMsg
static bool theUse32BitsForValueSize = false
static bool theSmartForwardingEnabled = false

Additional Inherited Members

- Static Public Attributes inherited from DtRtiMsg
static unsigned long theDefaultRegionSetHandle = 0
static const char * theDefaultTag = NULL

Detailed Description

DtInteractionMsg is a message type that represents an HLA Interaction.

Constructor & Destructor Documentation

DtInteractionMsg::DtInteractionMsg ( DtBufferPtr  buffer = DtUSE_INTERNAL_BUFFER)
DtInteractionMsg::~DtInteractionMsg ( )
virtual

Destructor.

References myTag, and NULL.

Member Function Documentation

unsigned long DtInteractionMsg::channel ( ) const
virtual
int DtInteractionMsg::channelFieldSize ( ) const
protectedvirtual

Returns size of channel field.

References channelIncluded().

Referenced by DtInteractionRoMsg::tagPtr().

bool DtInteractionMsg::channelIncluded ( )
inlinestatic
virtual DtNetU32* DtInteractionMsg::channelPtr ( ) const
protectedpure virtual

Returns pointer to the channel in the netMsg.

Implemented in DtInteractionRoMsg.

Referenced by channel(), and setChannel().

void DtInteractionMsg::fillFromNetBigParams ( const DtNetBigParams netRepParams,
DtPhvps &  params,
bool  useMsgMemory,
DtInteractionClassInfo classInfo = NULL 
) const
protectedvirtual

Fill the given parameter set with the message's parameters Supports parameter values > 64K Parameter value set allocates own memory for values or accesses the message's memory directly Fills in only subscribed attributes if class info is provided otherwise gets all attributes in message.

References DtNetBigParamValue::handle, nextNetBigParam(), numParams(), DtNetBigParams::numParams, and DtInteractionClassInfo::paramByHandle().

Referenced by getParams().

void DtInteractionMsg::fillFromNetParams ( const DtNetParams netRepParams,
DtPhvps &  params,
bool  useMsgMemory,
DtInteractionClassInfo classInfo = NULL 
) const
protectedvirtual

Fill the given parameter set with the message's parameters Parameter value set allocates own memory for values or accesses the message's memory directly Fills in only subscribed attributes if class info is provided otherwise gets all attributes in message.

References DtNetParamValue::handle, nextNetParam(), DtNetParams::numParams, numParams(), and DtInteractionClassInfo::paramByHandle().

Referenced by getParams().

void DtInteractionMsg::fillNetBigParams ( const DtPhvps &  theParameters,
DtNetBigParams netRepParams 
)
protectedvirtual

Supports parameter values > 64K.

References DtNetBigParamValue::handle, nextNetBigParam(), DtNetBigParams::numParams, and DtNetBigParamValue::size.

Referenced by setParams().

void DtInteractionMsg::fillNetParams ( const DtPhvps &  theParameters,
DtNetParams netRepParams 
)
protectedvirtual

Fill message with given parameter set.

References DtNetParamValue::handle, nextNetParam(), DtNetParams::numParams, and DtNetParamValue::size.

Referenced by setParams().

void DtInteractionMsg::getParams ( DtPhvps &  params,
bool  useMsgMemory,
DtInteractionClassInfo classInfo = NULL 
) const
virtual

Parameter value set allocates own memory for values or accesses the message's memory directly Fills in only subscribed parameters if class info is provided otherwise gets all parameters in message.

References fillFromNetBigParams(), fillFromNetParams(), netBigParams(), netParams(), and DtRtiMsg::use32BitsForValueSize().

Referenced by DtInteractionRoMsg::printData(), and DtInteractionMgr::processInteraction().

virtual DtInteractionClassHandle DtInteractionMsg::handle ( ) const
pure virtual
virtual DtNetBigParams* DtInteractionMsg::netBigParams ( )
protectedpure virtual

Supports big parameter values > 64K.

Implemented in DtInteractionRoMsg.

Referenced by getParams(), numParams(), and setParams().

virtual DtNetParams* DtInteractionMsg::netParams ( )
protectedpure virtual

Returns pointer to the network rep of the pvList.

Implemented in DtInteractionRoMsg.

Referenced by getParams(), numParams(), setParams(), and setSizeOfNetParams().

DtNetBigParamValue * DtInteractionMsg::nextNetBigParam ( DtNetBigParamValue netParam) const
protectedvirtual

Supports parameter values > 64K.

References DtNetBigParamValue::totalSize().

Referenced by fillFromNetBigParams(), and fillNetBigParams().

DtNetParamValue * DtInteractionMsg::nextNetParam ( DtNetParamValue netParam) const
protectedvirtual

Find pointer to next parameter in the network rep.

References DtNetParamValue::totalSize().

Referenced by fillFromNetParams(), and fillNetParams().

unsigned long DtInteractionMsg::numParams ( ) const
virtual
DtInteractionMsg * DtInteractionMsg::self ( ) const
inlineprotectedvirtual

Returns pointer to the serial number in the netMsg.

Casts away const-ness

void DtInteractionMsg::setChannel ( unsigned long  handleValue)
virtual

Set/Get DDM channel.

References channelIncluded(), and channelPtr().

Referenced by DtInteractionRoMsg::DtInteractionRoMsg(), and DtInteractionRoMsg::set().

void DtInteractionMsg::setChannelIncluded ( bool  includeChannel)
static

Set/Get flag to include DDM channel identifier.

References theChannelIncluded.

Referenced by DtFedExec::DtFedExec(), DtInteractionMgr::DtInteractionMgr(), and DtConnectionMgr::initParams().

virtual void DtInteractionMsg::setHandle ( DtInteractionClassHandle  hand)
pure virtual

Set/Get handle.

Implemented in DtInteractionRoMsg.

void DtInteractionMsg::setParams ( const DtPhvps &  theParameters,
bool  checkBufferSize = true 
)
virtual
void DtInteractionMsg::setSizeOfNetParams ( unsigned long  size)
protectedvirtual

Sets size for the network rep of the pvList.

References DtRtiMsg::adjustBytes(), myParamFieldLength, and netParams().

Referenced by setParams().

void DtInteractionMsg::setTag ( char const *  tag)
virtual
virtual void DtInteractionMsg::setTagSize ( int  size)
protectedpure virtual

Set/Get tag size.

Implemented in DtInteractionRoMsg.

Referenced by setTag().

unsigned long DtInteractionMsg::sizeNeededForNetParams ( const DtPhvps &  params) const
protectedvirtual

Returns the size the network representation will consume.

References DtRtiMsg::use32BitsForValueSize().

Referenced by setParams().

char const * DtInteractionMsg::tag ( ) const
virtual
int DtInteractionMsg::tagFieldSize ( ) const
protectedvirtual
virtual char* DtInteractionMsg::tagPtr ( )
protectedpure virtual

Returns pointer to the tag in the netMsg.

Implemented in DtInteractionRoMsg.

Referenced by setTag(), and tag().

virtual int DtInteractionMsg::tagSize ( ) const
protectedpure virtual

Implemented in DtInteractionRoMsg.

Referenced by setTag(), tag(), and tagFieldSize().

Member Data Documentation

unsigned long DtInteractionMsg::myParamFieldLength
protected
char* DtInteractionMsg::myTag
protected

Referenced by setTag(), tag(), and ~DtInteractionMsg().

bool DtInteractionMsg::theChannelIncluded = false
staticprotected

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

Document ID: Generated on Tue May 7 16:26:47 EDT 2013 from SVN revision 126903
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)