21 #include <vlutil/vlBaseMsg.h>
22 #include <vlutil/vlString.h>
29 #define MSG_STATUS_OK 0
30 #define MSG_STATUS_NOT_OK 1
44 virtual DtRtiMsg* clone(
bool copy =
true)
const =0;
48 virtual DtRtiMsg* cloneWithTransport(
bool copy =
true)
const;
54 virtual int version()
const;
57 virtual bool isValidVersion()
const;
72 virtual void setFedEx(
const MAKRti::DtString& name);
75 virtual void setFedEx(
int handle);
80 virtual bool isForExec(
const MAKRti::DtString& execName,
int execHandle)
const;
86 virtual const MAKRti::DtString fedExName()
const;
91 virtual int fedExHandle()
const;
102 virtual void setSequenceNumber(
unsigned long value);
103 virtual unsigned long sequenceNumber()
const;
108 virtual void setServiceCallNumber(
unsigned long value);
109 virtual unsigned long serviceCallNumber()
const;
115 virtual void setTriggerMessageNumber(
unsigned long value);
116 virtual unsigned long triggerMessageNumber()
const;
123 virtual const char* kindString()
const;
126 virtual bool isConstrained()
const;
129 virtual bool isAllowedDuringSave()
const;
138 virtual bool hasTime()
const;
143 virtual void setSerialNumber(
unsigned long serialNumberValue);
144 virtual unsigned long serialNumber()
const;
154 virtual bool isMetadataPresent()
const;
162 virtual bool addMetadata( caddr_t* mtdAddr,
unsigned int size,
163 unsigned int* alignPad,
unsigned int* headerPad =
NULL );
167 virtual void removeMetadata(
unsigned int size );
171 bool isInteractionMsgType()
const;
172 bool isUpdateMsgType()
const;
182 virtual void printTime(
const char* label,
DtRtiApiTime const * timeValue)
const;
188 virtual int status()
const;
193 static inline const DtNetMsgHeader* netHeader(
const void *buffer);
199 static const char* kindString(
const void *buffer);
202 static unsigned long totalSize(
const void* buffer);
208 static unsigned int version(
const void* buffer);
211 static unsigned int fedExHandle(
const void* buffer);
217 static unsigned long sequenceNumber(
const void* buffer);
220 static unsigned char flags(
const void* buffer);
223 static unsigned long metadataSize(
const void* buffer);
226 static void setDefaultRegionSet(
unsigned long defaultRegionSet);
229 static void setUse32BitsForValueSize(
bool use32BitsForValueSizeEnabled);
230 static bool use32BitsForValueSize();
233 static void setSmartForwardingEnabled(
bool enabled );
234 static bool smartForwardingEnabled();
237 virtual int timeFieldSize(
int encodedLength)
const;
240 virtual int tagFieldSize(
int encodedLength)
const;
245 #if !defined(DtIFSPEC13)
248 static const char* theDefaultTag;
260 virtual void sizeChanged(
int size);
263 void initDtRtiMsg(
int size,
DtRtiMsgKind msgKindVal, DtBufferPtr buffer);
264 void initDtRtiMsg(
const void *initial,
int size, DtBufferPtr buffer);
265 void initDtRtiMsg(
const DtNetMsgHeader *header, DtBufferPtr buffer);
269 virtual void adjustBytes(
int offset,
int numBytes);
274 virtual void adjustBytes(
void *address,
int numBytes);
327 deleteBytes(offset, -numBytes);
336 deleteBytes(address, -numBytes);
DtRtiMsgKind
Definition: rtiMsgKind.h:9
static const DtRtiApiVariableLengthData theDefaultTag
Definition: rtiMsg.h:246
unsigned long myServiceCallNumber
Definition: rtiMsg.h:285
bool myConstrained
Definition: rtiMsg.h:282
RTI_API::VariableLengthData DtRtiApiVariableLengthData
Definition: rtiApiTypes.h:95
Definition: fedTimeFactory.h:73
virtual void adjustBytes(int offset, int numBytes)
Adjust numBytes bytes at the indicated offset in the net rep.
Definition: rtiMsg.h:321
bool myTimeIsValid
Definition: rtiMsg.h:281
RTI_API::LogicalTime DtRtiApiTime
Typedefs for RTI API types that frequently require conditional precompile directives.
Definition: rtiApiTypes.h:91
static unsigned long theDefaultRegionSetHandle
Definition: rtiMsg.h:244
#define NULL
Definition: baseTypes13.h:8
bool myAllowedDuringSave
Definition: rtiMsg.h:283
unsigned long mySerialNumber
Definition: rtiMsg.h:284
DtRtiMsg is the base class for messages between RTI components.
Definition: rtiMsg.h:34
DtHandle DtFederateHandle
Definition: internalTypes.h:46
DtHandle DtTransportHandle
Definition: internalTypes.h:59
#define MSG_STATUS_OK
Definition: rtiMsg.h:29
virtual DtNetMsgHeader * netHeader() const
Get header of network representation.
Definition: rtiMsg.h:295
static bool theUse32BitsForValueSize
Definition: rtiMsg.h:290
virtual int status() const
Returns MSG_STATUS_OK if OK, a reason enumeration otherwise.
Definition: rtiMsg.h:310
virtual DtRtiMsgKind msgKind() const
Get the message kind.
Definition: rtiMsg.h:305
void insertBytes(std::vector< Octet > &wrapper, size_t length)
Insert bytes into the octet buffer.
Definition: encodingImplHelpers.h:125
unsigned long myTriggerMessage
Definition: rtiMsg.h:286
DtRtiApiTime * myFedTime
Definition: rtiMsg.h:280
#define DT_DLL_LRC
Definition: rtiMsConfig.h:155
RTI_API::LogicalTimeInterval DtRtiApiTimeInterval
Definition: rtiApiTypes.h:92
The declaration of internal types.
static bool theSmartForwardingEnabled
Definition: rtiMsg.h:292
DtOrderHandle myOrderType
Definition: rtiMsg.h:279
DtHandle DtOrderHandle
Definition: internalTypes.h:58
virtual DtFederateHandle federateHandle() const
Set/Get federate handle.
Definition: rtiMsg.h:315
DtTransportHandle myTransportType
Definition: rtiMsg.h:278