ACE 7.0.7
Public Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
ACE_SizeCDR Class Reference

A CDR stream for calculating size of the representation. More...

#include <CDR_Size.h>

Public Member Functions

 ACE_SizeCDR (ACE_CDR::Octet major_version=ACE_CDR_GIOP_MAJOR_VERSION, ACE_CDR::Octet minor_version=ACE_CDR_GIOP_MINOR_VERSION)
 Default constructor. More...
 
bool good_bit () const
 Returns false if an error has occurred. More...
 
void reset (void)
 Reset current size. More...
 
size_t total_length () const
 Return current size. More...
 
ACE_CDR::Boolean write_boolean (ACE_CDR::Boolean x)
 
ACE_CDR::Boolean write_char (ACE_CDR::Char x)
 
ACE_CDR::Boolean write_wchar (ACE_CDR::WChar x)
 
ACE_CDR::Boolean write_octet (ACE_CDR::Octet x)
 
ACE_CDR::Boolean write_short (ACE_CDR::Short x)
 
ACE_CDR::Boolean write_ushort (ACE_CDR::UShort x)
 
ACE_CDR::Boolean write_long (ACE_CDR::Long x)
 
ACE_CDR::Boolean write_ulong (ACE_CDR::ULong x)
 
ACE_CDR::Boolean write_longlong (const ACE_CDR::LongLong &x)
 
ACE_CDR::Boolean write_ulonglong (const ACE_CDR::ULongLong &x)
 
ACE_CDR::Boolean write_float (ACE_CDR::Float x)
 
ACE_CDR::Boolean write_double (const ACE_CDR::Double &x)
 
ACE_CDR::Boolean write_longdouble (const ACE_CDR::LongDouble &x)
 
ACE_CDR::Boolean write_fixed (const ACE_CDR::Fixed &x)
 
ACE_CDR::Boolean write_string (const ACE_CDR::Char *x)
 For string we offer methods that accept a precomputed length. More...
 
ACE_CDR::Boolean write_string (ACE_CDR::ULong len, const ACE_CDR::Char *x)
 
ACE_CDR::Boolean write_string (const ACE_CString &x)
 
ACE_CDR::Boolean write_wstring (const ACE_CDR::WChar *x)
 
ACE_CDR::Boolean write_wstring (ACE_CDR::ULong length, const ACE_CDR::WChar *x)
 
ACE_CDR::Boolean write_string (const std::string &x)
 
ACE_CDR::Boolean write_wstring (const std::wstring &x)
 
ACE_CDR::Boolean write_boolean_array (const ACE_CDR::Boolean *x, ACE_CDR::ULong length)
 
ACE_CDR::Boolean write_char_array (const ACE_CDR::Char *x, ACE_CDR::ULong length)
 
ACE_CDR::Boolean write_wchar_array (const ACE_CDR::WChar *x, ACE_CDR::ULong length)
 
ACE_CDR::Boolean write_octet_array (const ACE_CDR::Octet *x, ACE_CDR::ULong length)
 
ACE_CDR::Boolean write_short_array (const ACE_CDR::Short *x, ACE_CDR::ULong length)
 
ACE_CDR::Boolean write_ushort_array (const ACE_CDR::UShort *x, ACE_CDR::ULong length)
 
ACE_CDR::Boolean write_long_array (const ACE_CDR::Long *x, ACE_CDR::ULong length)
 
ACE_CDR::Boolean write_ulong_array (const ACE_CDR::ULong *x, ACE_CDR::ULong length)
 
ACE_CDR::Boolean write_longlong_array (const ACE_CDR::LongLong *x, ACE_CDR::ULong length)
 
ACE_CDR::Boolean write_ulonglong_array (const ACE_CDR::ULongLong *x, ACE_CDR::ULong length)
 
ACE_CDR::Boolean write_float_array (const ACE_CDR::Float *x, ACE_CDR::ULong length)
 
ACE_CDR::Boolean write_double_array (const ACE_CDR::Double *x, ACE_CDR::ULong length)
 
ACE_CDR::Boolean write_longdouble_array (const ACE_CDR::LongDouble *x, ACE_CDR::ULong length)
 
void adjust (size_t size)
 Adjust to size and count size octets. More...
 
void adjust (size_t size, size_t align)
 

Protected Attributes

ACE_CDR::Octet major_version_
 GIOP version information. More...
 
ACE_CDR::Octet minor_version_
 

Private Member Functions

 ACE_SizeCDR (const ACE_SizeCDR &)=delete
 
ACE_SizeCDRoperator= (const ACE_SizeCDR &)=delete
 
 ACE_SizeCDR (ACE_SizeCDR &&)=delete
 
ACE_SizeCDRoperator= (ACE_SizeCDR &&)=delete
 
ACE_CDR::Boolean write_1 (const ACE_CDR::Octet *x)
 
ACE_CDR::Boolean write_2 (const ACE_CDR::UShort *x)
 
ACE_CDR::Boolean write_4 (const ACE_CDR::ULong *x)
 
