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

A bass class for PDUs and other network messages. More...

+ Inheritance diagram for DtBaseMsg:
+ Collaboration diagram for DtBaseMsg:

Public Member Functions

virtual ~DtBaseMsg ()
 Destructor. More...
 
 DtBaseMsg (const DtBaseMsg &msg, DtBufferPtr buffer=DtUSE_INTERNAL_BUFFER)
 Copy constructor. More...
 
DtBaseMsgoperator= (const DtBaseMsg &msg)
 Assignment. More...
 
virtual const char * netRep () const
 Get network representation. More...
 
virtual int length () const
 Get size of message. More...
 
 DtBaseMsg ()
 Constructor Object is not fully constructed until initMsg is called. More...
 
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. More...
 
virtual void changeBufferSize (int size)
 Changes the size of the message buffer, but not the message itself. More...
 
virtual void insertBytes (int offset, int numBytes)
 Inserts numBytes zeroed-out bytes at the indicated offset into the net rep. More...
 
virtual void insertBytes (void *address, int numBytes)
 Inserts numBytes zeroed-out bytes at the indicated address. More...
 
virtual void deleteBytes (int offset, int numBytes)
 Deletes numBytes bytes at the indicated offset in the net rep. More...
 
virtual void deleteBytes (void *address, int numBytes)
 Deletes numBytes bytes starting at the indicated address. More...
 
virtual void clearAll ()
 Zeros out all bytes in the network representation. More...
 
virtual void * newInternalBuffer (int size)
 Sets myInternalBuff to point to a malloc'ed buffer of size bytes. More...
 
virtual void sizeChanged (int size)=0
 Called by changeSize. More...
 

Protected Attributes

void * myNetMsg
 
void * myInternalBuff
 
int myIntBuffSize
 
int myMsgSize
 
int myNetworkMsgSize
 

Detailed Description

A bass class for PDUs and other network messages.

Constructor & Destructor Documentation

virtual DtBaseMsg::~DtBaseMsg ( )
virtual

Destructor.

DtBaseMsg::DtBaseMsg ( const DtBaseMsg msg,
DtBufferPtr  buffer = DtUSE_INTERNAL_BUFFER 
)

Copy constructor.

DtBaseMsg::DtBaseMsg ( )

Constructor Object is not fully constructed until initMsg is called.

Member Function Documentation

virtual void DtBaseMsg::changeBufferSize ( int  size)
virtual

Changes the size of the message buffer, but not the message itself.

Can be used when you want to allocate space for a coupled message to be sent with the primary message while not changing the size of the primary message itself.

virtual void DtBaseMsg::changeSize ( int  size)
virtual

Changes the size of the message.

If we are using an external buffer, assumes that the full buffer size is big enough to accommodate the new msg size. If using an internal buffer, the call may result in allocating a new internal buffer, and copying data from the old to the new buffer.

virtual void DtBaseMsg::clearAll ( )
virtual

Zeros out all bytes in the network representation.

virtual void DtBaseMsg::deleteBytes ( int  offset,
int  numBytes 
)
virtual

Deletes numBytes bytes at the indicated offset in the net rep.

Uses change size to decrease the size of the buffer.

virtual void DtBaseMsg::deleteBytes ( void *  address,
int  numBytes 
)
virtual

Deletes numBytes bytes starting at the indicated address.

Assumes that address falls within the net rep. Uses changeSize to decrease the size of the buffer.

void DtBaseMsg::initMsg ( int  size,
DtBufferPtr  bufferPtr 
)
void DtBaseMsg::initMsg ( const void *  initial,
int  size,
DtBufferPtr  bufferPtr 
)
virtual void DtBaseMsg::insertBytes ( int  offset,
int  numBytes 
)
virtual

Inserts numBytes zeroed-out bytes at the indicated offset into the net rep.

Uses changeSize to increase the size of the buffer.

virtual void DtBaseMsg::insertBytes ( void *  address,
int  numBytes 
)
virtual

Inserts numBytes zeroed-out bytes at the indicated address.

Assumes that address falls within the net rep. Uses changeSize to increase the size of the buffer.

virtual int DtBaseMsg::length ( ) const
virtual

Get size of message.

Referenced by DtPdu::setPduLength().

const char * DtBaseMsg::netRep ( ) const
inlinevirtual

Get network representation.

Referenced by DtDatumRecordSet::netDataRep(), DtPdu::netHeader(), and DtPdu::packet().

virtual void* DtBaseMsg::newInternalBuffer ( int  size)
virtual

Sets myInternalBuff to point to a malloc'ed buffer of size bytes.

Sets myIntBuffSize to size. Returns myInternalBuff. Size must be a positive number.

DtBaseMsg& DtBaseMsg::operator= ( const DtBaseMsg msg)

Assignment.

virtual void DtBaseMsg::sizeChanged ( int  size)
pure virtual

Called by changeSize.

Derived versions can provide definitions that set the size field in network rep.

Implemented in DtDatumRecordSet, and DtPdu.

Member Data Documentation

int DtBaseMsg::myIntBuffSize
protected
void* DtBaseMsg::myInternalBuff
protected
int DtBaseMsg::myMsgSize
protected
void* DtBaseMsg::myNetMsg
protected
int DtBaseMsg::myNetworkMsgSize
protected

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

Document ID: Generated on Wed Mar 27 02:04:30 EDT 2024 from SVN revision 264570
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)