VR-Link API Documentation for HLA 1516
Public Member Functions | Protected Member Functions | Protected Attributes

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

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

List of all members.

Public Member Functions

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.

Protected Member Functions

 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 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.
virtual void sizeChanged (int size)=0
 Called by changeSize.

Protected Attributes

void * myNetMsg
void * myInternalBuff
int myIntBuffSize
int myMsgSize

Detailed Description

A bass class for PDUs and other network messages.


Constructor & Destructor Documentation

virtual DtBaseMsg::~DtBaseMsg ( ) [virtual]

Destructor.

Copy constructor.

DtBaseMsg::DtBaseMsg ( ) [protected]

Constructor Object is not fully constructed until initMsg is called.


Member Function Documentation

virtual void DtBaseMsg::changeSize ( int  size) [protected, 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 ( ) [protected, virtual]

Zeros out all bytes in the network representation.

virtual void DtBaseMsg::deleteBytes ( int  offset,
int  numBytes 
) [protected, 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 
) [protected, 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 
) [protected]
void DtBaseMsg::initMsg ( const void *  initial,
int  size,
DtBufferPtr  bufferPtr 
) [protected]
virtual void DtBaseMsg::insertBytes ( int  offset,
int  numBytes 
) [protected, 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 
) [protected, 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.

const char * DtBaseMsg::netRep ( ) const [inline, virtual]

Get network representation.

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

virtual void* DtBaseMsg::newInternalBuffer ( int  size) [protected, 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) [protected, 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]

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

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)