Public Member Functions

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 Member Functions

 TAO_Marshal_Any (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_Any.

Marshal an Any

Definition at line 136 of file Marshal.h.


Constructor & Destructor Documentation

TAO_Marshal_Any::TAO_Marshal_Any ( void   ) 

Definition at line 18 of file Marshal.inl.

{
}


Member Function Documentation

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

append operation

Implements TAO_Marshal_Object.

Definition at line 107 of file append.cpp.

{
  // Typecode of the element that makes the Any.
  CORBA::TypeCode_var elem_tc;

  if (!(*src >> elem_tc.inout ()))
    throw ::CORBA::MARSHAL (0, CORBA::COMPLETED_MAYBE);

  if (!(*dest << elem_tc.in ()))
    throw ::CORBA::MARSHAL (0, CORBA::COMPLETED_MAYBE);

  // append the data
  TAO::traverse_status retval =
    TAO_Marshal_Object::perform_append (elem_tc.in (), src, dest);

  if (retval != TAO::TRAVERSE_CONTINUE)
    {
      if (TAO_debug_level > 0)
        ACE_DEBUG ((LM_DEBUG,
                    ACE_TEXT ("TAO_Marshal_Any::append detected error\n")));

      throw ::CORBA::MARSHAL (0, CORBA::COMPLETED_MAYBE);
    }

  return retval;
}

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

skip operation

Implements TAO_Marshal_Object.

Definition at line 99 of file skip.cpp.

{
  // Typecode of the element that makes the Any.
  CORBA::TypeCode_var elem_tc;

  // Status of encode operation.
  if (!(*stream >> elem_tc.inout ()))
    return TAO::TRAVERSE_STOP;

  return TAO_Marshal_Object::perform_skip (elem_tc.in (), stream);
}


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines