Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

TAO_Marshal_Any Class Reference

TAO_Marshal_Any. More...

#include <Marshal.h>

Inheritance diagram for TAO_Marshal_Any:

Inheritance graph
[legend]
Collaboration diagram for TAO_Marshal_Any:

Collaboration graph
[legend]
List of all members.

Public Methods

 TAO_Marshal_Any (void)
virtual CORBA::TypeCode::traverse_status skip (CORBA::TypeCode_ptr tc, TAO_InputCDR *context ACE_ENV_ARG_DECL)
 skip operation. More...

virtual CORBA::TypeCode::traverse_status append (CORBA::TypeCode_ptr tc, TAO_InputCDR *src, TAO_OutputCDR *dest ACE_ENV_ARG_DECL)
 append operation. More...


Detailed Description

TAO_Marshal_Any.

Marshal an Any

Definition at line 130 of file Marshal.h.


Constructor & Destructor Documentation

ACE_INLINE TAO_Marshal_Any::TAO_Marshal_Any void   
 

Definition at line 14 of file Marshal.i.

00015 {
00016 }


Member Function Documentation

CORBA::TypeCode::traverse_status TAO_Marshal_Any::append CORBA::TypeCode_ptr    tc,
TAO_InputCDR   src,
TAO_OutputCDR *dest    ACE_ENV_ARG_DECL
[virtual]
 

append operation.

Implements TAO_Marshal_Object.

Definition at line 102 of file append.cpp.

References ACE_CHECK_RETURN, ACE_DEBUG, ACE_ENV_ARG_DECL, ACE_ENV_ARG_PARAMETER, ACE_TEXT, ACE_THROW_RETURN, LM_DEBUG, TAO_Marshal_Object::perform_append, and TAO_DEFAULT_MINOR_CODE.

Referenced by TAO_Marshal_Object::perform_append.

00106 {
00107   // Typecode of the element that makes the Any.
00108   CORBA::TypeCode_var elem_tc;
00109 
00110   if (!(*src >> elem_tc.inout ()))
00111     ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE,
00112                                       CORBA::COMPLETED_MAYBE),
00113                       CORBA::TypeCode::TRAVERSE_STOP);
00114 
00115   if (!(*dest << elem_tc.in ()))
00116     ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE,
00117                                       CORBA::COMPLETED_MAYBE),
00118                       CORBA::TypeCode::TRAVERSE_STOP);
00119 
00120   // append the data
00121   CORBA::TypeCode::traverse_status retval =
00122     TAO_Marshal_Object::perform_append (elem_tc.in (),
00123                                         src,
00124                                         dest
00125                                          ACE_ENV_ARG_PARAMETER);
00126   ACE_CHECK_RETURN (CORBA::TypeCode::TRAVERSE_STOP);
00127 
00128   if (retval != CORBA::TypeCode::TRAVERSE_CONTINUE)
00129     {
00130       if (TAO_debug_level > 0)
00131         ACE_DEBUG ((LM_DEBUG,
00132                     ACE_TEXT ("TAO_Marshal_Any::append detected error\n")));
00133 
00134       ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE,
00135                                         CORBA::COMPLETED_MAYBE),
00136                         CORBA::TypeCode::TRAVERSE_STOP);
00137     }
00138 
00139   return retval;
00140 }

virtual CORBA::TypeCode::traverse_status TAO_Marshal_Any::skip CORBA::TypeCode_ptr    tc,
TAO_InputCDR *context    ACE_ENV_ARG_DECL
[virtual]
 

skip operation.

Implements TAO_Marshal_Object.


The documentation for this class was generated from the following files:
Generated on Mon Jun 16 15:28:14 2003 for TAO by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002