TAO  2.5.11
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
TAO_OutputCDR Class Reference

A CDR stream for writing, i.e. for marshalling. More...

#include <CDR.h>

Inheritance diagram for TAO_OutputCDR:
Inheritance graph
[legend]
Collaboration diagram for TAO_OutputCDR:
Collaboration graph
[legend]

Public Types

typedef ACE_Hash_Map_Manager< ACE_CString, char *, ACE_Null_MutexRepo_Id_Map
 
typedef Repo_Id_Map Codebase_URL_Map
 
typedef ACE_Hash_Map_Manager< void *, char *, ACE_Null_MutexValue_Map
 
typedef TAO_Intrusive_Ref_Count_Object< Repo_Id_Map, ACE_Null_MutexRC_Repo_Id_Map
 
typedef TAO_Intrusive_Ref_Count_Object< Codebase_URL_Map, ACE_Null_MutexRC_Codebase_URL_Map
 
typedef TAO_Intrusive_Ref_Count_Object< Value_Map, ACE_Null_MutexRC_Value_Map
 
typedef TAO_Intrusive_Ref_Count_Handle< RC_Repo_Id_MapRepo_Id_Map_Handle
 
typedef TAO_Intrusive_Ref_Count_Handle< RC_Codebase_URL_MapCodebase_URL_Map_Handle
 
typedef TAO_Intrusive_Ref_Count_Handle< RC_Value_MapValue_Map_Handle
 

Public Member Functions

 TAO_OutputCDR (size_t size=0, int byte_order=ACE_CDR_BYTE_ORDER, ACE_Allocator *buffer_allocator=0, ACE_Allocator *data_block_allocator=0, ACE_Allocator *message_block_allocator=0, size_t memcpy_tradeoff=0, ACE_CDR::Octet major_version=TAO_DEF_GIOP_MAJOR, ACE_CDR::Octet minor_version=TAO_DEF_GIOP_MINOR)
 
 TAO_OutputCDR (char *data, size_t size, int byte_order=ACE_CDR_BYTE_ORDER, ACE_Allocator *buffer_allocator=0, ACE_Allocator *data_block_allocator=0, ACE_Allocator *message_block_allocator=0, size_t memcpy_tradeoff=0, ACE_CDR::Octet major_version=TAO_DEF_GIOP_MAJOR, ACE_CDR::Octet minor_version=TAO_DEF_GIOP_MINOR)
 
 TAO_OutputCDR (char *data, size_t size, int byte_order, ACE_Allocator *buffer_allocator, ACE_Allocator *data_block_allocator, ACE_Allocator *message_block_allocator, size_t memcpy_tradeoff, TAO_GIOP_Fragmentation_Strategy *fs, ACE_CDR::Octet major_version, ACE_CDR::Octet minor_version)
 
 TAO_OutputCDR (ACE_Message_Block *data, int byte_order=ACE_CDR_BYTE_ORDER, size_t memcpy_tradeoff=0, ACE_CDR::Octet major_version=TAO_DEF_GIOP_MAJOR, ACE_CDR::Octet minor_version=TAO_DEF_GIOP_MINOR)
 
 TAO_OutputCDR (ACE_Data_Block *data, int byte_order=ACE_CDR_BYTE_ORDER, ACE_Allocator *message_block_allocator=0, size_t memcpy_tradeoff=0, TAO_GIOP_Fragmentation_Strategy *fs=0, ACE_CDR::Octet major_version=TAO_DEF_GIOP_MAJOR, ACE_CDR::Octet minor_version=TAO_DEF_GIOP_MINOR)
 
 ~TAO_OutputCDR (void)
 Destructor. More...
 
void get_version (TAO_GIOP_Message_Version &giop_version)
 
- Public Member Functions inherited from ACE_OutputCDR
 ACE_OutputCDR (size_t size=0, int byte_order=ACE_CDR::BYTE_ORDER_NATIVE, ACE_Allocator *buffer_allocator=0, ACE_Allocator *data_block_allocator=0, ACE_Allocator *message_block_allocator=0, size_t memcpy_tradeoff=ACE_DEFAULT_CDR_MEMCPY_TRADEOFF, ACE_CDR::Octet major_version=ACE_CDR_GIOP_MAJOR_VERSION, ACE_CDR::Octet minor_version=ACE_CDR_GIOP_MINOR_VERSION)
 
 ACE_OutputCDR (char *data, size_t size, int byte_order=ACE_CDR::BYTE_ORDER_NATIVE, ACE_Allocator *buffer_allocator=0, ACE_Allocator *data_block_allocator=0, ACE_Allocator *message_block_allocator=0, size_t memcpy_tradeoff=ACE_DEFAULT_CDR_MEMCPY_TRADEOFF, ACE_CDR::Octet giop_major_version=ACE_CDR_GIOP_MAJOR_VERSION, ACE_CDR::Octet giop_minor_version=ACE_CDR_GIOP_MINOR_VERSION)
 
 ACE_OutputCDR (ACE_Data_Block *data_block, int byte_order=ACE_CDR::BYTE_ORDER_NATIVE, ACE_Allocator *message_block_allocator=0, size_t memcpy_tradeoff=ACE_DEFAULT_CDR_MEMCPY_TRADEOFF, ACE_CDR::Octet giop_major_version=ACE_CDR_GIOP_MAJOR_VERSION, ACE_CDR::Octet giop_minor_version=ACE_CDR_GIOP_MINOR_VERSION)
 
 ACE_OutputCDR (ACE_Message_Block *data, int byte_order=ACE_CDR::BYTE_ORDER_NATIVE, size_t memcpy_tradeoff=ACE_DEFAULT_CDR_MEMCPY_TRADEOFF, ACE_CDR::Octet giop_major_version=ACE_CDR_GIOP_MAJOR_VERSION, ACE_CDR::Octet giop_minor_version=ACE_CDR_GIOP_MINOR_VERSION)
 
 ~ACE_OutputCDR (void)
 
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)
 
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)
 
ACE_CDR::Boolean write_octet_array_mb (const ACE_Message_Block *mb)
 
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)
 
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)
 
ACE_CDR::Boolean write_octet_array_mb (const ACE_Message_Block *mb)
 
char * write_long_placeholder (void)
 
char * write_short_placeholder (void)
 
char * write_boolean_placeholder (void)
 
char * write_char_placeholder (void)
 
char * write_longlong_placeholder (void)
 
char * write_octet_placeholder (void)
 
char * write_float_placeholder (void)
 
char * write_double_placeholder (void)
 
ACE_CDR::Boolean replace (ACE_CDR::Long x, char *loc)
 
ACE_CDR::Boolean replace (ACE_CDR::ULong x, char *loc)
 
ACE_CDR::Boolean replace (ACE_CDR::Short x, char *loc)
 
ACE_CDR::Boolean replace (ACE_CDR::UShort x, char *loc)
 
ACE_CDR::Boolean replace (ACE_CDR::Boolean x, char *loc)
 
ACE_CDR::Boolean replace (ACE_CDR::Char x, char *loc)
 
ACE_CDR::Boolean replace (ACE_CDR::LongLong x, char *loc)
 
ACE_CDR::Boolean replace (ACE_CDR::ULongLong x, char *loc)
 
ACE_CDR::Boolean replace (ACE_CDR::Octet x, char *loc)
 
ACE_CDR::Boolean replace (ACE_CDR::Float x, char *loc)
 
ACE_CDR::Boolean replace (ACE_CDR::Double x, char *loc)
 
ACE_CDR::Boolean append_boolean (ACE_InputCDR &)
 
ACE_CDR::Boolean append_char (ACE_InputCDR &)
 
ACE_CDR::Boolean append_wchar (ACE_InputCDR &)
 
ACE_CDR::Boolean append_octet (ACE_InputCDR &)
 
ACE_CDR::Boolean append_short (ACE_InputCDR &)
 
ACE_CDR::Boolean append_ushort (ACE_InputCDR &)
 
ACE_CDR::Boolean append_long (ACE_InputCDR &)
 
ACE_CDR::Boolean append_ulong (ACE_InputCDR &)
 
ACE_CDR::Boolean append_longlong (ACE_InputCDR &)
 
ACE_CDR::Boolean append_ulonglong (ACE_InputCDR &)
 
ACE_CDR::Boolean append_float (ACE_InputCDR &)
 
ACE_CDR::Boolean append_double (ACE_InputCDR &)
 
ACE_CDR::Boolean append_longdouble (ACE_InputCDR &)
 
ACE_CDR::Boolean append_fixed (ACE_InputCDR &)
 
ACE_CDR::Boolean append_wstring (ACE_InputCDR &)
 
ACE_CDR::Boolean append_string (ACE_InputCDR &)
 
bool good_bit (void) const
 
void reset (void)
 
size_t total_length (void) const
 
const ACE_Message_Blockbegin (void) const
 
const ACE_Message_Blockend (void) const
 
const ACE_Message_Blockcurrent (void) const
 
int consolidate (void)
 
const char * buffer (void) const
 
size_t length (void) const
 
int align_write_ptr (size_t alignment)
 
ACE_Char_Codeset_Translatorchar_translator (void) const
 
ACE_WChar_Codeset_Translatorwchar_translator (void) const
 
void char_translator (ACE_Char_Codeset_Translator *)
 
void wchar_translator (ACE_WChar_Codeset_Translator *)
 
size_t current_alignment (void) const
 
void current_alignment (size_t current_alignment)
 
int adjust (size_t size, char *&buf)
 
int adjust (size_t size, size_t align, char *&buf)
 
bool do_byte_swap (void) const
 
int byte_order (void) const
 
void reset_byte_order (int byte_order)
 
void set_version (ACE_CDR::Octet major, ACE_CDR::Octet minor)
 
void get_version (ACE_CDR::Octet &major, ACE_CDR::Octet &minor)
 

Static Public Member Functions

static void throw_stub_exception (int error_num)
 
static void throw_skel_exception (int error_num)
 
- Static Public Member Functions inherited from ACE_OutputCDR
static void wchar_maxbytes (size_t max_bytes)
 
static size_t wchar_maxbytes (void)
 

Private Attributes

Outgoing GIOP Fragment Related Attributes

These attributes are only used when fragmenting outgoing GIOP requests and replies.

TAO_GIOP_Fragmentation_Strategy *const fragmentation_strategy_
 
bool more_fragments_
 Are there more data fragments to come? More...
 
CORBA::ULong request_id_
 Request ID for the request currently being marshaled. More...
 
TAO_Stubstub_
 Stub object associated with the request. More...
 
TAO_Message_Semantics message_semantics_
 Twoway, oneway, reply? More...
 
ACE_Time_Valuetimeout_
 Request/reply send timeout. More...
 
Repo_Id_Map_Handle repo_id_map_
 These maps are used by valuetype indirection support. More...
 
Value_Map_Handle value_map_
 

Friends

class TAO_InputCDR
 For reading from a output CDR stream. More...
 

Outgoing GIOP Fragment Related Methods

These methods are only used when fragmenting outgoing GIOP requests and replies.

bool fragment_stream (ACE_CDR::ULong pending_alignment, ACE_CDR::ULong pending_length)
 Fragment this output CDR stream if necessary. More...
 
bool more_fragments (void) const
 Are there more data fragments to come? More...
 
void more_fragments (bool more)
 Specify whether there are more data fragments to come. More...
 
void message_attributes (CORBA::ULong request_id, TAO_Stub *stub, TAO_Message_Semantics message_semantics, ACE_Time_Value *timeout)
 Set fragmented message attributes. More...
 
CORBA::ULong request_id (void) const
 Fragmented message request ID. More...
 
TAO_Stubstub (void) const
 Stub object associated with the request. More...
 
TAO_Message_Semantics message_semantics (void) const
 Message semantics (twoway, oneway, reply) More...
 
ACE_Time_Valuetimeout (void) const
 Maximum time to wait for outgoing message to be sent. More...
 
Repo_Id_Map_Handleget_repo_id_map ()
 
Value_Map_Handleget_value_map ()
 Fragment this output CDR stream if necessary. More...
 
void set_repo_id_map (Repo_Id_Map_Handle &map)
 
void set_value_map (Value_Map_Handle &map)
 Fragment this output CDR stream if necessary. More...
 
void reset_vt_indirect_maps ()
 
int offset (char *pos)
 Calculate the offset between pos and current wr_ptr. More...
 
 TAO_OutputCDR (const TAO_OutputCDR &rhs)
 Fragment this output CDR stream if necessary. More...
 
TAO_OutputCDRoperator= (const TAO_OutputCDR &rhs)
 Fragment this output CDR stream if necessary. More...
 

Additional Inherited Members

- Protected Attributes inherited from ACE_OutputCDR
ACE_CDR::Octet major_version_
 
ACE_CDR::Octet minor_version_
 
ACE_Char_Codeset_Translatorchar_translator_
 
ACE_WChar_Codeset_Translatorwchar_translator_
 
- Static Protected Attributes inherited from ACE_OutputCDR
static size_t wchar_maxbytes_
 

Detailed Description

