TAO_Marshal_Alias Class Reference

TAO_Marshal_Alias. More...

#include <Marshal.h>

Inheritance diagram for TAO_Marshal_Alias:

Inheritance graph
[legend]
Collaboration diagram for TAO_Marshal_Alias:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_Marshal_Alias (void)
virtual TAO::traverse_status skip (CORBA::TypeCode_ptr tc, TAO_InputCDR *context)
 skip operation
virtual TAO::traverse_status append (CORBA::TypeCode_ptr tc, TAO_InputCDR *src, TAO_OutputCDR *dest)
 append operation

Detailed Description

TAO_Marshal_Alias.

marshal an alias

Definition at line 334 of file Marshal.h.


Constructor & Destructor Documentation

ACE_INLINE TAO_Marshal_Alias::TAO_Marshal_Alias ( void   ) 

Definition at line 63 of file Marshal.inl.

00064 {
00065 }


Member Function Documentation

TAO::traverse_status TAO_Marshal_Alias::append ( CORBA::TypeCode_ptr  tc,
TAO_InputCDR src,
TAO_OutputCDR dest 
) [virtual]

append operation

Implements TAO_Marshal_Object.

Definition at line 1025 of file append.cpp.

References ACE_DEBUG, ACE_TEXT, CORBA::COMPLETED_MAYBE, CORBA::TypeCode::content_type(), TAO_Pseudo_Var_T< T >::in(), LM_DEBUG, TAO_Marshal_Object::perform_append(), and TAO_debug_level.

Referenced by TAO_Marshal_Object::perform_append().

01028 {
01029   // Typecode of the aliased type.
01030   CORBA::TypeCode_var tc2;
01031   CORBA::Boolean continue_append = true;
01032 
01033   // Status of decode operation.
01034   TAO::traverse_status retval =
01035     TAO::TRAVERSE_CONTINUE;
01036 
01037   tc2 = tc->content_type ();
01038 
01039   retval = TAO_Marshal_Object::perform_append (tc2.in (), src, dest);
01040 
01041   if (retval == TAO::TRAVERSE_CONTINUE
01042       && continue_append == true)
01043     return TAO::TRAVERSE_CONTINUE;
01044 
01045   if (TAO_debug_level > 0)
01046     ACE_DEBUG ((LM_DEBUG,
01047                 ACE_TEXT ("TAO_Marshal_Alias::append detected error\n")));
01048   throw ::CORBA::MARSHAL (0, CORBA::COMPLETED_MAYBE);
01049 }

TAO::traverse_status TAO_Marshal_Alias::skip ( CORBA::TypeCode_ptr  tc,
TAO_InputCDR context 
) [virtual]

skip operation

Implements TAO_Marshal_Object.

Definition at line 760 of file skip.cpp.

References ACE_DEBUG, ACE_TEXT, CORBA::COMPLETED_MAYBE, CORBA::TypeCode::content_type(), TAO_Pseudo_Var_T< T >::in(), LM_DEBUG, TAO_Marshal_Object::perform_skip(), and TAO_debug_level.

Referenced by TAO_Marshal_Object::perform_skip().

00761 {
00762   // Typecode of the aliased type.
00763   CORBA::TypeCode_var tc2;
00764   CORBA::Boolean continue_skipping = true;
00765 
00766   // Status of decode operation.
00767   TAO::traverse_status retval =
00768     TAO::TRAVERSE_CONTINUE;
00769 
00770   tc2 = tc->content_type ();
00771 
00772   retval = TAO_Marshal_Object::perform_skip (tc2.in (), stream);
00773 
00774   //  tc2->_decr_refcnt ();
00775   if (retval == TAO::TRAVERSE_CONTINUE
00776       && continue_skipping)
00777     return TAO::TRAVERSE_CONTINUE;
00778 
00779   if (TAO_debug_level > 0)
00780     ACE_DEBUG ((LM_DEBUG,
00781                 ACE_TEXT ("TAO_Marshal_Alias::skip detected error\n")));
00782 
00783   throw ::CORBA::MARSHAL (0, CORBA::COMPLETED_MAYBE);
00784 }


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 17:40:25 2010 for TAO_AnyTypeCode by  doxygen 1.4.7