#include <CDR_Base.h>
Public Types | |
typedef unsigned char | Boolean |
typedef unsigned char | Octet |
typedef char | Char |
typedef ACE_WCHAR_T | WChar |
typedef ACE_INT16 | Short |
typedef ACE_UINT16 | UShort |
typedef ACE_INT32 | Long |
typedef ACE_UINT32 | ULong |
typedef ACE_UINT64 | ULongLong |
typedef long long | LongLong |
enum | { OCTET_SIZE = 1, SHORT_SIZE = 2, LONG_SIZE = 4, LONGLONG_SIZE = 8, LONGDOUBLE_SIZE = 16, OCTET_ALIGN = 1, SHORT_ALIGN = 2, LONG_ALIGN = 4, LONGLONG_ALIGN = 8, LONGDOUBLE_ALIGN = 8, MAX_ALIGNMENT = 8, DEFAULT_BUFSIZE = ACE_DEFAULT_CDR_BUFSIZE, EXP_GROWTH_MAX = ACE_DEFAULT_CDR_EXP_GROWTH_MAX, LINEAR_GROWTH_CHUNK = ACE_DEFAULT_CDR_LINEAR_GROWTH_CHUNK } |
Static Public Methods | |
void | swap_2 (const char *orig, char *target) |
void | swap_4 (const char *orig, char *target) |
void | swap_8 (const char *orig, char *target) |
void | swap_16 (const char *orig, char *target) |
void | swap_2_array (const char *orig, char *target, size_t length) |
void | swap_4_array (const char *orig, char *target, size_t length) |
void | swap_8_array (const char *orig, char *target, size_t length) |
void | swap_16_array (const char *orig, char *target, size_t length) |
void | mb_align (ACE_Message_Block *mb) |
size_t | first_size (size_t minsize) |
size_t | next_size (size_t minsize) |
int | grow (ACE_Message_Block *mb, size_t minsize) |
void | consolidate (ACE_Message_Block *dst, const ACE_Message_Block *src) |
size_t | total_length (const ACE_Message_Block *begin, const ACE_Message_Block *end) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Copy a message block chain into a single message block, preserving the alignment of the first message block of the original stream, not the following message blocks. |
|
Compute the size of the smallest buffer that can contain at least <minsize> bytes. To understand how a "best fit" is computed look at the algorithm in the code. Basically the buffers grow exponentially, up to a certain point, then the buffer size grows linearly. The advantage of this algorithm is that is rapidly grows to a large value, but does not explode at the end. |
|
Increase the capacity of mb to contain at least <minsize> bytes. If <minsize> is zero the size is increased by an amount at least large enough to contain any of the basic IDL types. Return -1 on failure, 0 on success. |
|
Align the message block to ACE_CDR::MAX_ALIGNMENT, set by the CORBA spec at 8 bytes. |
|
Compute not the smallest, but the second smallest buffer that will fir <minsize> bytes. |
|
|
|
|
|
Do byte swapping for each basic IDL type size. There exist only routines to put byte, halfword (2 bytes), word (4 bytes), doubleword (8 bytes) and quadword (16 byte); because those are the IDL basic type sizes. |
|
|
|
|
|
|
|
|
|
|
|
|