MAK RTIspy API Documentation for HLA Evolved
Home
Modules
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
libsrc
rtiutil
msgBundler.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 2010 MaK Technologies, Inc.
3
** All rights reserved.
4
*********************************************************************/
5
/*********************************************************************
6
** $RCSfile: msgBundler.h,v $ $Revision: $ $State: Exp $
7
*********************************************************************/
8
12
13
#ifndef msgBundler_H_
14
#define msgBundler_H_
15
16
#include <
rtiMsConfig.h
>
17
#include <vlutil/vlMachineTypes.h>
18
#include <vlutil/vlSmartPointers.h>
19
#include <vector>
20
21
#include "
msgHeaderReader.h
"
22
26
class
DT_DLL_RTIUTIL
DtMsgBundler
27
{
28
public
:
29
31
DtMsgBundler
(DtBoost::shared_ptr<DtMsgHeaderReader> hdrReader,
size_t
maxBundleSize = 0,
size_t
byteAlignment = 0);
32
34
virtual
~
DtMsgBundler
();
35
38
virtual
bool
addToBundle(
char
* msg,
size_t
msgSize);
39
43
virtual
bool
getBundle(
char
** bundlePtr,
size_t
& bundleSize);
44
46
virtual
bool
isBundled(
const
char
* bufferPtr,
size_t
size)
const
;
47
51
virtual
bool
unbundle(
char
* bufferPtr,
size_t
size);
52
54
virtual
bool
isEmpty();
55
58
virtual
bool
recvNextMsgFromBundle(
char
** msgPtr,
size_t
& msgSize);
59
62
virtual
size_t
maxSendBundleSize()
const
;
63
virtual
void
setMaxSendBundleSize(
size_t
maxSize);
64
65
protected
:
66
68
std::vector<char>
mySendBundlingBuff
;
69
71
size_t
myCurrSendBundleSize
;
72
74
size_t
myRemainingRecvBundleSize
;
75
77
char
*
myNextRecvMsg
;
78
80
bool
myResizeSendBuff
;
81
83
size_t
myNewSendBuffSize
;
84
86
DtBoost::shared_ptr<DtMsgHeaderReader>
myHeaderReader
;
87
89
size_t
myMsgAddrByteAlignment
;
90
91
};
92
93
#endif
Document ID: Generated on Mon Mar 21 09:41:37 EDT 2016 from SVN revision 163228
Copyright © 2005-2015 VT MÄK Inc. All Rights Reserved (
www.mak.com
)