OMNeT++ Parallel Simulation Support  6.0.3
cCommBufferBase Class Reference

#include <ccommbufferbase.h>

Description

Adds buffer (re)allocation functions to cCommBuffer. This functionality is not always needed, as some libraries manage their pack/unpack buffers internally.

Inheritance diagram for cCommBufferBase:
cCommBuffer cObject cFileCommBuffer cMemCommBuffer

Public Member Functions

 cCommBufferBase ()
 
virtual ~cCommBufferBase ()
 
Buffer management
char * getBuffer () const
 
int getBufferLength () const
 
void allocateAtLeast (int size)
 
void setMessageSize (int size)
 
int getMessageSize () const
 
void reset ()
 
virtual bool isBufferEmpty () const override
 
virtual void assertBufferEmpty () override
 
virtual void swap (cCommBufferBase *other)
 

Constructor & Destructor Documentation

◆ cCommBufferBase()

cCommBufferBase ( )
inline

Constructor.

◆ ~cCommBufferBase()

virtual ~cCommBufferBase ( )
virtual

Destructor.

Member Function Documentation

◆ getBuffer()

char* getBuffer ( ) const

Returns the buffer after packing.

◆ getBufferLength()

int getBufferLength ( ) const

Returns the size of the buffer.

◆ allocateAtLeast()

void allocateAtLeast ( int  size)

Extend buffer to the given size is needed. Existing buffer contents may be lost.

◆ setMessageSize()

void setMessageSize ( int  size)

Set message length in the buffer. Used after receiving a message and copying it to the buffer.

◆ getMessageSize()

int getMessageSize ( ) const

Returns message length in the buffer.

◆ reset()

void reset ( )

Reset buffer to an empty state.

◆ isBufferEmpty()

virtual bool isBufferEmpty ( ) const
overridevirtual

Returns true if all data in buffer was used up during unpacking. Returns false if there was underflow (too much data unpacked) or still there are unpacked data in the buffer.

Implements cCommBuffer.

◆ assertBufferEmpty()

virtual void assertBufferEmpty ( )
overridevirtual

Utility function. To be called after unpacking a communication buffer, it checks whether the buffer is empty. If it is not (i.e. an underflow or overflow occurred), an exception is thrown.

Implements cCommBuffer.

◆ swap()

virtual void swap ( cCommBufferBase other)
virtual

Utility method: swap the contents of the two buffers


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