#include <ccommbuffer.h>

This is an abstract class which has different implementations for specific communication mechanisms. For example, the MPI implementation, cMPICommBuffer encapsulates MPI_Pack() and MPI_Unpack().
Public Member Functions | |
| virtual | ~cCommBuffer () |
Buffer management | |
| virtual bool | isBufferEmpty () const =0 |
| virtual void | assertBufferEmpty ()=0 |
Pack basic types | |
| virtual void | pack (char d)=0 |
| virtual void | pack (unsigned char d)=0 |
| virtual void | pack (bool d)=0 |
| virtual void | pack (short d)=0 |
| virtual void | pack (unsigned short d)=0 |
| virtual void | pack (int d)=0 |
| virtual void | pack (unsigned int d)=0 |
| virtual void | pack (long d)=0 |
| virtual void | pack (unsigned long d)=0 |
| virtual void | pack (opp_long_long d)=0 |
| virtual void | pack (opp_unsigned_long_long d)=0 |
| virtual void | pack (float d)=0 |
| virtual void | pack (double d)=0 |
| virtual void | pack (long double d)=0 |
| virtual void | pack (const char *d)=0 |
| virtual void | pack (const opp_string &d)=0 |
| virtual void | pack (SimTime d)=0 |
Pack arrays of basic types | |
| virtual void | pack (const char *d, int size)=0 |
| virtual void | pack (const unsigned char *d, int size)=0 |
| virtual void | pack (const bool *d, int size)=0 |
| virtual void | pack (const short *d, int size)=0 |
| virtual void | pack (const unsigned short *d, int size)=0 |
| virtual void | pack (const int *d, int size)=0 |
| virtual void | pack (const unsigned int *d, int size)=0 |
| virtual void | pack (const long *d, int size)=0 |
| virtual void | pack (const unsigned long *d, int size)=0 |
| virtual void | pack (const opp_long_long *d, int size)=0 |
| virtual void | pack (const opp_unsigned_long_long *d, int size)=0 |
| virtual void | pack (const float *d, int size)=0 |
| virtual void | pack (const double *d, int size)=0 |
| virtual void | pack (const long double *d, int size)=0 |
| void | pack (char **d, int size) |
| virtual void | pack (const char **d, int size)=0 |
| virtual void | pack (const opp_string *d, int size)=0 |
| virtual void | pack (const SimTime *d, int size)=0 |
Unpack basic types | |
| virtual void | unpack (char &d)=0 |
| virtual void | unpack (unsigned char &d)=0 |
| virtual void | unpack (bool &d)=0 |
| virtual void | unpack (short &d)=0 |
| virtual void | unpack (unsigned short &d)=0 |
| virtual void | unpack (int &d)=0 |
| virtual void | unpack (unsigned int &d)=0 |
| virtual void | unpack (long &d)=0 |
| virtual void | unpack (unsigned long &d)=0 |
| virtual void | unpack (opp_long_long &d)=0 |
| virtual void | unpack (opp_unsigned_long_long &d)=0 |
| virtual void | unpack (float &d)=0 |
| virtual void | unpack (double &d)=0 |
| virtual void | unpack (long double &d)=0 |
| void | unpack (char *&d) |
| virtual void | unpack (const char *&d)=0 |
| virtual void | unpack (opp_string &d)=0 |
| virtual void | unpack (SimTime &d)=0 |
Unpack arrays of basic types | |
| virtual void | unpack (char *d, int size)=0 |
| virtual void | unpack (unsigned char *d, int size)=0 |
| virtual void | unpack (bool *d, int size)=0 |
| virtual void | unpack (short *d, int size)=0 |
| virtual void | unpack (unsigned short *d, int size)=0 |
| virtual void | unpack (int *d, int size)=0 |
| virtual void | unpack (unsigned int *d, int size)=0 |
| virtual void | unpack (long *d, int size)=0 |
| virtual void | unpack (unsigned long *d, int size)=0 |
| virtual void | unpack (opp_long_long *d, int size)=0 |
| virtual void | unpack (opp_unsigned_long_long *d, int size)=0 |
| virtual void | unpack (float *d, int size)=0 |
| virtual void | unpack (double *d, int size)=0 |
| virtual void | unpack (long double *d, int size)=0 |
| void | unpack (char **d, int size) |
| virtual void | unpack (const char **d, int size)=0 |
| virtual void | unpack (opp_string *d, int size)=0 |
| virtual void | unpack (SimTime *d, int size)=0 |
Utility functions | |
| bool | packFlag (bool flag) |
| bool | checkFlag () |
| virtual void | packObject (cObject *obj) |
| virtual cObject * | unpackObject () |
| virtual cCommBuffer::~cCommBuffer | ( | ) | [inline, virtual] |
Virtual destructor.
| virtual bool cCommBuffer::isBufferEmpty | ( | ) | const [pure virtual] |
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.
| virtual void cCommBuffer::assertBufferEmpty | ( | ) | [pure virtual] |
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.
| virtual void cCommBuffer::pack | ( | char | d | ) | [pure virtual] |
Packs a character.
| virtual void cCommBuffer::pack | ( | unsigned char | d | ) | [pure virtual] |
Packs an unsigned character.
| virtual void cCommBuffer::pack | ( | bool | d | ) | [pure virtual] |
Packs a bool.
| virtual void cCommBuffer::pack | ( | short | d | ) | [pure virtual] |
Packs a short int.
| virtual void cCommBuffer::pack | ( | unsigned short | d | ) | [pure virtual] |
Packs an unsigned short int.
| virtual void cCommBuffer::pack | ( | int | d | ) | [pure virtual] |
Packs an int.
| virtual void cCommBuffer::pack | ( | unsigned int | d | ) | [pure virtual] |
Packs an unsigned int.
| virtual void cCommBuffer::pack | ( | long | d | ) | [pure virtual] |
Packs a long int.
| virtual void cCommBuffer::pack | ( | unsigned long | d | ) | [pure virtual] |
Packs an unsigned long int.
| virtual void cCommBuffer::pack | ( | opp_long_long | d | ) | [pure virtual] |
Packs a long long (on MSVC, __int64).
| virtual void cCommBuffer::pack | ( | opp_unsigned_long_long | d | ) | [pure virtual] |
Packs an unsigned long long (on MSVC, __int64).
| virtual void cCommBuffer::pack | ( | float | d | ) | [pure virtual] |
Packs a float.
| virtual void cCommBuffer::pack | ( | double | d | ) | [pure virtual] |
Packs a double.
| virtual void cCommBuffer::pack | ( | long double | d | ) | [pure virtual] |
Packs a long double.
| virtual void cCommBuffer::pack | ( | const char * | d | ) | [pure virtual] |
Packs a string.
| virtual void cCommBuffer::pack | ( | const opp_string & | d | ) | [pure virtual] |
Packs a string.
| virtual void cCommBuffer::pack | ( | const char * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of chars.
| virtual void cCommBuffer::pack | ( | const unsigned char * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of unsigned chars.
| virtual void cCommBuffer::pack | ( | const bool * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of bools.
| virtual void cCommBuffer::pack | ( | const short * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of shorts.
| virtual void cCommBuffer::pack | ( | const unsigned short * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of unsigned shorts.
| virtual void cCommBuffer::pack | ( | const int * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of ints.
| virtual void cCommBuffer::pack | ( | const unsigned int * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of unsigned ints.
| virtual void cCommBuffer::pack | ( | const long * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of longs.
| virtual void cCommBuffer::pack | ( | const unsigned long * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of unsigned longs.
| virtual void cCommBuffer::pack | ( | const opp_long_long * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of long long's (on MSVC, __int64).
| virtual void cCommBuffer::pack | ( | const opp_unsigned_long_long * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of unsigned long long's (on MSVC, __int64).
| virtual void cCommBuffer::pack | ( | const float * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of floats.
| virtual void cCommBuffer::pack | ( | const double * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of doubles.
| virtual void cCommBuffer::pack | ( | const long double * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of long doubles.
| void cCommBuffer::pack | ( | char ** | d, | |
| int | size | |||
| ) | [inline] |
Packs an array of strings.
| virtual void cCommBuffer::pack | ( | const char ** | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of strings.
| virtual void cCommBuffer::pack | ( | const opp_string * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of opp_strings.
| virtual void cCommBuffer::pack | ( | const SimTime * | d, | |
| int | size | |||
| ) | [pure virtual] |
Packs an array of SimTimes.
| virtual void cCommBuffer::unpack | ( | char & | d | ) | [pure virtual] |
Unpacks a char.
| virtual void cCommBuffer::unpack | ( | unsigned char & | d | ) | [pure virtual] |
Unpacks an unsigned char.
| virtual void cCommBuffer::unpack | ( | bool & | d | ) | [pure virtual] |
Unpacks a bool.
| virtual void cCommBuffer::unpack | ( | short & | d | ) | [pure virtual] |
Unpacks a short.
| virtual void cCommBuffer::unpack | ( | unsigned short & | d | ) | [pure virtual] |
Unpacks an unsigned short.
| virtual void cCommBuffer::unpack | ( | int & | d | ) | [pure virtual] |
Unpacks an int.
| virtual void cCommBuffer::unpack | ( | unsigned int & | d | ) | [pure virtual] |
Unpacks an unsigned int.
| virtual void cCommBuffer::unpack | ( | long & | d | ) | [pure virtual] |
Unpacks a long.
| virtual void cCommBuffer::unpack | ( | unsigned long & | d | ) | [pure virtual] |
Unpacks an unsigned long.
| virtual void cCommBuffer::unpack | ( | opp_long_long & | d | ) | [pure virtual] |
Unpacks a long long (on MSVC, __int64).
| virtual void cCommBuffer::unpack | ( | opp_unsigned_long_long & | d | ) | [pure virtual] |
Unpacks an unsigned long long (on MSVC, __int64).
| virtual void cCommBuffer::unpack | ( | float & | d | ) | [pure virtual] |
Unpacks a float.
| virtual void cCommBuffer::unpack | ( | double & | d | ) | [pure virtual] |
Unpacks a double.
| virtual void cCommBuffer::unpack | ( | long double & | d | ) | [pure virtual] |
Unpacks a long double.
| void cCommBuffer::unpack | ( | char *& | d | ) | [inline] |
Unpacks a string -- storage will be allocated for it via new char[].
| virtual void cCommBuffer::unpack | ( | const char *& | d | ) | [pure virtual] |
Unpacks a string -- storage will be allocated for it via new char[].
| virtual void cCommBuffer::unpack | ( | opp_string & | d | ) | [pure virtual] |
Unpacks an opp_string.
| virtual void cCommBuffer::unpack | ( | char * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of chars.
| virtual void cCommBuffer::unpack | ( | unsigned char * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of unsigned chars.
| virtual void cCommBuffer::unpack | ( | bool * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of bools.
| virtual void cCommBuffer::unpack | ( | short * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of shorts.
| virtual void cCommBuffer::unpack | ( | unsigned short * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of unsigned shorts.
| virtual void cCommBuffer::unpack | ( | int * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of ints.
| virtual void cCommBuffer::unpack | ( | unsigned int * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of unsigned ints.
| virtual void cCommBuffer::unpack | ( | long * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of longs.
| virtual void cCommBuffer::unpack | ( | unsigned long * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of unsigned longs.
| virtual void cCommBuffer::unpack | ( | opp_long_long * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of long long's (on MSVC, __int64).
| virtual void cCommBuffer::unpack | ( | opp_unsigned_long_long * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of unsigned long long's (on MSVC, __int64).
| virtual void cCommBuffer::unpack | ( | float * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of floats.
| virtual void cCommBuffer::unpack | ( | double * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of doubles.
| virtual void cCommBuffer::unpack | ( | long double * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of long doubles.
| void cCommBuffer::unpack | ( | char ** | d, | |
| int | size | |||
| ) | [inline] |
Unpacks an array of strings -- storage for strings will be allocated via new char[].
| virtual void cCommBuffer::unpack | ( | const char ** | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of strings -- storage for strings will be allocated via new char[].
| virtual void cCommBuffer::unpack | ( | opp_string * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of opp_strings.
| virtual void cCommBuffer::unpack | ( | SimTime * | d, | |
| int | size | |||
| ) | [pure virtual] |
Unpacks an array of SimTime.
| bool cCommBuffer::packFlag | ( | bool | flag | ) | [inline] |
Stores and returns the given flag.
| bool cCommBuffer::checkFlag | ( | ) | [inline] |
Unpacks and returns a bool flag stored by packFlag().
| virtual void cCommBuffer::packObject | ( | cObject * | obj | ) | [virtual] |
Packs an object.
| virtual cObject* cCommBuffer::unpackObject | ( | ) | [virtual] |
Unpacks and returns an object.
1.5.5