A CDR stream for writing, i.e. for marshalling.

This class is based on the the CORBA spec for Java (98-02-29), java class omg.org.CORBA.portable.OutputStream. It diverts in a few ways:

Member Typedef Documentation

◆ Codebase_URL_Map

◆ Codebase_URL_Map_Handle

◆ RC_Codebase_URL_Map

◆ RC_Repo_Id_Map

◆ RC_Value_Map

◆ Repo_Id_Map

◆ Repo_Id_Map_Handle

◆ Value_Map

◆ Value_Map_Handle

Constructor & Destructor Documentation

◆ TAO_OutputCDR() [1/6]

TAO_OutputCDR::TAO_OutputCDR ( size_t  size = 0,
int  byte_order = ACE_CDR_BYTE_ORDER,
ACE_Allocator buffer_allocator = 0,
ACE_Allocator data_block_allocator = 0,
ACE_Allocator message_block_allocator = 0,
size_t  memcpy_tradeoff = 0,
ACE_CDR::Octet  major_version = TAO_DEF_GIOP_MAJOR,
ACE_CDR::Octet  minor_version = TAO_DEF_GIOP_MINOR 
)

Default constructor, allocates size bytes in the internal buffer, if size == 0 it allocates the default size.

◆ TAO_OutputCDR() [2/6]

TAO_OutputCDR::TAO_OutputCDR ( char *  data,
size_t  size,
int  byte_order = ACE_CDR_BYTE_ORDER,
ACE_Allocator buffer_allocator = 0,
ACE_Allocator data_block_allocator = 0,
ACE_Allocator message_block_allocator = 0,
size_t  memcpy_tradeoff = 0,
ACE_CDR::Octet  major_version = TAO_DEF_GIOP_MAJOR,
ACE_CDR::Octet  minor_version = TAO_DEF_GIOP_MINOR 
)

Build a CDR stream with an initial buffer, it will not remove data, since it did not allocated it.

◆ TAO_OutputCDR() [3/6]

TAO_OutputCDR::TAO_OutputCDR ( char *  data,
size_t  size,
int  byte_order,
ACE_Allocator buffer_allocator,
ACE_Allocator data_block_allocator,
ACE_Allocator message_block_allocator,
size_t  memcpy_tradeoff,
TAO_GIOP_Fragmentation_Strategy fs,
ACE_CDR::Octet  major_version,
ACE_CDR::Octet  minor_version 
)

Build a CDR stream with an initial buffer, it will not remove data since it did not allocated it, and enable fragmentation support.

◆ TAO_OutputCDR() [4/6]

TAO_OutputCDR::TAO_OutputCDR ( ACE_Message_Block data,
int  byte_order = ACE_CDR_BYTE_ORDER,
size_t  memcpy_tradeoff = 0,
ACE_CDR::Octet  major_version = TAO_DEF_GIOP_MAJOR,
ACE_CDR::Octet  minor_version = TAO_DEF_GIOP_MINOR 
)

Build a CDR stream with an initial Message_Block chain, it will not remove data, since it did not allocate it.

◆ TAO_OutputCDR() [5/6]

TAO_OutputCDR::TAO_OutputCDR ( ACE_Data_Block data,
int  byte_order = ACE_CDR_BYTE_ORDER,
ACE_Allocator message_block_allocator = 0,
size_t  memcpy_tradeoff = 0,
TAO_GIOP_Fragmentation_Strategy fs = 0,
ACE_CDR::Octet  major_version = TAO_DEF_GIOP_MAJOR,
ACE_CDR::Octet  minor_version = TAO_DEF_GIOP_MINOR 
)

Build a CDR stream with an initial data block, it will not remove data, since it did not allocated it.

◆ ~TAO_OutputCDR()

TAO_OutputCDR::~TAO_OutputCDR ( void  )

Destructor.

◆ TAO_OutputCDR() [6/6]

TAO_OutputCDR::TAO_OutputCDR ( const TAO_OutputCDR rhs)
private

Fragment this output CDR stream if necessary.

Fragmentation will done through GIOP fragments when the length of the CDR stream length will exceed the configured threshold.

Member Function Documentation

◆ fragment_stream()

bool TAO_OutputCDR::fragment_stream ( ACE_CDR::ULong  pending_alignment,
ACE_CDR::ULong  pending_length 
)

Fragment this output CDR stream if necessary.

Fragmentation will done through GIOP fragments when the length of the CDR stream length will exceed the configured threshold.

◆ get_repo_id_map()

TAO_OutputCDR::Repo_Id_Map_Handle & TAO_OutputCDR::get_repo_id_map ( )

These methods are used by valuetype indirection support. Accessor to the indirect maps.

◆ get_value_map()

TAO_OutputCDR::Value_Map_Handle & TAO_OutputCDR::get_value_map ( )

Fragment this output CDR stream if necessary.

Fragmentation will done through GIOP fragments when the length of the CDR stream length will exceed the configured threshold.

◆ get_version()

void TAO_OutputCDR::get_version ( TAO_GIOP_Message_Version giop_version)

◆ message_attributes()

void TAO_OutputCDR::message_attributes ( CORBA::ULong  request_id,
TAO_Stub stub,
TAO_Message_Semantics  message_semantics,
ACE_Time_Value timeout 
)

Set fragmented message attributes.

◆ message_semantics()

TAO_Message_Semantics TAO_OutputCDR::message_semantics ( void  ) const

Message semantics (twoway, oneway, reply)

◆ more_fragments() [1/2]

void TAO_OutputCDR::more_fragments ( bool  more)

Specify whether there are more data fragments to come.

◆ more_fragments() [2/2]

bool TAO_OutputCDR::more_fragments ( void  ) const

Are there more data fragments to come?

◆ offset()

int TAO_OutputCDR::offset ( char *  pos)

Calculate the offset between pos and current wr_ptr.

◆ operator=()

TAO_OutputCDR& TAO_OutputCDR::operator= ( const TAO_OutputCDR rhs)
private

Fragment this output CDR stream if necessary.

Fragmentation will done through GIOP fragments when the length of the CDR stream length will exceed the configured threshold.

◆ request_id()

CORBA::ULong TAO_OutputCDR::request_id ( void  ) const

Fragmented message request ID.

◆ reset_vt_indirect_maps()

void TAO_OutputCDR::reset_vt_indirect_maps ( )

If indirect map is not nil and not empty, unbind all entries. Called after marshalling.

◆ set_repo_id_map()

void TAO_OutputCDR::set_repo_id_map ( TAO_OutputCDR::Repo_Id_Map_Handle map)

Updater of the maps. These updaters are used to make indirect maps in original stream take effect even during marshalling/demarshalling a redirected stream.

◆ set_value_map()

void TAO_OutputCDR::set_value_map ( TAO_OutputCDR::Value_Map_Handle map)

Fragment this output CDR stream if necessary.

Fragmentation will done through GIOP fragments when the length of the CDR stream length will exceed the configured threshold.

◆ stub()

TAO_Stub * TAO_OutputCDR::stub ( void  ) const

Stub object associated with the request.

◆ throw_skel_exception()

void TAO_OutputCDR::throw_skel_exception ( int  error_num)
static

◆ throw_stub_exception()

void TAO_OutputCDR::throw_stub_exception ( int  error_num)
static

◆ timeout()

ACE_Time_Value * TAO_OutputCDR::timeout ( void  ) const

Maximum time to wait for outgoing message to be sent.

Friends And Related Function Documentation

◆ TAO_InputCDR

friend class TAO_InputCDR
friend

For reading from a output CDR stream.

Member Data Documentation

◆ fragmentation_strategy_

TAO_GIOP_Fragmentation_Strategy* const TAO_OutputCDR::fragmentation_strategy_
private

Strategy that sends data currently marshaled into this TAO_OutputCDR stream if necessary.

◆ message_semantics_

TAO_Message_Semantics TAO_OutputCDR::message_semantics_
private

Twoway, oneway, reply?

See also
TAO_Transport

◆ more_fragments_

bool TAO_OutputCDR::more_fragments_
private

Are there more data fragments to come?

◆ repo_id_map_

Repo_Id_Map_Handle TAO_OutputCDR::repo_id_map_
private

These maps are used by valuetype indirection support.

◆ request_id_

CORBA::ULong TAO_OutputCDR::request_id_
private

Request ID for the request currently being marshaled.

◆ stub_

TAO_Stub* TAO_OutputCDR::stub_
private

Stub object associated with the request.

◆ timeout_

ACE_Time_Value* TAO_OutputCDR::timeout_
private

Request/reply send timeout.

◆ value_map_

Value_Map_Handle TAO_OutputCDR::value_map_
private

Strategy that sends data currently marshaled into this TAO_OutputCDR stream if necessary.


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