62 virtual string toString(
void)
const throw();
63 virtual const char *what(
void)
const throw();
90 virtual string getSubject(
void)
const;
91 virtual void setSubject(
const string &subject) ;
92 virtual string getType(
void)
const;
93 virtual void setType(
const string &type) ;
94 virtual string getText(
void)
const;
95 virtual void setText(
const string &text) ;
97 virtual void setByteArrayLength(
int length) ;
98 virtual void resetByteArrayLength();
99 virtual int getByteArrayLength(
void);
100 virtual int getByteArrayLengthFull(
void);
101 virtual void setByteArrayOffset(
int offset) ;
102 virtual int getByteArrayOffset(
void);
103 virtual int getByteArrayEndian(
void);
104 virtual void setByteArrayEndian(
int endian) ;
105 virtual bool needToSwap(
void)
const;
106 virtual char* getByteArray(
void);
107 virtual void setByteArray(
char *array,
int length) ;
108 virtual void setByteArrayNoCopy(
char* array,
int length);
110 virtual int getUserInt(
void)
const;
111 virtual void setUserInt(
int i) ;
112 virtual struct timespec getUserTime(void) const;
113 virtual void setUserTime(
const struct timespec &userTime);
114 virtual int getVersion(
void)
const;
115 virtual string getDomain(
void)
const;
116 virtual string getReceiver(
void)
const;
117 virtual string getReceiverHost(
void)
const;
118 virtual string getSender(
void)
const;
119 virtual string getSenderHost(
void)
const;
120 virtual struct timespec getReceiverTime(void) const;
121 virtual struct timespec getSenderTime(void) const;
122 virtual bool isGetRequest(
void)
const;
123 virtual bool isGetResponse(
void)
const;
124 virtual bool isNullGetResponse(
void)
const;
126 virtual void makeNullResponse(
const cMsgMessage &msg) ;
127 virtual void makeNullResponse(
const cMsgMessage *msg) ;
128 virtual void makeResponse(
const cMsgMessage &msg) ;
129 virtual void makeResponse(
const cMsgMessage *msg) ;
131 virtual void setGetResponse(
bool b) ;
132 virtual void setNullGetResponse(
bool b) ;
133 virtual string toString(
void)
const;
137 virtual string getSubscriptionDomain()
const;
138 virtual string getSubscriptionSubject()
const;
139 virtual string getSubscriptionType()
const;
140 virtual string getSubscriptionUDL()
const;
141 virtual int getSubscriptionCueSize(
void)
const;
142 virtual bool getReliableSend(
void)
const;
143 virtual void setReliableSend(
bool b) ;
154 virtual bool hasPayload()
const;
156 virtual void payloadClear(
void);
157 virtual void payloadReset(
void);
158 virtual void payloadPrint(
void)
const;
161 virtual bool payloadRemoveField(
const string &name);
162 virtual string payloadGetText()
const;
163 virtual void payloadSetFromText(
const string &txt) ;
164 virtual string payloadGetFieldDescription(
const string &name)
const;
166 virtual map<string,int> *payloadGet()
const;
167 virtual int payloadGetCount()
const;
168 virtual bool payloadContainsName (
const string &name)
const;
169 virtual int payloadGetType (
const string &name)
const;
170 virtual void setHistoryLengthMax (
int len)
const;
176 virtual void getBinary(
const string &name,
const char **val,
int &len,
int &endian)
178 virtual void getBinaryArray(
const string &name,
const char ***vals,
int **lens,
int **endians,
int &count)
181 virtual cMsgMessage *getMessage(
const string &name)
const;
182 virtual vector<cMsgMessage> *getMessageVector(
const string &name)
const;
183 virtual vector<cMsgMessage*> *getMessagePVector(
const string &name)
const;
184 virtual cMsgMessage *getMessageArray (
const string &name)
const;
185 virtual cMsgMessage* *getMessagePArray (
const string &name)
const;
187 virtual string getString(
const string &name)
const;
188 virtual vector<string> *getStringVector(
const string &name)
const;
189 virtual string *getStringArray(
const string &name)
const;
191 virtual float getFloat(
const string &name)
const;
192 virtual vector<float> *getFloatVector(
const string &name)
const;
193 virtual float *getFloatArray(
const string &name)
const;
195 virtual double getDouble(
const string &name)
const;
196 virtual vector<double> *getDoubleVector(
const string &name)
const;
197 virtual double *getDoubleArray(
const string &name)
const;
199 virtual int8_t getInt8 (
const string &name)
const;
200 virtual int16_t getInt16 (
const string &name)
const;
201 virtual int32_t getInt32 (
const string &name)
const;
202 virtual int64_t getInt64 (
const string &name)
const;
204 virtual vector<int8_t> *getInt8Vector (
const string &name)
const;
205 virtual vector<int16_t> *getInt16Vector(
const string &name)
const;
206 virtual vector<int32_t> *getInt32Vector(
const string &name)
const;
207 virtual vector<int64_t> *getInt64Vector(
const string &name)
const;
209 virtual int8_t *getInt8Array (
const string &name)
const;
210 virtual int16_t *getInt16Array (
const string &name)
const;
211 virtual int32_t *getInt32Array (
const string &name)
const;
212 virtual int64_t *getInt64Array (
const string &name)
const;
215 virtual uint8_t getUint8 (
const string &name)
const;
216 virtual uint16_t getUint16(
const string &name)
const;
217 virtual uint32_t getUint32(
const string &name)
const;
218 virtual uint64_t getUint64(
const string &name)
const;
220 virtual vector<uint8_t> *getUint8Vector (
const string &name)
const;
221 virtual vector<uint16_t> *getUint16Vector(
const string &name)
const;
222 virtual vector<uint32_t> *getUint32Vector(
const string &name)
const;
223 virtual vector<uint64_t> *getUint64Vector(
const string &name)
const;
225 virtual uint8_t *getUint8Array (
const string &name)
const;
226 virtual uint16_t *getUint16Array (
const string &name)
const;
227 virtual uint32_t *getUint32Array (
const string &name)
const;
228 virtual uint64_t *getUint64Array (
const string &name)
const;
235 virtual void add(
const string &name,
const char *src,
int size,
int endian);
236 virtual void add(
const string &name,
const char **srcs,
int number,
237 const int sizes[],
const int endians[]);
239 virtual void add(
const string &name,
const string &s);
240 virtual void add(
const string &name,
const string *s);
241 virtual void add(
const string &name,
const char **strs,
int len);
242 virtual void add(
const string &name,
const string *strs,
int len);
243 virtual void add(
const string &name,
const vector<string> &strs);
244 virtual void add(
const string &name,
const vector<string> *strs);
246 virtual void add(
const string &name,
const cMsgMessage &msg);
247 virtual void add(
const string &name,
const cMsgMessage *msg);
248 virtual void add(
const string &name,
const cMsgMessage *msg,
int len);
249 virtual void add(
const string &name,
const cMsgMessage* *msg,
int len);
250 virtual void add(
const string &name,
const vector<cMsgMessage> &msgVec);
251 virtual void add(
const string &name,
const vector<cMsgMessage> *msgVec);
252 virtual void add(
const string &name,
const vector<cMsgMessage*> &msgPVec);
253 virtual void add(
const string &name,
const vector<cMsgMessage*> *msgPVec);
255 virtual void add(
const string &name,
float val);
256 virtual void add(
const string &name,
double val);
257 virtual void add(
const string &name,
const float *vals,
int len);
258 virtual void add(
const string &name,
const double *vals,
int len);
259 virtual void add(
const string &name,
const vector<float> &vals);
260 virtual void add(
const string &name,
const vector<float> *vals);
261 virtual void add(
const string &name,
const vector<double> &vals);
262 virtual void add(
const string &name,
const vector<double> *vals);
264 virtual void add(
const string &name, int8_t val);
265 virtual void add(
const string &name, int16_t val);
266 virtual void add(
const string &name, int32_t val);
267 virtual void add(
const string &name, int64_t val);
269 virtual void add(
const string &name, uint8_t val);
270 virtual void add(
const string &name, uint16_t val);
271 virtual void add(
const string &name, uint32_t val);
272 virtual void add(
const string &name, uint64_t val);
274 virtual void add(
const string &name,
const int8_t *vals,
int len);
275 virtual void add(
const string &name,
const int16_t *vals,
int len);
276 virtual void add(
const string &name,
const int32_t *vals,
int len);
277 virtual void add(
const string &name,
const int64_t *vals,
int len);
279 virtual void add(
const string &name,
const uint8_t *vals,
int len);
280 virtual void add(
const string &name,
const uint16_t *vals,
int len);
281 virtual void add(
const string &name,
const uint32_t *vals,
int len);
282 virtual void add(
const string &name,
const uint64_t *vals,
int len);
284 virtual void add(
const string &name,
const vector<int8_t> &vals);
285 virtual void add(
const string &name,
const vector<int8_t> *vals);
286 virtual void add(
const string &name,
const vector<int16_t> &vals);
287 virtual void add(
const string &name,
const vector<int16_t> *vals);
288 virtual void add(
const string &name,
const vector<int32_t> &vals);
289 virtual void add(
const string &name,
const vector<int32_t> *vals);
290 virtual void add(
const string &name,
const vector<int64_t> &vals);
291 virtual void add(
const string &name,
const vector<int64_t> *vals);
293 virtual void add(
const string &name,
const vector<uint8_t> &vals);
294 virtual void add(
const string &name,
const vector<uint8_t> *vals);
295 virtual void add(
const string &name,
const vector<uint16_t> &vals);
296 virtual void add(
const string &name,
const vector<uint16_t> *vals);
297 virtual void add(
const string &name,
const vector<uint32_t> &vals);
298 virtual void add(
const string &name,
const vector<uint32_t> *vals);
299 virtual void add(
const string &name,
const vector<uint64_t> &vals);
300 virtual void add(
const string &name,
const vector<uint64_t> *vals);
336 virtual int getMaxCueSize(
void)
const;
337 virtual void setMaxCueSize(
int size);
338 virtual int getSkipSize(
void)
const;
339 virtual void setSkipSize(
int size);
340 virtual bool getMaySkip(
void)
const;
341 virtual void setMaySkip(
bool maySkip);
342 virtual bool getMustSerialize(
void)
const;
343 virtual void setMustSerialize(
bool mustSerialize);
344 virtual int getMaxThreads(
void)
const;
345 virtual void setMaxThreads(
int max);
346 virtual int getMessagesPerThread(
void)
const;
347 virtual void setMessagesPerThread(
int mpt);
348 virtual size_t getStackSize(
void)
const;
349 virtual void setStackSize(
size_t size);
366 cMsg(
const string &UDL,
const string &name,
const string &descr);
368 virtual void connect() ;
369 virtual void disconnect(
void) ;
372 virtual int syncSend(
cMsgMessage &msg,
const struct timespec *timeout = NULL);
373 virtual int syncSend(
cMsgMessage *msg,
const struct timespec *timeout = NULL);
374 virtual void *subscribe(
const string &subject,
const string &type,
cMsgCallback *cb,
void *userArg,
376 virtual void *subscribe(
const string &subject,
const string &type,
cMsgCallback &cb,
void *userArg,
378 virtual void unsubscribe(
void *handle);
379 virtual void subscriptionPause(
void *handle) ;
380 virtual void subscriptionResume(
void *handle) ;
381 virtual void subscriptionQueueClear(
void *handle) ;
382 virtual int subscriptionQueueCount(
void *handle) ;
383 virtual bool subscriptionQueueIsFull(
void *handle) ;
384 virtual int subscriptionMessagesTotal(
void *handle);
389 virtual cMsgMessage *subscribeAndGet(
const string &subject,
const string &type,
const struct timespec *timeout = NULL)
391 virtual void flush(
const struct timespec *timeout = NULL);
392 virtual void start(
void);
393 virtual void stop(
void) ;
394 virtual void setUDL(
const string &udl);
395 virtual string getUDL(
void)
const;
396 virtual string getCurrentUDL(
void)
const;
397 virtual string getName(
void)
const;
398 virtual string getDescription(
void)
const;
399 virtual bool isConnected(
void)
const;
400 virtual bool isReceiving(
void)
const;
401 virtual void setShutdownHandler(cMsgShutdownHandler *handler,
void* userArg);
402 virtual void shutdownClients(
const string &client,
int flag);
403 virtual void shutdownServers(
const string &server,
int flag);
404 virtual cMsgMessage *monitor(
const string &monString) ;
405 virtual void setMonitoringString(
const string &monString) ;
420 #include <cMsgPrivate.hxx>
Interface defines callback method.
virtual void callback(cMsgMessage *msg, void *userObject)=0
Exception includes description and return code.
int returnCode
Return code.
Wraps most cMsg C calls, provides main functionality.
Class for wrapping cMsg message.
void * myMsgPointer
Pointer to C message structure.
Manages subscriptions configurations.
cMsgSubscribeConfig * config
Pointer to subscription config struct.
All cMsg symbols reside in the cmsg namespace.