// -*- C++ -*-
//
// $Id$

// ****  Code generated by the The ACE ORB (TAO) IDL Compiler ****
// TAO and the TAO IDL Compiler have been developed by:
//       Center for Distributed Object Computing
//       Washington University
//       St. Louis, MO
//       USA
//       http://www.cs.wustl.edu/~schmidt/doc-center.html
// and
//       Distributed Object Computing Laboratory
//       University of California at Irvine
//       Irvine, CA
//       USA
//       http://doc.ece.uci.edu/
// and
//       Institute for Software Integrated Systems
//       Vanderbilt University
//       Nashville, TN
//       USA
//       http://www.isis.vanderbilt.edu/
//
// Information about TAO is available at:
//     http://www.cs.wustl.edu/~schmidt/TAO.html

// TAO_IDL - Generated from
// be/be_codegen.cpp:303


#include "sfpC.h"
#include "tao/CDR.h"
#include "tao/ORB_Core.h"
#include "tao/Typecode.h"
#include "tao/Any_Dual_Impl_T.h"
#include "tao/Any_Array_Impl_T.h"
#include "tao/Any_Basic_Impl_T.h"

#if defined (__BORLANDC__)
#pragma option -w-rvl -w-rch -w-ccc -w-aus -w-sig
#endif /* __BORLANDC__ */

#if !defined (__ACE_INLINE__)
#include "sfpC.inl"
#endif /* !defined __ACE_INLINE__ */

// TAO_IDL - Generated from
// be/be_visitor_arg_traits.cpp:64

// Arg traits specializations.
namespace TAO
{
}


// TAO_IDL - Generated from 
// be/be_visitor_sequence/sequence_cs.cpp:65

#if !defined (_FLOWPROTOCOL_MY_SEQ_ULONG_CS_)
#define _FLOWPROTOCOL_MY_SEQ_ULONG_CS_

flowProtocol::my_seq_ulong::my_seq_ulong (void)
{}

flowProtocol::my_seq_ulong::my_seq_ulong (
    CORBA::ULong max
  )
  : TAO_Unbounded_Sequence<
        CORBA::ULong
      >
    (max)
{}

flowProtocol::my_seq_ulong::my_seq_ulong (
    CORBA::ULong max,
    CORBA::ULong length,
    CORBA::ULong * buffer,
    CORBA::Boolean release
  )
  : TAO_Unbounded_Sequence<
        CORBA::ULong
      >
    (max, length, buffer, release)
{}

flowProtocol::my_seq_ulong::my_seq_ulong (
    const my_seq_ulong &seq
  )
  : TAO_Unbounded_Sequence<
        CORBA::ULong
      >
    (seq)
{}

flowProtocol::my_seq_ulong::~my_seq_ulong (void)
{}

void flowProtocol::my_seq_ulong::_tao_any_destructor (
    void * _tao_void_pointer
  )
{
  my_seq_ulong * _tao_tmp_pointer =
    static_cast<my_seq_ulong *> (_tao_void_pointer);
  delete _tao_tmp_pointer;
}

#endif /* end #if !defined */

// TAO_IDL - Generated from
// be/be_visitor_typecode/typecode_defn.cpp:290

static const CORBA::Long _oc_flowProtocol_my_seq_ulong[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  34,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x666c6f77), 
  ACE_NTOHL (0x50726f74), 
  ACE_NTOHL (0x6f636f6c), 
  ACE_NTOHL (0x2f6d795f), 
  ACE_NTOHL (0x7365715f), 
  ACE_NTOHL (0x756c6f6e), 
  ACE_NTOHL (0x673a312e), 
  ACE_NTOHL (0x30000000),  // repository ID = IDL:flowProtocol/my_seq_ulong:1.0
    13,
  ACE_NTOHL (0x6d795f73), 
  ACE_NTOHL (0x65715f75), 
  ACE_NTOHL (0x6c6f6e67), 
  ACE_NTOHL (0x0),  // name = my_seq_ulong
    CORBA::tk_sequence, // typecode kind
  12, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    CORBA::tk_ulong,

    0U,

};

static CORBA::TypeCode _tc_TAO_tc_flowProtocol_my_seq_ulong (
    CORBA::tk_alias,
    sizeof (_oc_flowProtocol_my_seq_ulong),
    (char *) &_oc_flowProtocol_my_seq_ulong,
    0,
    sizeof (flowProtocol::my_seq_ulong)
  );

namespace flowProtocol
{
  ::CORBA::TypeCode_ptr _tc_my_seq_ulong =
    &_tc_TAO_tc_flowProtocol_my_seq_ulong;
}

// TAO_IDL - Generated from
// be/be_visitor_typecode/typecode_defn.cpp:290

static const CORBA::Long _oc_flowProtocol_MsgType[] =
{
  TAO_ENCAP_BYTE_ORDER, // byte order
  29,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x666c6f77), 
  ACE_NTOHL (0x50726f74), 
  ACE_NTOHL (0x6f636f6c), 
  ACE_NTOHL (0x2f4d7367), 
  ACE_NTOHL (0x54797065), 
  ACE_NTOHL (0x3a312e30), 
  ACE_NTOHL (0x0),  // repository ID = IDL:flowProtocol/MsgType:1.0
  8,
  ACE_NTOHL (0x4d736754), 
  ACE_NTOHL (0x79706500),  // name = MsgType
  9, // member count
  10,
  ACE_NTOHL (0x53746172), 
  ACE_NTOHL (0x745f4d73), 
  ACE_NTOHL (0x67000000),  // name = Start_Msg
  16,
  ACE_NTOHL (0x456e646f), 
  ACE_NTOHL (0x66537472), 
  ACE_NTOHL (0x65616d5f), 
  ACE_NTOHL (0x4d736700),  // name = EndofStream_Msg
  16,
  ACE_NTOHL (0x53696d70), 
  ACE_NTOHL (0x6c654672), 
  ACE_NTOHL (0x616d655f), 
  ACE_NTOHL (0x4d736700),  // name = SimpleFrame_Msg
  19,
  ACE_NTOHL (0x53657175), 
  ACE_NTOHL (0x656e6365), 
  ACE_NTOHL (0x64467261), 
  ACE_NTOHL (0x6d655f4d), 
  ACE_NTOHL (0x73670000),  // name = SequencedFrame_Msg
  10,
  ACE_NTOHL (0x4672616d), 
  ACE_NTOHL (0x655f4d73), 
  ACE_NTOHL (0x67000000),  // name = Frame_Msg
  17,
  ACE_NTOHL (0x53706563), 
  ACE_NTOHL (0x69616c46), 
  ACE_NTOHL (0x72616d65), 
  ACE_NTOHL (0x5f4d7367), 
  ACE_NTOHL (0x0),  // name = SpecialFrame_Msg
  15,
  ACE_NTOHL (0x53746172), 
  ACE_NTOHL (0x74526570), 
  ACE_NTOHL (0x6c795f4d), 
  ACE_NTOHL (0x73670000),  // name = StartReply_Msg
  11,
  ACE_NTOHL (0x43726564), 
  ACE_NTOHL (0x69745f4d), 
  ACE_NTOHL (0x73670000),  // name = Credit_Msg
  13,
  ACE_NTOHL (0x46726167), 
  ACE_NTOHL (0x6d656e74), 
  ACE_NTOHL (0x5f4d7367), 
  ACE_NTOHL (0x0),  // name = Fragment_Msg
  };

static CORBA::TypeCode _tc_TAO_tc_flowProtocol_MsgType (
    CORBA::tk_enum,
    sizeof (_oc_flowProtocol_MsgType),
    (char *) &_oc_flowProtocol_MsgType,
    0,
    sizeof (flowProtocol::MsgType)
  );

namespace flowProtocol
{
  ::CORBA::TypeCode_ptr _tc_MsgType =
    &_tc_TAO_tc_flowProtocol_MsgType;
}

// TAO_IDL - Generated from
// be/be_visitor_typecode/typecode_defn.cpp:290

static const CORBA::Long _oc_flowProtocol_frameHeader[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  33,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x666c6f77), 
  ACE_NTOHL (0x50726f74), 
  ACE_NTOHL (0x6f636f6c), 
  ACE_NTOHL (0x2f667261), 
  ACE_NTOHL (0x6d654865), 
  ACE_NTOHL (0x61646572), 
  ACE_NTOHL (0x3a312e30), 
  ACE_NTOHL (0x0),  // repository ID = IDL:flowProtocol/frameHeader:1.0
    12,
  ACE_NTOHL (0x6672616d), 
  ACE_NTOHL (0x65486561), 
  ACE_NTOHL (0x64657200),  // name = frameHeader
  4, // member count
    13,
  ACE_NTOHL (0x6d616769), 
  ACE_NTOHL (0x635f6e75), 
  ACE_NTOHL (0x6d626572), 
  ACE_NTOHL (0x0),  // name = magic_number
    CORBA::tk_array, // typecode kind
  12, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    CORBA::tk_char,

    4U,

  6,
  ACE_NTOHL (0x666c6167), 
  ACE_NTOHL (0x73000000),  // name = flags
    CORBA::tk_octet,

  13,
  ACE_NTOHL (0x6d657373), 
  ACE_NTOHL (0x6167655f), 
  ACE_NTOHL (0x74797065), 
  ACE_NTOHL (0x0),  // name = message_type
    CORBA::tk_octet,

  13,
  ACE_NTOHL (0x6d657373), 
  ACE_NTOHL (0x6167655f), 
  ACE_NTOHL (0x73697a65), 
  ACE_NTOHL (0x0),  // name = message_size
    CORBA::tk_ulong,

};

static CORBA::TypeCode _tc_TAO_tc_flowProtocol_frameHeader (
    CORBA::tk_struct,
    sizeof (_oc_flowProtocol_frameHeader),
    (char *) &_oc_flowProtocol_frameHeader,
    0,
    sizeof (flowProtocol::frameHeader)
  );

namespace flowProtocol
{
  ::CORBA::TypeCode_ptr _tc_frameHeader =
    &_tc_TAO_tc_flowProtocol_frameHeader;
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/structure_cs.cpp:66

void 
flowProtocol::frameHeader::_tao_any_destructor (
    void *_tao_void_pointer
  )
{
  frameHeader *_tao_tmp_pointer =
    static_cast<frameHeader *> (_tao_void_pointer);
  delete _tao_tmp_pointer;
}

// TAO_IDL - Generated from
// be/be_visitor_array/array_cs.cpp:109

flowProtocol::frameHeader::_magic_number_slice *
flowProtocol::frameHeader::_magic_number_dup (const flowProtocol::frameHeader::_magic_number_slice *_tao_src_array)
{
  flowProtocol::frameHeader::_magic_number_slice *_tao_dup_array =
    flowProtocol::frameHeader::_magic_number_alloc ();
  
  if (!_tao_dup_array)
    {
      return (flowProtocol::frameHeader::_magic_number_slice *)0;
    }
  
  flowProtocol::frameHeader::_magic_number_copy (_tao_dup_array, _tao_src_array);
  return _tao_dup_array;
}

flowProtocol::frameHeader::_magic_number_slice *
flowProtocol::frameHeader::_magic_number_alloc (void)
{
  flowProtocol::frameHeader::_magic_number_slice *retval = 0;
  ACE_NEW_RETURN (retval, CORBA::Char[4], 0);
  return retval;
}

void
flowProtocol::frameHeader::_magic_number_free (
    flowProtocol::frameHeader::_magic_number_slice *_tao_slice
  )
{
  delete [] _tao_slice;
}

void 
flowProtocol::frameHeader::_magic_number_copy (
    flowProtocol::frameHeader::_magic_number_slice * _tao_to,
    const flowProtocol::frameHeader::_magic_number_slice *_tao_from
  )
{
  // Copy each individual element.
  for (CORBA::ULong i0 = 0; i0 < 4; ++i0)
    {
      _tao_to[i0] = _tao_from[i0];
    }
}

// TAO_IDL - Generated from
// be/be_visitor_typecode/typecode_defn.cpp:290

static const CORBA::Long _oc_flowProtocol_fragment[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  30,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x666c6f77), 
  ACE_NTOHL (0x50726f74), 
  ACE_NTOHL (0x6f636f6c), 
  ACE_NTOHL (0x2f667261), 
  ACE_NTOHL (0x676d656e), 
  ACE_NTOHL (0x743a312e), 
  ACE_NTOHL (0x30000000),  // repository ID = IDL:flowProtocol/fragment:1.0
    9,
  ACE_NTOHL (0x66726167), 
  ACE_NTOHL (0x6d656e74), 
  ACE_NTOHL (0x0),  // name = fragment
  6, // member count
    13,
  ACE_NTOHL (0x6d616769), 
  ACE_NTOHL (0x635f6e75), 
  ACE_NTOHL (0x6d626572), 
  ACE_NTOHL (0x0),  // name = magic_number
    CORBA::tk_array, // typecode kind
  12, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    CORBA::tk_char,

    4U,

  6,
  ACE_NTOHL (0x666c6167), 
  ACE_NTOHL (0x73000000),  // name = flags
    CORBA::tk_octet,

  12,
  ACE_NTOHL (0x66726167), 
  ACE_NTOHL (0x5f6e756d), 
  ACE_NTOHL (0x62657200),  // name = frag_number
    CORBA::tk_ulong,

  13,
  ACE_NTOHL (0x73657175), 
  ACE_NTOHL (0x656e6365), 
  ACE_NTOHL (0x5f6e756d), 
  ACE_NTOHL (0x0),  // name = sequence_num
    CORBA::tk_ulong,

  8,
  ACE_NTOHL (0x66726167), 
  ACE_NTOHL (0x5f737a00),  // name = frag_sz
    CORBA::tk_ulong,

  10,
  ACE_NTOHL (0x736f7572), 
  ACE_NTOHL (0x63655f69), 
  ACE_NTOHL (0x64000000),  // name = source_id
    CORBA::tk_ulong,

};

static CORBA::TypeCode _tc_TAO_tc_flowProtocol_fragment (
    CORBA::tk_struct,
    sizeof (_oc_flowProtocol_fragment),
    (char *) &_oc_flowProtocol_fragment,
    0,
    sizeof (flowProtocol::fragment)
  );

namespace flowProtocol
{
  ::CORBA::TypeCode_ptr _tc_fragment =
    &_tc_TAO_tc_flowProtocol_fragment;
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/structure_cs.cpp:66

void 
flowProtocol::fragment::_tao_any_destructor (
    void *_tao_void_pointer
  )
{
  fragment *_tao_tmp_pointer =
    static_cast<fragment *> (_tao_void_pointer);
  delete _tao_tmp_pointer;
}

// TAO_IDL - Generated from
// be/be_visitor_array/array_cs.cpp:109

flowProtocol::fragment::_magic_number_slice *
flowProtocol::fragment::_magic_number_dup (const flowProtocol::fragment::_magic_number_slice *_tao_src_array)
{
  flowProtocol::fragment::_magic_number_slice *_tao_dup_array =
    flowProtocol::fragment::_magic_number_alloc ();
  
  if (!_tao_dup_array)
    {
      return (flowProtocol::fragment::_magic_number_slice *)0;
    }
  
  flowProtocol::fragment::_magic_number_copy (_tao_dup_array, _tao_src_array);
  return _tao_dup_array;
}

flowProtocol::fragment::_magic_number_slice *
flowProtocol::fragment::_magic_number_alloc (void)
{
  flowProtocol::fragment::_magic_number_slice *retval = 0;
  ACE_NEW_RETURN (retval, CORBA::Char[4], 0);
  return retval;
}

void
flowProtocol::fragment::_magic_number_free (
    flowProtocol::fragment::_magic_number_slice *_tao_slice
  )
{
  delete [] _tao_slice;
}

void 
flowProtocol::fragment::_magic_number_copy (
    flowProtocol::fragment::_magic_number_slice * _tao_to,
    const flowProtocol::fragment::_magic_number_slice *_tao_from
  )
{
  // Copy each individual element.
  for (CORBA::ULong i0 = 0; i0 < 4; ++i0)
    {
      _tao_to[i0] = _tao_from[i0];
    }
}

// TAO_IDL - Generated from
// be/be_visitor_typecode/typecode_defn.cpp:290

static const CORBA::Long _oc_flowProtocol_Start[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  27,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x666c6f77), 
  ACE_NTOHL (0x50726f74), 
  ACE_NTOHL (0x6f636f6c), 
  ACE_NTOHL (0x2f537461), 
  ACE_NTOHL (0x72743a31), 
  ACE_NTOHL (0x2e300000),  // repository ID = IDL:flowProtocol/Start:1.0
    6,
  ACE_NTOHL (0x53746172), 
  ACE_NTOHL (0x74000000),  // name = Start
  4, // member count
    13,
  ACE_NTOHL (0x6d616769), 
  ACE_NTOHL (0x635f6e75), 
  ACE_NTOHL (0x6d626572), 
  ACE_NTOHL (0x0),  // name = magic_number
    CORBA::tk_array, // typecode kind
  12, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    CORBA::tk_char,

    4U,

  14,
  ACE_NTOHL (0x6d616a6f), 
  ACE_NTOHL (0x725f7665), 
  ACE_NTOHL (0x7273696f), 
  ACE_NTOHL (0x6e000000),  // name = major_version
    CORBA::tk_octet,

  14,
  ACE_NTOHL (0x6d696e6f), 
  ACE_NTOHL (0x725f7665), 
  ACE_NTOHL (0x7273696f), 
  ACE_NTOHL (0x6e000000),  // name = minor_version
    CORBA::tk_octet,

  6,
  ACE_NTOHL (0x666c6167), 
  ACE_NTOHL (0x73000000),  // name = flags
    CORBA::tk_octet,

};

static CORBA::TypeCode _tc_TAO_tc_flowProtocol_Start (
    CORBA::tk_struct,
    sizeof (_oc_flowProtocol_Start),
    (char *) &_oc_flowProtocol_Start,
    0,
    sizeof (flowProtocol::Start)
  );

namespace flowProtocol
{
  ::CORBA::TypeCode_ptr _tc_Start =
    &_tc_TAO_tc_flowProtocol_Start;
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/structure_cs.cpp:66

void 
flowProtocol::Start::_tao_any_destructor (
    void *_tao_void_pointer
  )
{
  Start *_tao_tmp_pointer =
    static_cast<Start *> (_tao_void_pointer);
  delete _tao_tmp_pointer;
}

// TAO_IDL - Generated from
// be/be_visitor_array/array_cs.cpp:109

flowProtocol::Start::_magic_number_slice *
flowProtocol::Start::_magic_number_dup (const flowProtocol::Start::_magic_number_slice *_tao_src_array)
{
  flowProtocol::Start::_magic_number_slice *_tao_dup_array =
    flowProtocol::Start::_magic_number_alloc ();
  
  if (!_tao_dup_array)
    {
      return (flowProtocol::Start::_magic_number_slice *)0;
    }
  
  flowProtocol::Start::_magic_number_copy (_tao_dup_array, _tao_src_array);
  return _tao_dup_array;
}

flowProtocol::Start::_magic_number_slice *
flowProtocol::Start::_magic_number_alloc (void)
{
  flowProtocol::Start::_magic_number_slice *retval = 0;
  ACE_NEW_RETURN (retval, CORBA::Char[4], 0);
  return retval;
}

void
flowProtocol::Start::_magic_number_free (
    flowProtocol::Start::_magic_number_slice *_tao_slice
  )
{
  delete [] _tao_slice;
}

void 
flowProtocol::Start::_magic_number_copy (
    flowProtocol::Start::_magic_number_slice * _tao_to,
    const flowProtocol::Start::_magic_number_slice *_tao_from
  )
{
  // Copy each individual element.
  for (CORBA::ULong i0 = 0; i0 < 4; ++i0)
    {
      _tao_to[i0] = _tao_from[i0];
    }
}

// TAO_IDL - Generated from
// be/be_visitor_typecode/typecode_defn.cpp:290

static const CORBA::Long _oc_flowProtocol_StartReply[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  32,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x666c6f77), 
  ACE_NTOHL (0x50726f74), 
  ACE_NTOHL (0x6f636f6c), 
  ACE_NTOHL (0x2f537461), 
  ACE_NTOHL (0x72745265), 
  ACE_NTOHL (0x706c793a), 
  ACE_NTOHL (0x312e3000),  // repository ID = IDL:flowProtocol/StartReply:1.0
    11,
  ACE_NTOHL (0x53746172), 
  ACE_NTOHL (0x74526570), 
  ACE_NTOHL (0x6c790000),  // name = StartReply
  2, // member count
    13,
  ACE_NTOHL (0x6d616769), 
  ACE_NTOHL (0x635f6e75), 
  ACE_NTOHL (0x6d626572), 
  ACE_NTOHL (0x0),  // name = magic_number
    CORBA::tk_array, // typecode kind
  12, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    CORBA::tk_char,

    4U,

  6,
  ACE_NTOHL (0x666c6167), 
  ACE_NTOHL (0x73000000),  // name = flags
    CORBA::tk_octet,

};

static CORBA::TypeCode _tc_TAO_tc_flowProtocol_StartReply (
    CORBA::tk_struct,
    sizeof (_oc_flowProtocol_StartReply),
    (char *) &_oc_flowProtocol_StartReply,
    0,
    sizeof (flowProtocol::StartReply)
  );

namespace flowProtocol
{
  ::CORBA::TypeCode_ptr _tc_StartReply =
    &_tc_TAO_tc_flowProtocol_StartReply;
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/structure_cs.cpp:66

void 
flowProtocol::StartReply::_tao_any_destructor (
    void *_tao_void_pointer
  )
{
  StartReply *_tao_tmp_pointer =
    static_cast<StartReply *> (_tao_void_pointer);
  delete _tao_tmp_pointer;
}

// TAO_IDL - Generated from
// be/be_visitor_array/array_cs.cpp:109

flowProtocol::StartReply::_magic_number_slice *
flowProtocol::StartReply::_magic_number_dup (const flowProtocol::StartReply::_magic_number_slice *_tao_src_array)
{
  flowProtocol::StartReply::_magic_number_slice *_tao_dup_array =
    flowProtocol::StartReply::_magic_number_alloc ();
  
  if (!_tao_dup_array)
    {
      return (flowProtocol::StartReply::_magic_number_slice *)0;
    }
  
  flowProtocol::StartReply::_magic_number_copy (_tao_dup_array, _tao_src_array);
  return _tao_dup_array;
}

flowProtocol::StartReply::_magic_number_slice *
flowProtocol::StartReply::_magic_number_alloc (void)
{
  flowProtocol::StartReply::_magic_number_slice *retval = 0;
  ACE_NEW_RETURN (retval, CORBA::Char[4], 0);
  return retval;
}

void
flowProtocol::StartReply::_magic_number_free (
    flowProtocol::StartReply::_magic_number_slice *_tao_slice
  )
{
  delete [] _tao_slice;
}

void 
flowProtocol::StartReply::_magic_number_copy (
    flowProtocol::StartReply::_magic_number_slice * _tao_to,
    const flowProtocol::StartReply::_magic_number_slice *_tao_from
  )
{
  // Copy each individual element.
  for (CORBA::ULong i0 = 0; i0 < 4; ++i0)
    {
      _tao_to[i0] = _tao_from[i0];
    }
}

// TAO_IDL - Generated from
// be/be_visitor_typecode/typecode_defn.cpp:290

static const CORBA::Long _oc_flowProtocol_sequencedFrame[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  36,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x666c6f77), 
  ACE_NTOHL (0x50726f74), 
  ACE_NTOHL (0x6f636f6c), 
  ACE_NTOHL (0x2f736571), 
  ACE_NTOHL (0x75656e63), 
  ACE_NTOHL (0x65644672), 
  ACE_NTOHL (0x616d653a), 
  ACE_NTOHL (0x312e3000),  // repository ID = IDL:flowProtocol/sequencedFrame:1.0
    15,
  ACE_NTOHL (0x73657175), 
  ACE_NTOHL (0x656e6365), 
  ACE_NTOHL (0x64467261), 
  ACE_NTOHL (0x6d650000),  // name = sequencedFrame
  1, // member count
    13,
  ACE_NTOHL (0x73657175), 
  ACE_NTOHL (0x656e6365), 
  ACE_NTOHL (0x5f6e756d), 
  ACE_NTOHL (0x0),  // name = sequence_num
    CORBA::tk_ulong,

};

static CORBA::TypeCode _tc_TAO_tc_flowProtocol_sequencedFrame (
    CORBA::tk_struct,
    sizeof (_oc_flowProtocol_sequencedFrame),
    (char *) &_oc_flowProtocol_sequencedFrame,
    0,
    sizeof (flowProtocol::sequencedFrame)
  );

namespace flowProtocol
{
  ::CORBA::TypeCode_ptr _tc_sequencedFrame =
    &_tc_TAO_tc_flowProtocol_sequencedFrame;
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/structure_cs.cpp:66

void 
flowProtocol::sequencedFrame::_tao_any_destructor (
    void *_tao_void_pointer
  )
{
  sequencedFrame *_tao_tmp_pointer =
    static_cast<sequencedFrame *> (_tao_void_pointer);
  delete _tao_tmp_pointer;
}

// TAO_IDL - Generated from
// be/be_visitor_typecode/typecode_defn.cpp:290

static const CORBA::Long _oc_flowProtocol_frame[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  27,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x666c6f77), 
  ACE_NTOHL (0x50726f74), 
  ACE_NTOHL (0x6f636f6c), 
  ACE_NTOHL (0x2f667261), 
  ACE_NTOHL (0x6d653a31), 
  ACE_NTOHL (0x2e300000),  // repository ID = IDL:flowProtocol/frame:1.0
    6,
  ACE_NTOHL (0x6672616d), 
  ACE_NTOHL (0x65000000),  // name = frame
  4, // member count
    10,
  ACE_NTOHL (0x74696d65), 
  ACE_NTOHL (0x7374616d), 
  ACE_NTOHL (0x70000000),  // name = timestamp
    CORBA::tk_ulong,

  12,
  ACE_NTOHL (0x73796e63), 
  ACE_NTOHL (0x68536f75), 
  ACE_NTOHL (0x72636500),  // name = synchSource
    CORBA::tk_ulong,

  11,
  ACE_NTOHL (0x736f7572), 
  ACE_NTOHL (0x63655f69), 
  ACE_NTOHL (0x64730000),  // name = source_ids
    CORBA::tk_alias, // typecode kind for typedefs
  84, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    34,
    ACE_NTOHL (0x49444c3a), 
    ACE_NTOHL (0x666c6f77), 
    ACE_NTOHL (0x50726f74), 
    ACE_NTOHL (0x6f636f6c), 
    ACE_NTOHL (0x2f6d795f), 
    ACE_NTOHL (0x7365715f), 
    ACE_NTOHL (0x756c6f6e), 
    ACE_NTOHL (0x673a312e), 
    ACE_NTOHL (0x30000000),  // repository ID = IDL:flowProtocol/my_seq_ulong:1.0
        13,
    ACE_NTOHL (0x6d795f73), 
    ACE_NTOHL (0x65715f75), 
    ACE_NTOHL (0x6c6f6e67), 
    ACE_NTOHL (0x0),  // name = my_seq_ulong
        CORBA::tk_sequence, // typecode kind
    12, // encapsulation length
      TAO_ENCAP_BYTE_ORDER, // byte order
      CORBA::tk_ulong,

      0U,


  13,
  ACE_NTOHL (0x73657175), 
  ACE_NTOHL (0x656e6365), 
  ACE_NTOHL (0x5f6e756d), 
  ACE_NTOHL (0x0),  // name = sequence_num
    CORBA::tk_ulong,

};

static CORBA::TypeCode _tc_TAO_tc_flowProtocol_frame (
    CORBA::tk_struct,
    sizeof (_oc_flowProtocol_frame),
    (char *) &_oc_flowProtocol_frame,
    0,
    sizeof (flowProtocol::frame)
  );

namespace flowProtocol
{
  ::CORBA::TypeCode_ptr _tc_frame =
    &_tc_TAO_tc_flowProtocol_frame;
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/structure_cs.cpp:66

void 
flowProtocol::frame::_tao_any_destructor (
    void *_tao_void_pointer
  )
{
  frame *_tao_tmp_pointer =
    static_cast<frame *> (_tao_void_pointer);
  delete _tao_tmp_pointer;
}

// TAO_IDL - Generated from
// be/be_visitor_typecode/typecode_defn.cpp:290

static const CORBA::Long _oc_flowProtocol_frameID[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  29,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x666c6f77), 
  ACE_NTOHL (0x50726f74), 
  ACE_NTOHL (0x6f636f6c), 
  ACE_NTOHL (0x2f667261), 
  ACE_NTOHL (0x6d654944), 
  ACE_NTOHL (0x3a312e30), 
  ACE_NTOHL (0x0),  // repository ID = IDL:flowProtocol/frameID:1.0
    8,
  ACE_NTOHL (0x6672616d), 
  ACE_NTOHL (0x65494400),  // name = frameID
    CORBA::tk_ulong,

};

static CORBA::TypeCode _tc_TAO_tc_flowProtocol_frameID (
    CORBA::tk_alias,
    sizeof (_oc_flowProtocol_frameID),
    (char *) &_oc_flowProtocol_frameID,
    0,
    sizeof (flowProtocol::frameID)
  );

namespace flowProtocol
{
  ::CORBA::TypeCode_ptr _tc_frameID =
    &_tc_TAO_tc_flowProtocol_frameID;
}

// TAO_IDL - Generated from
// be/be_visitor_typecode/typecode_defn.cpp:290

static const CORBA::Long _oc_flowProtocol_specialFrame[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  34,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x666c6f77), 
  ACE_NTOHL (0x50726f74), 
  ACE_NTOHL (0x6f636f6c), 
  ACE_NTOHL (0x2f737065), 
  ACE_NTOHL (0x6369616c), 
  ACE_NTOHL (0x4672616d), 
  ACE_NTOHL (0x653a312e), 
  ACE_NTOHL (0x30000000),  // repository ID = IDL:flowProtocol/specialFrame:1.0
    13,
  ACE_NTOHL (0x73706563), 
  ACE_NTOHL (0x69616c46), 
  ACE_NTOHL (0x72616d65), 
  ACE_NTOHL (0x0),  // name = specialFrame
  2, // member count
    11,
  ACE_NTOHL (0x636f6e74), 
  ACE_NTOHL (0x6578745f), 
  ACE_NTOHL (0x69640000),  // name = context_id
    CORBA::tk_alias, // typecode kind for typedefs
  56, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    29,
    ACE_NTOHL (0x49444c3a), 
    ACE_NTOHL (0x666c6f77), 
    ACE_NTOHL (0x50726f74), 
    ACE_NTOHL (0x6f636f6c), 
    ACE_NTOHL (0x2f667261), 
    ACE_NTOHL (0x6d654944), 
    ACE_NTOHL (0x3a312e30), 
    ACE_NTOHL (0x0),  // repository ID = IDL:flowProtocol/frameID:1.0
        8,
    ACE_NTOHL (0x6672616d), 
    ACE_NTOHL (0x65494400),  // name = frameID
        CORBA::tk_ulong,


  13,
  ACE_NTOHL (0x636f6e74), 
  ACE_NTOHL (0x6578745f), 
  ACE_NTOHL (0x64617461), 
  ACE_NTOHL (0x0),  // name = context_data
    CORBA::tk_sequence, // typecode kind
  12, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    CORBA::tk_octet,

    0U,

};

static CORBA::TypeCode _tc_TAO_tc_flowProtocol_specialFrame (
    CORBA::tk_struct,
    sizeof (_oc_flowProtocol_specialFrame),
    (char *) &_oc_flowProtocol_specialFrame,
    0,
    sizeof (flowProtocol::specialFrame)
  );

namespace flowProtocol
{
  ::CORBA::TypeCode_ptr _tc_specialFrame =
    &_tc_TAO_tc_flowProtocol_specialFrame;
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/structure_cs.cpp:66

void 
flowProtocol::specialFrame::_tao_any_destructor (
    void *_tao_void_pointer
  )
{
  specialFrame *_tao_tmp_pointer =
    static_cast<specialFrame *> (_tao_void_pointer);
  delete _tao_tmp_pointer;
}

// TAO_IDL - Generated from 
// be/be_visitor_sequence/sequence_cs.cpp:65

#if !defined (_FLOWPROTOCOL_SPECIALFRAME__TAO_SEQ_CORBA_OCTET__CS_)
#define _FLOWPROTOCOL_SPECIALFRAME__TAO_SEQ_CORBA_OCTET__CS_

flowProtocol::specialFrame::_tao_seq_CORBA_Octet_::_tao_seq_CORBA_Octet_ (void)
{}

flowProtocol::specialFrame::_tao_seq_CORBA_Octet_::_tao_seq_CORBA_Octet_ (
    CORBA::ULong max
  )
  : TAO_Unbounded_Sequence<
        CORBA::Octet
      >
    (max)
{}

flowProtocol::specialFrame::_tao_seq_CORBA_Octet_::_tao_seq_CORBA_Octet_ (
    CORBA::ULong max,
    CORBA::ULong length,
    CORBA::Octet * buffer,
    CORBA::Boolean release
  )
  : TAO_Unbounded_Sequence<
        CORBA::Octet
      >
    (max, length, buffer, release)
{}

flowProtocol::specialFrame::_tao_seq_CORBA_Octet_::_tao_seq_CORBA_Octet_ (
    const _tao_seq_CORBA_Octet_ &seq
  )
  : TAO_Unbounded_Sequence<
        CORBA::Octet
      >
    (seq)
{}

flowProtocol::specialFrame::_tao_seq_CORBA_Octet_::~_tao_seq_CORBA_Octet_ (void)
{}

#endif /* end #if !defined */

// TAO_IDL - Generated from
// be/be_visitor_typecode/typecode_defn.cpp:290

static const CORBA::Long _oc_flowProtocol_credit[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  28,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x666c6f77), 
  ACE_NTOHL (0x50726f74), 
  ACE_NTOHL (0x6f636f6c), 
  ACE_NTOHL (0x2f637265), 
  ACE_NTOHL (0x6469743a), 
  ACE_NTOHL (0x312e3000),  // repository ID = IDL:flowProtocol/credit:1.0
    7,
  ACE_NTOHL (0x63726564), 
  ACE_NTOHL (0x69740000),  // name = credit
  2, // member count
    13,
  ACE_NTOHL (0x6d616769), 
  ACE_NTOHL (0x635f6e75), 
  ACE_NTOHL (0x6d626572), 
  ACE_NTOHL (0x0),  // name = magic_number
    CORBA::tk_array, // typecode kind
  12, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    CORBA::tk_char,

    4U,

  9,
  ACE_NTOHL (0x63726564), 
  ACE_NTOHL (0x5f6e756d), 
  ACE_NTOHL (0x0),  // name = cred_num
    CORBA::tk_ulong,

};

static CORBA::TypeCode _tc_TAO_tc_flowProtocol_credit (
    CORBA::tk_struct,
    sizeof (_oc_flowProtocol_credit),
    (char *) &_oc_flowProtocol_credit,
    0,
    sizeof (flowProtocol::credit)
  );

namespace flowProtocol
{
  ::CORBA::TypeCode_ptr _tc_credit =
    &_tc_TAO_tc_flowProtocol_credit;
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/structure_cs.cpp:66

void 
flowProtocol::credit::_tao_any_destructor (
    void *_tao_void_pointer
  )
{
  credit *_tao_tmp_pointer =
    static_cast<credit *> (_tao_void_pointer);
  delete _tao_tmp_pointer;
}

// TAO_IDL - Generated from
// be/be_visitor_array/array_cs.cpp:109

flowProtocol::credit::_magic_number_slice *
flowProtocol::credit::_magic_number_dup (const flowProtocol::credit::_magic_number_slice *_tao_src_array)
{
  flowProtocol::credit::_magic_number_slice *_tao_dup_array =
    flowProtocol::credit::_magic_number_alloc ();
  
  if (!_tao_dup_array)
    {
      return (flowProtocol::credit::_magic_number_slice *)0;
    }
  
  flowProtocol::credit::_magic_number_copy (_tao_dup_array, _tao_src_array);
  return _tao_dup_array;
}

flowProtocol::credit::_magic_number_slice *
flowProtocol::credit::_magic_number_alloc (void)
{
  flowProtocol::credit::_magic_number_slice *retval = 0;
  ACE_NEW_RETURN (retval, CORBA::Char[4], 0);
  return retval;
}

void
flowProtocol::credit::_magic_number_free (
    flowProtocol::credit::_magic_number_slice *_tao_slice
  )
{
  delete [] _tao_slice;
}

void 
flowProtocol::credit::_magic_number_copy (
    flowProtocol::credit::_magic_number_slice * _tao_to,
    const flowProtocol::credit::_magic_number_slice *_tao_from
  )
{
  // Copy each individual element.
  for (CORBA::ULong i0 = 0; i0 < 4; ++i0)
    {
      _tao_to[i0] = _tao_from[i0];
    }
}

// TAO_IDL - Generated from 
// be/be_visitor_sequence/any_op_cs.cpp:54

// Copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    const flowProtocol::my_seq_ulong &_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::my_seq_ulong>::insert_copy (
      _tao_any,
      flowProtocol::my_seq_ulong::_tao_any_destructor,
      flowProtocol::_tc_my_seq_ulong,
      _tao_elem
    );
}

// Non-copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    flowProtocol::my_seq_ulong *_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::my_seq_ulong>::insert (
      _tao_any,
      flowProtocol::my_seq_ulong::_tao_any_destructor,
      flowProtocol::_tc_my_seq_ulong,
      _tao_elem
    );
}

// Extraction to non-const pointer (deprecated).
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    flowProtocol::my_seq_ulong *&_tao_elem
  )
{
  return _tao_any >>= const_cast<
      const flowProtocol::my_seq_ulong *&> (
      _tao_elem
    );
}

// Extraction to const pointer.
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    const flowProtocol::my_seq_ulong *&_tao_elem
  )
{
  return
    TAO::Any_Dual_Impl_T<flowProtocol::my_seq_ulong>::extract (
        _tao_any,
        flowProtocol::my_seq_ulong::_tao_any_destructor,
        flowProtocol::_tc_my_seq_ulong,
        _tao_elem
      );
}

// TAO_IDL - Generated from
// be/be_visitor_enum/any_op_cs.cpp:52

void operator<<= (
    CORBA::Any &_tao_any,
    flowProtocol::MsgType _tao_elem
  )
{
  TAO::Any_Basic_Impl_T<flowProtocol::MsgType>::insert (
      _tao_any,
      flowProtocol::_tc_MsgType,
      _tao_elem
    );
}

CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    flowProtocol::MsgType &_tao_elem
  )
{
  return
    TAO::Any_Basic_Impl_T<flowProtocol::MsgType>::extract (
        _tao_any,
        flowProtocol::_tc_MsgType,
        _tao_elem 
      );
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/any_op_cs.cpp:54

// Copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    const flowProtocol::frameHeader &_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::frameHeader>::insert_copy (
      _tao_any,
      flowProtocol::frameHeader::_tao_any_destructor,
      flowProtocol::_tc_frameHeader,
      _tao_elem
    );
}

// Non-copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    flowProtocol::frameHeader *_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::frameHeader>::insert (
      _tao_any,
      flowProtocol::frameHeader::_tao_any_destructor,
      flowProtocol::_tc_frameHeader,
      _tao_elem
    );
}

// Extraction to non-const pointer (deprecated).
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    flowProtocol::frameHeader *&_tao_elem
  )
{
  return _tao_any >>= const_cast<
      const flowProtocol::frameHeader *&> (
      _tao_elem
    );
}

// Extraction to const pointer.
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    const flowProtocol::frameHeader *&_tao_elem
  )
{
  return
    TAO::Any_Dual_Impl_T<flowProtocol::frameHeader>::extract (
        _tao_any,
        flowProtocol::frameHeader::_tao_any_destructor,
        flowProtocol::_tc_frameHeader,
        _tao_elem
      );
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/any_op_cs.cpp:54

// Copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    const flowProtocol::fragment &_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::fragment>::insert_copy (
      _tao_any,
      flowProtocol::fragment::_tao_any_destructor,
      flowProtocol::_tc_fragment,
      _tao_elem
    );
}

// Non-copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    flowProtocol::fragment *_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::fragment>::insert (
      _tao_any,
      flowProtocol::fragment::_tao_any_destructor,
      flowProtocol::_tc_fragment,
      _tao_elem
    );
}

// Extraction to non-const pointer (deprecated).
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    flowProtocol::fragment *&_tao_elem
  )
{
  return _tao_any >>= const_cast<
      const flowProtocol::fragment *&> (
      _tao_elem
    );
}

// Extraction to const pointer.
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    const flowProtocol::fragment *&_tao_elem
  )
{
  return
    TAO::Any_Dual_Impl_T<flowProtocol::fragment>::extract (
        _tao_any,
        flowProtocol::fragment::_tao_any_destructor,
        flowProtocol::_tc_fragment,
        _tao_elem
      );
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/any_op_cs.cpp:54

// Copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    const flowProtocol::Start &_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::Start>::insert_copy (
      _tao_any,
      flowProtocol::Start::_tao_any_destructor,
      flowProtocol::_tc_Start,
      _tao_elem
    );
}

// Non-copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    flowProtocol::Start *_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::Start>::insert (
      _tao_any,
      flowProtocol::Start::_tao_any_destructor,
      flowProtocol::_tc_Start,
      _tao_elem
    );
}

// Extraction to non-const pointer (deprecated).
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    flowProtocol::Start *&_tao_elem
  )
{
  return _tao_any >>= const_cast<
      const flowProtocol::Start *&> (
      _tao_elem
    );
}

// Extraction to const pointer.
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    const flowProtocol::Start *&_tao_elem
  )
{
  return
    TAO::Any_Dual_Impl_T<flowProtocol::Start>::extract (
        _tao_any,
        flowProtocol::Start::_tao_any_destructor,
        flowProtocol::_tc_Start,
        _tao_elem
      );
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/any_op_cs.cpp:54

// Copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    const flowProtocol::StartReply &_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::StartReply>::insert_copy (
      _tao_any,
      flowProtocol::StartReply::_tao_any_destructor,
      flowProtocol::_tc_StartReply,
      _tao_elem
    );
}

// Non-copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    flowProtocol::StartReply *_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::StartReply>::insert (
      _tao_any,
      flowProtocol::StartReply::_tao_any_destructor,
      flowProtocol::_tc_StartReply,
      _tao_elem
    );
}

// Extraction to non-const pointer (deprecated).
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    flowProtocol::StartReply *&_tao_elem
  )
{
  return _tao_any >>= const_cast<
      const flowProtocol::StartReply *&> (
      _tao_elem
    );
}

// Extraction to const pointer.
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    const flowProtocol::StartReply *&_tao_elem
  )
{
  return
    TAO::Any_Dual_Impl_T<flowProtocol::StartReply>::extract (
        _tao_any,
        flowProtocol::StartReply::_tao_any_destructor,
        flowProtocol::_tc_StartReply,
        _tao_elem
      );
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/any_op_cs.cpp:54

// Copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    const flowProtocol::sequencedFrame &_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::sequencedFrame>::insert_copy (
      _tao_any,
      flowProtocol::sequencedFrame::_tao_any_destructor,
      flowProtocol::_tc_sequencedFrame,
      _tao_elem
    );
}

// Non-copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    flowProtocol::sequencedFrame *_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::sequencedFrame>::insert (
      _tao_any,
      flowProtocol::sequencedFrame::_tao_any_destructor,
      flowProtocol::_tc_sequencedFrame,
      _tao_elem
    );
}

// Extraction to non-const pointer (deprecated).
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    flowProtocol::sequencedFrame *&_tao_elem
  )
{
  return _tao_any >>= const_cast<
      const flowProtocol::sequencedFrame *&> (
      _tao_elem
    );
}

// Extraction to const pointer.
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    const flowProtocol::sequencedFrame *&_tao_elem
  )
{
  return
    TAO::Any_Dual_Impl_T<flowProtocol::sequencedFrame>::extract (
        _tao_any,
        flowProtocol::sequencedFrame::_tao_any_destructor,
        flowProtocol::_tc_sequencedFrame,
        _tao_elem
      );
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/any_op_cs.cpp:54

// Copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    const flowProtocol::frame &_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::frame>::insert_copy (
      _tao_any,
      flowProtocol::frame::_tao_any_destructor,
      flowProtocol::_tc_frame,
      _tao_elem
    );
}

// Non-copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    flowProtocol::frame *_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::frame>::insert (
      _tao_any,
      flowProtocol::frame::_tao_any_destructor,
      flowProtocol::_tc_frame,
      _tao_elem
    );
}

// Extraction to non-const pointer (deprecated).
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    flowProtocol::frame *&_tao_elem
  )
{
  return _tao_any >>= const_cast<
      const flowProtocol::frame *&> (
      _tao_elem
    );
}

// Extraction to const pointer.
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    const flowProtocol::frame *&_tao_elem
  )
{
  return
    TAO::Any_Dual_Impl_T<flowProtocol::frame>::extract (
        _tao_any,
        flowProtocol::frame::_tao_any_destructor,
        flowProtocol::_tc_frame,
        _tao_elem
      );
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/any_op_cs.cpp:54

// Copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    const flowProtocol::specialFrame &_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::specialFrame>::insert_copy (
      _tao_any,
      flowProtocol::specialFrame::_tao_any_destructor,
      flowProtocol::_tc_specialFrame,
      _tao_elem
    );
}

// Non-copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    flowProtocol::specialFrame *_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::specialFrame>::insert (
      _tao_any,
      flowProtocol::specialFrame::_tao_any_destructor,
      flowProtocol::_tc_specialFrame,
      _tao_elem
    );
}

// Extraction to non-const pointer (deprecated).
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    flowProtocol::specialFrame *&_tao_elem
  )
{
  return _tao_any >>= const_cast<
      const flowProtocol::specialFrame *&> (
      _tao_elem
    );
}

// Extraction to const pointer.
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    const flowProtocol::specialFrame *&_tao_elem
  )
{
  return
    TAO::Any_Dual_Impl_T<flowProtocol::specialFrame>::extract (
        _tao_any,
        flowProtocol::specialFrame::_tao_any_destructor,
        flowProtocol::_tc_specialFrame,
        _tao_elem
      );
}

// TAO_IDL - Generated from 
// be/be_visitor_structure/any_op_cs.cpp:54

// Copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    const flowProtocol::credit &_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::credit>::insert_copy (
      _tao_any,
      flowProtocol::credit::_tao_any_destructor,
      flowProtocol::_tc_credit,
      _tao_elem
    );
}

// Non-copying insertion.
void operator<<= (
    CORBA::Any &_tao_any,
    flowProtocol::credit *_tao_elem
  )
{
  TAO::Any_Dual_Impl_T<flowProtocol::credit>::insert (
      _tao_any,
      flowProtocol::credit::_tao_any_destructor,
      flowProtocol::_tc_credit,
      _tao_elem
    );
}

// Extraction to non-const pointer (deprecated).
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    flowProtocol::credit *&_tao_elem
  )
{
  return _tao_any >>= const_cast<
      const flowProtocol::credit *&> (
      _tao_elem
    );
}

// Extraction to const pointer.
CORBA::Boolean operator>>= (
    const CORBA::Any &_tao_any,
    const flowProtocol::credit *&_tao_elem
  )
{
  return
    TAO::Any_Dual_Impl_T<flowProtocol::credit>::extract (
        _tao_any,
        flowProtocol::credit::_tao_any_destructor,
        flowProtocol::_tc_credit,
        _tao_elem
      );
}

// TAO_IDL - Generated from
// be/be_visitor_sequence/cdr_op_cs.cpp:96

#if !defined _TAO_CDR_OP_flowProtocol_my_seq_ulong_CPP_
#define _TAO_CDR_OP_flowProtocol_my_seq_ulong_CPP_

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::my_seq_ulong &_tao_sequence
  )
{
  const CORBA::ULong _tao_seq_len = _tao_sequence.length ();
  
  if (strm << _tao_seq_len)
    {
      // Encode all elements.
      return strm.write_ulong_array (_tao_sequence.get_buffer (), _tao_sequence.length ());
    }
  
  return 0;
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::my_seq_ulong &_tao_sequence
  )
{
  CORBA::ULong _tao_seq_len;
  
  if (strm >> _tao_seq_len)
    {
      // Add a check to the length of the sequence
      // to make sure it does not exceed the length
      // of the stream. (See bug 58.)
      if (_tao_seq_len > strm.length ())
        {
          return 0;
        }
      
      // Set the length of the sequence.
      _tao_sequence.length (_tao_seq_len);
      
      // If length is 0 we return true.
      if (0 >= _tao_seq_len) 
        {
          return 1;
        }
      
      // Retrieve all the elements.
      return strm.read_ulong_array (_tao_sequence.get_buffer (), _tao_sequence.length ());
    
    }
  
  return 0;
}

#endif /* _TAO_CDR_OP_flowProtocol_my_seq_ulong_CPP_ */

// TAO_IDL - Generated from
// be/be_visitor_enum/cdr_op_cs.cpp:51

CORBA::Boolean operator<< (TAO_OutputCDR &strm, const flowProtocol::MsgType &_tao_enumval)
{
  CORBA::ULong _tao_temp = _tao_enumval;
  return strm << _tao_temp;
}

CORBA::Boolean operator>> (TAO_InputCDR &strm, flowProtocol::MsgType &_tao_enumval)
{
  CORBA::ULong _tao_temp = 0;
  CORBA::Boolean _tao_result = strm >> _tao_temp;
  
  if (_tao_result == 1)
    {
      _tao_enumval = static_cast<flowProtocol::MsgType> (_tao_temp);
    }
  
  return _tao_result;
}

// TAO_IDL - Generated from
// be/be_visitor_array/cdr_op_cs.cpp:177

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::frameHeader::_magic_number_forany &_tao_array
  )
{
   return strm.write_char_array ((const ACE_CDR::Char *)_tao_array.in (), 4);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::frameHeader::_magic_number_forany &_tao_array
  )
{
   return strm.read_char_array ((ACE_CDR::Char *) _tao_array.out (), 4);
}

// TAO_IDL - Generated from
// be/be_visitor_structure/cdr_op_cs.cpp:61

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::frameHeader &_tao_aggregate
  )
{
  flowProtocol::frameHeader::_magic_number_forany _tao_aggregate_magic_number
      (const_cast<
          flowProtocol::frameHeader::_magic_number_slice*> (
          _tao_aggregate.magic_number
        )
    );
  return
    (strm << _tao_aggregate_magic_number) &&
    (strm << CORBA::Any::from_octet (_tao_aggregate.flags)) &&
    (strm << CORBA::Any::from_octet (_tao_aggregate.message_type)) &&
    (strm << _tao_aggregate.message_size);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::frameHeader &_tao_aggregate
  )
{
  flowProtocol::frameHeader::_magic_number_forany _tao_aggregate_magic_number
      (const_cast<
          flowProtocol::frameHeader::_magic_number_slice*> (
          _tao_aggregate.magic_number
        )
    );
  return
    (strm >> _tao_aggregate_magic_number) &&
    (strm >> CORBA::Any::to_octet (_tao_aggregate.flags)) &&
    (strm >> CORBA::Any::to_octet (_tao_aggregate.message_type)) &&
    (strm >> _tao_aggregate.message_size);
}

// TAO_IDL - Generated from
// be/be_visitor_array/cdr_op_cs.cpp:177

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::fragment::_magic_number_forany &_tao_array
  )
{
   return strm.write_char_array ((const ACE_CDR::Char *)_tao_array.in (), 4);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::fragment::_magic_number_forany &_tao_array
  )
{
   return strm.read_char_array ((ACE_CDR::Char *) _tao_array.out (), 4);
}

// TAO_IDL - Generated from
// be/be_visitor_structure/cdr_op_cs.cpp:61

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::fragment &_tao_aggregate
  )
{
  flowProtocol::fragment::_magic_number_forany _tao_aggregate_magic_number
      (const_cast<
          flowProtocol::fragment::_magic_number_slice*> (
          _tao_aggregate.magic_number
        )
    );
  return
    (strm << _tao_aggregate_magic_number) &&
    (strm << CORBA::Any::from_octet (_tao_aggregate.flags)) &&
    (strm << _tao_aggregate.frag_number) &&
    (strm << _tao_aggregate.sequence_num) &&
    (strm << _tao_aggregate.frag_sz) &&
    (strm << _tao_aggregate.source_id);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::fragment &_tao_aggregate
  )
{
  flowProtocol::fragment::_magic_number_forany _tao_aggregate_magic_number
      (const_cast<
          flowProtocol::fragment::_magic_number_slice*> (
          _tao_aggregate.magic_number
        )
    );
  return
    (strm >> _tao_aggregate_magic_number) &&
    (strm >> CORBA::Any::to_octet (_tao_aggregate.flags)) &&
    (strm >> _tao_aggregate.frag_number) &&
    (strm >> _tao_aggregate.sequence_num) &&
    (strm >> _tao_aggregate.frag_sz) &&
    (strm >> _tao_aggregate.source_id);
}

// TAO_IDL - Generated from
// be/be_visitor_array/cdr_op_cs.cpp:177

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::Start::_magic_number_forany &_tao_array
  )
{
   return strm.write_char_array ((const ACE_CDR::Char *)_tao_array.in (), 4);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::Start::_magic_number_forany &_tao_array
  )
{
   return strm.read_char_array ((ACE_CDR::Char *) _tao_array.out (), 4);
}

// TAO_IDL - Generated from
// be/be_visitor_structure/cdr_op_cs.cpp:61

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::Start &_tao_aggregate
  )
{
  flowProtocol::Start::_magic_number_forany _tao_aggregate_magic_number
      (const_cast<
          flowProtocol::Start::_magic_number_slice*> (
          _tao_aggregate.magic_number
        )
    );
  return
    (strm << _tao_aggregate_magic_number) &&
    (strm << CORBA::Any::from_octet (_tao_aggregate.major_version)) &&
    (strm << CORBA::Any::from_octet (_tao_aggregate.minor_version)) &&
    (strm << CORBA::Any::from_octet (_tao_aggregate.flags));
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::Start &_tao_aggregate
  )
{
  flowProtocol::Start::_magic_number_forany _tao_aggregate_magic_number
      (const_cast<
          flowProtocol::Start::_magic_number_slice*> (
          _tao_aggregate.magic_number
        )
    );
  return
    (strm >> _tao_aggregate_magic_number) &&
    (strm >> CORBA::Any::to_octet (_tao_aggregate.major_version)) &&
    (strm >> CORBA::Any::to_octet (_tao_aggregate.minor_version)) &&
    (strm >> CORBA::Any::to_octet (_tao_aggregate.flags));
}

// TAO_IDL - Generated from
// be/be_visitor_array/cdr_op_cs.cpp:177

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::StartReply::_magic_number_forany &_tao_array
  )
{
   return strm.write_char_array ((const ACE_CDR::Char *)_tao_array.in (), 4);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::StartReply::_magic_number_forany &_tao_array
  )
{
   return strm.read_char_array ((ACE_CDR::Char *) _tao_array.out (), 4);
}

// TAO_IDL - Generated from
// be/be_visitor_structure/cdr_op_cs.cpp:61

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::StartReply &_tao_aggregate
  )
{
  flowProtocol::StartReply::_magic_number_forany _tao_aggregate_magic_number
      (const_cast<
          flowProtocol::StartReply::_magic_number_slice*> (
          _tao_aggregate.magic_number
        )
    );
  return
    (strm << _tao_aggregate_magic_number) &&
    (strm << CORBA::Any::from_octet (_tao_aggregate.flags));
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::StartReply &_tao_aggregate
  )
{
  flowProtocol::StartReply::_magic_number_forany _tao_aggregate_magic_number
      (const_cast<
          flowProtocol::StartReply::_magic_number_slice*> (
          _tao_aggregate.magic_number
        )
    );
  return
    (strm >> _tao_aggregate_magic_number) &&
    (strm >> CORBA::Any::to_octet (_tao_aggregate.flags));
}

// TAO_IDL - Generated from
// be/be_visitor_structure/cdr_op_cs.cpp:61

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::sequencedFrame &_tao_aggregate
  )
{
  return
    (strm << _tao_aggregate.sequence_num);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::sequencedFrame &_tao_aggregate
  )
{
  return
    (strm >> _tao_aggregate.sequence_num);
}

// TAO_IDL - Generated from
// be/be_visitor_structure/cdr_op_cs.cpp:61

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::frame &_tao_aggregate
  )
{
  return
    (strm << _tao_aggregate.timestamp) &&
    (strm << _tao_aggregate.synchSource) &&
    (strm << _tao_aggregate.source_ids) &&
    (strm << _tao_aggregate.sequence_num);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::frame &_tao_aggregate
  )
{
  return
    (strm >> _tao_aggregate.timestamp) &&
    (strm >> _tao_aggregate.synchSource) &&
    (strm >> _tao_aggregate.source_ids) &&
    (strm >> _tao_aggregate.sequence_num);
}

// TAO_IDL - Generated from
// be/be_visitor_sequence/cdr_op_cs.cpp:96

#if !defined _TAO_CDR_OP_flowProtocol_specialFrame__tao_seq_CORBA_Octet__CPP_
#define _TAO_CDR_OP_flowProtocol_specialFrame__tao_seq_CORBA_Octet__CPP_

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::specialFrame::_tao_seq_CORBA_Octet_ &_tao_sequence
  )
{
  const CORBA::ULong _tao_seq_len = _tao_sequence.length ();
  
  if (strm << _tao_seq_len)
    {
      // Encode all elements.
      
#if (TAO_NO_COPY_OCTET_SEQUENCES == 1)
      {
        TAO_Unbounded_Sequence<CORBA::Octet> *oseq = 
          static_cast<TAO_Unbounded_Sequence<CORBA::Octet> *> ((flowProtocol::specialFrame::_tao_seq_CORBA_Octet_ *)&_tao_sequence);
        if (oseq->mb ())
          return strm.write_octet_array_mb (oseq->mb ());
        else
          return strm.write_octet_array (_tao_sequence.get_buffer (), _tao_sequence.length ());
      }
      
#else /* TAO_NO_COPY_OCTET_SEQUENCES == 0 */
      return strm.write_octet_array (_tao_sequence.get_buffer (), _tao_sequence.length ());
    
#endif /* TAO_NO_COPY_OCTET_SEQUENCES == 0 */
    }
  
  return 0;
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::specialFrame::_tao_seq_CORBA_Octet_ &_tao_sequence
  )
{
  CORBA::ULong _tao_seq_len;
  
  if (strm >> _tao_seq_len)
    {
      // Add a check to the length of the sequence
      // to make sure it does not exceed the length
      // of the stream. (See bug 58.)
      if (_tao_seq_len > strm.length ())
        {
          return 0;
        }
      
      // Set the length of the sequence.
      _tao_sequence.length (_tao_seq_len);
      
      // If length is 0 we return true.
      if (0 >= _tao_seq_len) 
        {
          return 1;
        }
      
      // Retrieve all the elements.
      
#if (TAO_NO_COPY_OCTET_SEQUENCES == 1)
      if (ACE_BIT_DISABLED (strm.start ()->flags (),
      ACE_Message_Block::DONT_DELETE))
      {
        TAO_ORB_Core* orb_core = strm.orb_core ();
        if (orb_core != 0 &&
        strm.orb_core ()->resource_factory ()->
        input_cdr_allocator_type_locked () == 1)
        {
          TAO_Unbounded_Sequence<CORBA::Octet> *oseq = 
            static_cast<TAO_Unbounded_Sequence<CORBA::Octet> *> (&_tao_sequence);
          oseq->replace (_tao_seq_len, strm.start ());
          oseq->mb ()->wr_ptr (oseq->mb()->rd_ptr () + _tao_seq_len);
          strm.skip_bytes (_tao_seq_len);
          return 1;
        }
      }
      return strm.read_octet_array (_tao_sequence.get_buffer (), _tao_seq_len);
#else /* TAO_NO_COPY_OCTET_SEQUENCES == 0 */
      return strm.read_octet_array (_tao_sequence.get_buffer (), _tao_sequence.length ());
    
#endif /* TAO_NO_COPY_OCTET_SEQUENCES == 0 */
    
    }
  
  return 0;
}

#endif /* _TAO_CDR_OP_flowProtocol_specialFrame__tao_seq_CORBA_Octet__CPP_ */

// TAO_IDL - Generated from
// be/be_visitor_structure/cdr_op_cs.cpp:61

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::specialFrame &_tao_aggregate
  )
{
  return
    (strm << _tao_aggregate.context_id) &&
    (strm << _tao_aggregate.context_data);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::specialFrame &_tao_aggregate
  )
{
  return
    (strm >> _tao_aggregate.context_id) &&
    (strm >> _tao_aggregate.context_data);
}

// TAO_IDL - Generated from
// be/be_visitor_array/cdr_op_cs.cpp:177

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::credit::_magic_number_forany &_tao_array
  )
{
   return strm.write_char_array ((const ACE_CDR::Char *)_tao_array.in (), 4);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::credit::_magic_number_forany &_tao_array
  )
{
   return strm.read_char_array ((ACE_CDR::Char *) _tao_array.out (), 4);
}

// TAO_IDL - Generated from
// be/be_visitor_structure/cdr_op_cs.cpp:61

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const flowProtocol::credit &_tao_aggregate
  )
{
  flowProtocol::credit::_magic_number_forany _tao_aggregate_magic_number
      (const_cast<
          flowProtocol::credit::_magic_number_slice*> (
          _tao_aggregate.magic_number
        )
    );
  return
    (strm << _tao_aggregate_magic_number) &&
    (strm << _tao_aggregate.cred_num);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    flowProtocol::credit &_tao_aggregate
  )
{
  flowProtocol::credit::_magic_number_forany _tao_aggregate_magic_number
      (const_cast<
          flowProtocol::credit::_magic_number_slice*> (
          _tao_aggregate.magic_number
        )
    );
  return
    (strm >> _tao_aggregate_magic_number) &&
    (strm >> _tao_aggregate.cred_num);
}

