OverSim
cnetcommbuffer.h
Go to the documentation of this file.
1 //=========================================================================
2 // CMEMCOMMBUFFER.H - part of
3 //
4 // OMNeT++/OMNEST
5 // Discrete System Simulation in C++
6 //
7 // Written by: Andras Varga, 2003
8 //
9 //=========================================================================
10 
11 /*--------------------------------------------------------------*
12  Copyright (C) 2003-2005 Andras Varga
13  Monash University, Dept. of Electrical and Computer Systems Eng.
14  Melbourne, Australia
15 
16  This file is distributed WITHOUT ANY WARRANTY. See the file
17  `license' for details on this and other legal matters.
18 *--------------------------------------------------------------*/
19 #ifndef __CNETCOMMBUFFER_H__
20 #define __CNETCOMMBUFFER_H__
21 
22 #include <ccommbufferbase.h>
23 
24 
31 class cNetCommBuffer : public cCommBufferBase
32 {
33  public:
38 
42  virtual ~cNetCommBuffer();
43 
46  virtual void pack(char d);
47  virtual void pack(unsigned char d);
48  virtual void pack(bool d);
49  virtual void pack(short d);
50  virtual void pack(unsigned short d);
51  virtual void pack(int d);
52  virtual void pack(unsigned int d);
53  virtual void pack(long d);
54  virtual void pack(unsigned long d);
55  virtual void pack(opp_long_long d);
56  virtual void pack(opp_unsigned_long_long d);
57  virtual void pack(float d);
58  virtual void pack(double d);
59  virtual void pack(long double d);
60  virtual void pack(const char *d);
61  virtual void pack(const opp_string& d);
62  virtual void pack(SimTime d);
64 
67  virtual void pack(const char *d, int size);
68  virtual void pack(const unsigned char *d, int size);
69  virtual void pack(const bool *d, int size);
70  virtual void pack(const short *d, int size);
71  virtual void pack(const unsigned short *d, int size);
72  virtual void pack(const int *d, int size);
73  virtual void pack(const unsigned int *d, int size);
74  virtual void pack(const long *d, int size);
75  virtual void pack(const unsigned long *d, int size);
76  virtual void pack(const opp_long_long *d, int size);
77  virtual void pack(const opp_unsigned_long_long *d, int size);
78  virtual void pack(const float *d, int size);
79  virtual void pack(const double *d, int size);
80  virtual void pack(const long double *d, int size);
81  virtual void pack(const char **d, int size);
82  virtual void pack(const opp_string *d, int size);
83  virtual void pack(const SimTime *d, int size);
85 
88  virtual void unpack(char& d);
89  virtual void unpack(unsigned char& d);
90  virtual void unpack(bool& d);
91  virtual void unpack(short& d);
92  virtual void unpack(unsigned short& d);
93  virtual void unpack(int& d);
94  virtual void unpack(unsigned int& d);
95  virtual void unpack(long& d);
96  virtual void unpack(unsigned long& d);
97  virtual void unpack(opp_long_long& d);
98  virtual void unpack(opp_unsigned_long_long& d);
99  virtual void unpack(float& d);
100  virtual void unpack(double& d);
101  virtual void unpack(long double& d);
102  virtual void unpack(const char *&d);
106  void unpack(char *&d) {unpack((const char *&)d);}
107  virtual void unpack(opp_string& d);
108  virtual void unpack(SimTime&);
109 
111 
114  virtual void unpack(char *d, int size);
115  virtual void unpack(unsigned char *d, int size);
116  virtual void unpack(bool *d, int size);
117  virtual void unpack(short *d, int size);
118  virtual void unpack(unsigned short *d, int size);
119  virtual void unpack(int *d, int size);
120  virtual void unpack(unsigned int *d, int size);
121  virtual void unpack(long *d, int size);
122  virtual void unpack(unsigned long *d, int size);
123  virtual void unpack(opp_long_long *d, int size);
124  virtual void unpack(opp_unsigned_long_long *d, int size);
125  virtual void unpack(float *d, int size);
126  virtual void unpack(double *d, int size);
127  virtual void unpack(long double *d, int size);
128  virtual void unpack(const char **d, int size);
129  virtual void unpack(opp_string *d, int size);
130  virtual void unpack(SimTime *d, int size);
132 
136  size_t getRemainingMessageSize();
137 
141  virtual void packObject(cObject *obj);
142 
146  virtual cObject *unpackObject();
147 };
148 
149 #endif