ACE_CDR::Boolean write_8 (const ACE_CDR::ULongLong *x)
 
ACE_CDR::Boolean write_16 (const ACE_CDR::LongDouble *x)
 
ACE_CDR::Boolean write_array (const void *x, size_t size, size_t align, ACE_CDR::ULong length)
 
ACE_CDR::Boolean write_wchar_array_i (const ACE_CDR::WChar *x, ACE_CDR::ULong length)
 

Private Attributes

bool good_bit_
 Set to false when an error occurs. More...
 
size_t size_
 Current size. More...
 

Detailed Description

A CDR stream for calculating size of the representation.

Constructor & Destructor Documentation

◆ ACE_SizeCDR() [1/3]

ACE_SizeCDR::ACE_SizeCDR ( ACE_CDR::Octet  major_version = ACE_CDR_GIOP_MAJOR_VERSION,
ACE_CDR::Octet  minor_version = ACE_CDR_GIOP_MINOR_VERSION 
)
inline

Default constructor.

◆ ACE_SizeCDR() [2/3]

ACE_SizeCDR::ACE_SizeCDR ( const ACE_SizeCDR )
privatedelete

◆ ACE_SizeCDR() [3/3]

ACE_SizeCDR::ACE_SizeCDR ( ACE_SizeCDR &&  )
privatedelete

Member Function Documentation

◆ adjust() [1/2]

void ACE_SizeCDR::adjust ( size_t  size)

Adjust to size and count size octets.

◆ adjust() [2/2]

void ACE_SizeCDR::adjust ( size_t  size,
size_t  align 
)

As above, but now the size and alignment requirements may be different.

◆ good_bit()

bool ACE_SizeCDR::good_bit ( ) const
inline

Returns false if an error has occurred.

◆ operator=() [1/2]

ACE_SizeCDR & ACE_SizeCDR::operator= ( ACE_SizeCDR &&  )
privatedelete

◆ operator=() [2/2]

ACE_SizeCDR & ACE_SizeCDR::operator= ( const ACE_SizeCDR )
privatedelete

◆ reset()

void ACE_SizeCDR::reset ( void  )
inline

Reset current size.

◆ total_length()

size_t ACE_SizeCDR::total_length ( ) const
inline

Return current size.

◆ write_1()

ACE_CDR::Boolean ACE_SizeCDR::write_1 ( const ACE_CDR::Octet x)
private

◆ write_16()

ACE_CDR::Boolean ACE_SizeCDR::write_16 ( const ACE_CDR::LongDouble x)
private

◆ write_2()

ACE_CDR::Boolean ACE_SizeCDR::write_2 ( const ACE_CDR::UShort x)
private

◆ write_4()

ACE_CDR::Boolean ACE_SizeCDR::write_4 ( const ACE_CDR::ULong x)
private

◆ write_8()

ACE_CDR::Boolean ACE_SizeCDR::write_8 ( const ACE_CDR::ULongLong x)
private

◆ write_array()

ACE_CDR::Boolean ACE_SizeCDR::write_array ( const void *  x,
size_t  size,
size_t  align,
ACE_CDR::ULong  length 
)
private

write an array of length elements, each of size bytes and the start aligned at a multiple of <align>. The elements are assumed to be packed with the right alignment restrictions. It is mostly designed for buffers of the basic types.

This operation uses <memcpy>; as explained above it is expected that using assignment is faster that <memcpy> for one element, but for several elements <memcpy> should be more efficient, it could be interesting to find the break even point and optimize for that case, but that would be too platform dependent.

◆ write_boolean()

ACE_CDR::Boolean ACE_SizeCDR::write_boolean ( ACE_CDR::Boolean  x)
inline

◆ write_boolean_array()

ACE_CDR::Boolean ACE_SizeCDR::write_boolean_array ( const ACE_CDR::Boolean x,
ACE_CDR::ULong  length 
)
Note
the portion written starts at <x> and ends at <x + length>. The length is NOT stored into the CDR stream.

◆ write_char()

ACE_CDR::Boolean ACE_SizeCDR::write_char ( ACE_CDR::Char  x)
inline

◆ write_char_array()

ACE_CDR::Boolean ACE_SizeCDR::write_char_array ( const ACE_CDR::Char x,
ACE_CDR::ULong  length 
)
inline

◆ write_double()

ACE_CDR::Boolean ACE_SizeCDR::write_double ( const ACE_CDR::Double x)
inline

◆ write_double_array()

ACE_CDR::Boolean ACE_SizeCDR::write_double_array ( const ACE_CDR::Double x,
ACE_CDR::ULong  length 
)
inline

◆ write_fixed()

ACE_CDR::Boolean ACE_SizeCDR::write_fixed ( const ACE_CDR::Fixed x)
inline

◆ write_float()

ACE_CDR::Boolean ACE_SizeCDR::write_float ( ACE_CDR::Float  x)
inline

◆ write_float_array()

ACE_CDR::Boolean ACE_SizeCDR::write_float_array ( const ACE_CDR::Float x,
ACE_CDR::ULong  length 
)
inline

◆ write_long()

ACE_CDR::Boolean ACE_SizeCDR::write_long ( ACE_CDR::Long  x)
inline

◆ write_long_array()

ACE_CDR::Boolean ACE_SizeCDR::write_long_array ( const ACE_CDR::Long x,
ACE_CDR::ULong  length 
)
inline

◆ write_longdouble()

ACE_CDR::Boolean ACE_SizeCDR::write_longdouble ( const ACE_CDR::LongDouble x)
inline

◆ write_longdouble_array()

ACE_CDR::Boolean ACE_SizeCDR::write_longdouble_array ( const ACE_CDR::LongDouble x,
ACE_CDR::ULong  length 
)
inline

◆ write_longlong()

ACE_CDR::Boolean ACE_SizeCDR::write_longlong ( const ACE_CDR::LongLong x)
inline

◆ write_longlong_array()

ACE_CDR::Boolean ACE_SizeCDR::write_longlong_array ( const ACE_CDR::LongLong x,
ACE_CDR::ULong  length 
)
inline

◆ write_octet()

ACE_CDR::Boolean ACE_SizeCDR::write_octet ( ACE_CDR::Octet  x)
inline

◆ write_octet_array()

ACE_CDR::Boolean ACE_SizeCDR::write_octet_array ( const ACE_CDR::Octet x,
ACE_CDR::ULong  length 
)
inline

◆ write_short()

ACE_CDR::Boolean ACE_SizeCDR::write_short ( ACE_CDR::Short  x)
inline

◆ write_short_array()

ACE_CDR::Boolean ACE_SizeCDR::write_short_array ( const ACE_CDR::Short x,
ACE_CDR::ULong  length 
)
inline

◆ write_string() [1/4]

ACE_CDR::Boolean ACE_SizeCDR::write_string ( ACE_CDR::ULong  len,
const ACE_CDR::Char x 
)

◆ write_string() [2/4]

ACE_CDR::Boolean ACE_SizeCDR::write_string ( const ACE_CDR::Char x)
inline

For string we offer methods that accept a precomputed length.

◆ write_string() [3/4]

ACE_CDR::Boolean ACE_SizeCDR::write_string ( const ACE_CString x)

◆ write_string() [4/4]

ACE_CDR::Boolean ACE_SizeCDR::write_string ( const std::string &  x)
inline

◆ write_ulong()

ACE_CDR::Boolean ACE_SizeCDR::write_ulong ( ACE_CDR::ULong  x)
inline

◆ write_ulong_array()

ACE_CDR::Boolean ACE_SizeCDR::write_ulong_array ( const ACE_CDR::ULong x,
ACE_CDR::ULong  length 
)
inline

◆ write_ulonglong()

ACE_CDR::Boolean ACE_SizeCDR::write_ulonglong ( const ACE_CDR::ULongLong x)
inline

◆ write_ulonglong_array()

ACE_CDR::Boolean ACE_SizeCDR::write_ulonglong_array ( const ACE_CDR::ULongLong x,
ACE_CDR::ULong  length 
)
inline

◆ write_ushort()

ACE_CDR::Boolean ACE_SizeCDR::write_ushort ( ACE_CDR::UShort  x)
inline

◆ write_ushort_array()

ACE_CDR::Boolean ACE_SizeCDR::write_ushort_array ( const ACE_CDR::UShort x,
ACE_CDR::ULong  length 
)
inline

◆ write_wchar()

ACE_CDR::Boolean ACE_SizeCDR::write_wchar ( ACE_CDR::WChar  x)

◆ write_wchar_array()

ACE_CDR::Boolean ACE_SizeCDR::write_wchar_array ( const ACE_CDR::WChar x,
ACE_CDR::ULong  length 
)
inline

◆ write_wchar_array_i()

ACE_CDR::Boolean ACE_SizeCDR::write_wchar_array_i ( const ACE_CDR::WChar x,
ACE_CDR::ULong  length 
)
private

◆ write_wstring() [1/3]

ACE_CDR::Boolean ACE_SizeCDR::write_wstring ( ACE_CDR::ULong  length,
const ACE_CDR::WChar x 
)

◆ write_wstring() [2/3]

ACE_CDR::Boolean ACE_SizeCDR::write_wstring ( const ACE_CDR::WChar x)
inline

◆ write_wstring() [3/3]

ACE_CDR::Boolean ACE_SizeCDR::write_wstring ( const std::wstring &  x)
inline

Member Data Documentation

◆ good_bit_

bool ACE_SizeCDR::good_bit_
private

Set to false when an error occurs.

◆ major_version_

ACE_CDR::Octet ACE_SizeCDR::major_version_
protected

GIOP version information.

◆ minor_version_

ACE_CDR::Octet ACE_SizeCDR::minor_version_
protected

◆ size_

size_t ACE_SizeCDR::size_
private

Current size.


The documentation for this class was generated from the following files: