// -*- 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 "FT_CORBA_ORBC.h"
#include "tao/CDR.h"
#include "tao/Typecode.h"
#include "tao/Any_Impl_T.h"
#include "tao/Any_Dual_Impl_T.h"
#include "ace/OS_NS_string.h"

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

#if !defined (__ACE_INLINE__)
#include "FT_CORBA_ORBC.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_typecode/typecode_defn.cpp:290

static const CORBA::Long _oc_FT_FTDomainId[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  30,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x6f6d672e), 
  ACE_NTOHL (0x6f72672f), 
  ACE_NTOHL (0x46542f46), 
  ACE_NTOHL (0x54446f6d), 
  ACE_NTOHL (0x61696e49), 
  ACE_NTOHL (0x643a312e), 
  ACE_NTOHL (0x30000000),  // repository ID = IDL:omg.org/FT/FTDomainId:1.0
    11,
  ACE_NTOHL (0x4654446f), 
  ACE_NTOHL (0x6d61696e), 
  ACE_NTOHL (0x49640000),  // name = FTDomainId
    CORBA::tk_alias, // typecode kind for typedefs
  80, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    44,
    ACE_NTOHL (0x49444c3a), 
    ACE_NTOHL (0x6f6d672e), 
    ACE_NTOHL (0x6f72672f), 
    ACE_NTOHL (0x506f7274), 
    ACE_NTOHL (0x61626c65), 
    ACE_NTOHL (0x47726f75), 
    ACE_NTOHL (0x702f4772), 
    ACE_NTOHL (0x6f757044), 
    ACE_NTOHL (0x6f6d6169), 
    ACE_NTOHL (0x6e49643a), 
    ACE_NTOHL (0x312e3000),  // repository ID = IDL:omg.org/PortableGroup/GroupDomainId:1.0
        14,
    ACE_NTOHL (0x47726f75), 
    ACE_NTOHL (0x70446f6d), 
    ACE_NTOHL (0x61696e49), 
    ACE_NTOHL (0x64000000),  // name = GroupDomainId
        CORBA::tk_string, 
    0U, // string length

};

static CORBA::TypeCode _tc_TAO_tc_FT_FTDomainId (
    CORBA::tk_alias,
    sizeof (_oc_FT_FTDomainId),
    (char *) &_oc_FT_FTDomainId,
    0,
    sizeof (FT::FTDomainId)
  );

namespace FT
{
  ::CORBA::TypeCode_ptr _tc_FTDomainId =
    &_tc_TAO_tc_FT_FTDomainId;
}

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

static const CORBA::Long _oc_FT_ObjectGroupId[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  33,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x6f6d672e), 
  ACE_NTOHL (0x6f72672f), 
  ACE_NTOHL (0x46542f4f), 
  ACE_NTOHL (0x626a6563), 
  ACE_NTOHL (0x7447726f), 
  ACE_NTOHL (0x75704964), 
  ACE_NTOHL (0x3a312e30), 
  ACE_NTOHL (0x0),  // repository ID = IDL:omg.org/FT/ObjectGroupId:1.0
    14,
  ACE_NTOHL (0x4f626a65), 
  ACE_NTOHL (0x63744772), 
  ACE_NTOHL (0x6f757049), 
  ACE_NTOHL (0x64000000),  // name = ObjectGroupId
    CORBA::tk_alias, // typecode kind for typedefs
  76, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    44,
    ACE_NTOHL (0x49444c3a), 
    ACE_NTOHL (0x6f6d672e), 
    ACE_NTOHL (0x6f72672f), 
    ACE_NTOHL (0x506f7274), 
    ACE_NTOHL (0x61626c65), 
    ACE_NTOHL (0x47726f75), 
    ACE_NTOHL (0x702f4f62), 
    ACE_NTOHL (0x6a656374), 
    ACE_NTOHL (0x47726f75), 
    ACE_NTOHL (0x7049643a), 
    ACE_NTOHL (0x312e3000),  // repository ID = IDL:omg.org/PortableGroup/ObjectGroupId:1.0
        14,
    ACE_NTOHL (0x4f626a65), 
    ACE_NTOHL (0x63744772), 
    ACE_NTOHL (0x6f757049), 
    ACE_NTOHL (0x64000000),  // name = ObjectGroupId
        CORBA::tk_ulonglong,


};

static CORBA::TypeCode _tc_TAO_tc_FT_ObjectGroupId (
    CORBA::tk_alias,
    sizeof (_oc_FT_ObjectGroupId),
    (char *) &_oc_FT_ObjectGroupId,
    0,
    sizeof (FT::ObjectGroupId)
  );

namespace FT
{
  ::CORBA::TypeCode_ptr _tc_ObjectGroupId =
    &_tc_TAO_tc_FT_ObjectGroupId;
}

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

static const CORBA::Long _oc_FT_ObjectGroupRefVersion[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  41,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x6f6d672e), 
  ACE_NTOHL (0x6f72672f), 
  ACE_NTOHL (0x46542f4f), 
  ACE_NTOHL (0x626a6563), 
  ACE_NTOHL (0x7447726f), 
  ACE_NTOHL (0x75705265), 
  ACE_NTOHL (0x66566572), 
  ACE_NTOHL (0x73696f6e), 
  ACE_NTOHL (0x3a312e30), 
  ACE_NTOHL (0x0),  // repository ID = IDL:omg.org/FT/ObjectGroupRefVersion:1.0
    22,
  ACE_NTOHL (0x4f626a65), 
  ACE_NTOHL (0x63744772), 
  ACE_NTOHL (0x6f757052), 
  ACE_NTOHL (0x65665665), 
  ACE_NTOHL (0x7273696f), 
  ACE_NTOHL (0x6e000000),  // name = ObjectGroupRefVersion
    CORBA::tk_alias, // typecode kind for typedefs
  92, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    52,
    ACE_NTOHL (0x49444c3a), 
    ACE_NTOHL (0x6f6d672e), 
    ACE_NTOHL (0x6f72672f), 
    ACE_NTOHL (0x506f7274), 
    ACE_NTOHL (0x61626c65), 
    ACE_NTOHL (0x47726f75), 
    ACE_NTOHL (0x702f4f62), 
    ACE_NTOHL (0x6a656374), 
    ACE_NTOHL (0x47726f75), 
    ACE_NTOHL (0x70526566), 
    ACE_NTOHL (0x56657273), 
    ACE_NTOHL (0x696f6e3a), 
    ACE_NTOHL (0x312e3000),  // repository ID = IDL:omg.org/PortableGroup/ObjectGroupRefVersion:1.0
        22,
    ACE_NTOHL (0x4f626a65), 
    ACE_NTOHL (0x63744772), 
    ACE_NTOHL (0x6f757052), 
    ACE_NTOHL (0x65665665), 
    ACE_NTOHL (0x7273696f), 
    ACE_NTOHL (0x6e000000),  // name = ObjectGroupRefVersion
        CORBA::tk_ulong,


};

static CORBA::TypeCode _tc_TAO_tc_FT_ObjectGroupRefVersion (
    CORBA::tk_alias,
    sizeof (_oc_FT_ObjectGroupRefVersion),
    (char *) &_oc_FT_ObjectGroupRefVersion,
    0,
    sizeof (FT::ObjectGroupRefVersion)
  );

namespace FT
{
  ::CORBA::TypeCode_ptr _tc_ObjectGroupRefVersion =
    &_tc_TAO_tc_FT_ObjectGroupRefVersion;
}

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

static const CORBA::Long _oc_FT_TagFTGroupTaggedComponent[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  45,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x6f6d672e), 
  ACE_NTOHL (0x6f72672f), 
  ACE_NTOHL (0x46542f54), 
  ACE_NTOHL (0x61674654), 
  ACE_NTOHL (0x47726f75), 
  ACE_NTOHL (0x70546167), 
  ACE_NTOHL (0x67656443), 
  ACE_NTOHL (0x6f6d706f), 
  ACE_NTOHL (0x6e656e74), 
  ACE_NTOHL (0x3a312e30), 
  ACE_NTOHL (0x0),  // repository ID = IDL:omg.org/FT/TagFTGroupTaggedComponent:1.0
    26,
  ACE_NTOHL (0x54616746), 
  ACE_NTOHL (0x5447726f), 
  ACE_NTOHL (0x75705461), 
  ACE_NTOHL (0x67676564), 
  ACE_NTOHL (0x436f6d70), 
  ACE_NTOHL (0x6f6e656e), 
  ACE_NTOHL (0x74000000),  // name = TagFTGroupTaggedComponent
    CORBA::tk_struct, // typecode kind
  560, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    54,
    ACE_NTOHL (0x49444c3a), 
    ACE_NTOHL (0x6f6d672e), 
    ACE_NTOHL (0x6f72672f), 
    ACE_NTOHL (0x506f7274), 
    ACE_NTOHL (0x61626c65), 
    ACE_NTOHL (0x47726f75), 
    ACE_NTOHL (0x702f5461), 
    ACE_NTOHL (0x6747726f), 
    ACE_NTOHL (0x75705461), 
    ACE_NTOHL (0x67676564), 
    ACE_NTOHL (0x436f6d70), 
    ACE_NTOHL (0x6f6e656e), 
    ACE_NTOHL (0x743a312e), 
    ACE_NTOHL (0x30000000),  // repository ID = IDL:omg.org/PortableGroup/TagGroupTaggedComponent:1.0
        24,
    ACE_NTOHL (0x54616747), 
    ACE_NTOHL (0x726f7570), 
    ACE_NTOHL (0x54616767), 
    ACE_NTOHL (0x6564436f), 
    ACE_NTOHL (0x6d706f6e), 
    ACE_NTOHL (0x656e7400),  // name = TagGroupTaggedComponent
    4, // member count
        18,
    ACE_NTOHL (0x636f6d70), 
    ACE_NTOHL (0x6f6e656e), 
    ACE_NTOHL (0x745f7665), 
    ACE_NTOHL (0x7273696f), 
    ACE_NTOHL (0x6e000000),  // name = component_version
        CORBA::tk_struct, // typecode kind
    88, // encapsulation length
      TAO_ENCAP_BYTE_ORDER, // byte order
      29,
      ACE_NTOHL (0x49444c3a), 
      ACE_NTOHL (0x6f6d672e), 
      ACE_NTOHL (0x6f72672f), 
      ACE_NTOHL (0x47494f50), 
      ACE_NTOHL (0x2f566572), 
      ACE_NTOHL (0x73696f6e), 
      ACE_NTOHL (0x3a312e30), 
      ACE_NTOHL (0x0),  // repository ID = IDL:omg.org/GIOP/Version:1.0
            8,
      ACE_NTOHL (0x56657273), 
      ACE_NTOHL (0x696f6e00),  // name = Version
      2, // member count
            6,
      ACE_NTOHL (0x6d616a6f), 
      ACE_NTOHL (0x72000000),  // name = major
            CORBA::tk_octet,

      6,
      ACE_NTOHL (0x6d696e6f), 
      ACE_NTOHL (0x72000000),  // name = minor
            CORBA::tk_octet,


    16,
    ACE_NTOHL (0x67726f75), 
    ACE_NTOHL (0x705f646f), 
    ACE_NTOHL (0x6d61696e), 
    ACE_NTOHL (0x5f696400),  // name = group_domain_id
        CORBA::tk_alias, // typecode kind for typedefs
    80, // encapsulation length
      TAO_ENCAP_BYTE_ORDER, // byte order
      44,
      ACE_NTOHL (0x49444c3a), 
      ACE_NTOHL (0x6f6d672e), 
      ACE_NTOHL (0x6f72672f), 
      ACE_NTOHL (0x506f7274), 
      ACE_NTOHL (0x61626c65), 
      ACE_NTOHL (0x47726f75), 
      ACE_NTOHL (0x702f4772), 
      ACE_NTOHL (0x6f757044), 
      ACE_NTOHL (0x6f6d6169), 
      ACE_NTOHL (0x6e49643a), 
      ACE_NTOHL (0x312e3000),  // repository ID = IDL:omg.org/PortableGroup/GroupDomainId:1.0
            14,
      ACE_NTOHL (0x47726f75), 
      ACE_NTOHL (0x70446f6d), 
      ACE_NTOHL (0x61696e49), 
      ACE_NTOHL (0x64000000),  // name = GroupDomainId
            CORBA::tk_string, 
      0U, // string length

    16,
    ACE_NTOHL (0x6f626a65), 
    ACE_NTOHL (0x63745f67), 
    ACE_NTOHL (0x726f7570), 
    ACE_NTOHL (0x5f696400),  // name = object_group_id
        CORBA::tk_alias, // typecode kind for typedefs
    76, // encapsulation length
      TAO_ENCAP_BYTE_ORDER, // byte order
      44,
      ACE_NTOHL (0x49444c3a), 
      ACE_NTOHL (0x6f6d672e), 
      ACE_NTOHL (0x6f72672f), 
      ACE_NTOHL (0x506f7274), 
      ACE_NTOHL (0x61626c65), 
      ACE_NTOHL (0x47726f75), 
      ACE_NTOHL (0x702f4f62), 
      ACE_NTOHL (0x6a656374), 
      ACE_NTOHL (0x47726f75), 
      ACE_NTOHL (0x7049643a), 
      ACE_NTOHL (0x312e3000),  // repository ID = IDL:omg.org/PortableGroup/ObjectGroupId:1.0
            14,
      ACE_NTOHL (0x4f626a65), 
      ACE_NTOHL (0x63744772), 
      ACE_NTOHL (0x6f757049), 
      ACE_NTOHL (0x64000000),  // name = ObjectGroupId
            CORBA::tk_ulonglong,


    25,
    ACE_NTOHL (0x6f626a65), 
    ACE_NTOHL (0x63745f67), 
    ACE_NTOHL (0x726f7570), 
    ACE_NTOHL (0x5f726566), 
    ACE_NTOHL (0x5f766572), 
    ACE_NTOHL (0x73696f6e), 
    ACE_NTOHL (0x0),  // name = object_group_ref_version
        CORBA::tk_alias, // typecode kind for typedefs
    92, // encapsulation length
      TAO_ENCAP_BYTE_ORDER, // byte order
      52,
      ACE_NTOHL (0x49444c3a), 
      ACE_NTOHL (0x6f6d672e), 
      ACE_NTOHL (0x6f72672f), 
      ACE_NTOHL (0x506f7274), 
      ACE_NTOHL (0x61626c65), 
      ACE_NTOHL (0x47726f75), 
      ACE_NTOHL (0x702f4f62), 
      ACE_NTOHL (0x6a656374), 
      ACE_NTOHL (0x47726f75), 
      ACE_NTOHL (0x70526566), 
      ACE_NTOHL (0x56657273), 
      ACE_NTOHL (0x696f6e3a), 
      ACE_NTOHL (0x312e3000),  // repository ID = IDL:omg.org/PortableGroup/ObjectGroupRefVersion:1.0
            22,
      ACE_NTOHL (0x4f626a65), 
      ACE_NTOHL (0x63744772), 
      ACE_NTOHL (0x6f757052), 
      ACE_NTOHL (0x65665665), 
      ACE_NTOHL (0x7273696f), 
      ACE_NTOHL (0x6e000000),  // name = ObjectGroupRefVersion
            CORBA::tk_ulong,



};

static CORBA::TypeCode _tc_TAO_tc_FT_TagFTGroupTaggedComponent (
    CORBA::tk_alias,
    sizeof (_oc_FT_TagFTGroupTaggedComponent),
    (char *) &_oc_FT_TagFTGroupTaggedComponent,
    0,
    sizeof (FT::TagFTGroupTaggedComponent)
  );

namespace FT
{
  ::CORBA::TypeCode_ptr _tc_TagFTGroupTaggedComponent =
    &_tc_TAO_tc_FT_TagFTGroupTaggedComponent;
}

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

static const CORBA::Long _oc_FT_TagFTPrimaryTaggedComponent[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  47,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x6f6d672e), 
  ACE_NTOHL (0x6f72672f), 
  ACE_NTOHL (0x46542f54), 
  ACE_NTOHL (0x61674654), 
  ACE_NTOHL (0x5072696d), 
  ACE_NTOHL (0x61727954), 
  ACE_NTOHL (0x61676765), 
  ACE_NTOHL (0x64436f6d), 
  ACE_NTOHL (0x706f6e65), 
  ACE_NTOHL (0x6e743a31), 
  ACE_NTOHL (0x2e300000),  // repository ID = IDL:omg.org/FT/TagFTPrimaryTaggedComponent:1.0
    28,
  ACE_NTOHL (0x54616746), 
  ACE_NTOHL (0x54507269), 
  ACE_NTOHL (0x6d617279), 
  ACE_NTOHL (0x54616767), 
  ACE_NTOHL (0x6564436f), 
  ACE_NTOHL (0x6d706f6e), 
  ACE_NTOHL (0x656e7400),  // name = TagFTPrimaryTaggedComponent
  1, // member count
    8,
  ACE_NTOHL (0x7072696d), 
  ACE_NTOHL (0x61727900),  // name = primary
    CORBA::tk_boolean,

};

static CORBA::TypeCode _tc_TAO_tc_FT_TagFTPrimaryTaggedComponent (
    CORBA::tk_struct,
    sizeof (_oc_FT_TagFTPrimaryTaggedComponent),
    (char *) &_oc_FT_TagFTPrimaryTaggedComponent,
    0,
    sizeof (FT::TagFTPrimaryTaggedComponent)
  );

namespace FT
{
  ::CORBA::TypeCode_ptr _tc_TagFTPrimaryTaggedComponent =
    &_tc_TAO_tc_FT_TagFTPrimaryTaggedComponent;
}

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

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

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

static const CORBA::Long _oc_FT_FTGroupVersionServiceContext[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  48,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x6f6d672e), 
  ACE_NTOHL (0x6f72672f), 
  ACE_NTOHL (0x46542f46), 
  ACE_NTOHL (0x5447726f), 
  ACE_NTOHL (0x75705665), 
  ACE_NTOHL (0x7273696f), 
  ACE_NTOHL (0x6e536572), 
  ACE_NTOHL (0x76696365), 
  ACE_NTOHL (0x436f6e74), 
  ACE_NTOHL (0x6578743a), 
  ACE_NTOHL (0x312e3000),  // repository ID = IDL:omg.org/FT/FTGroupVersionServiceContext:1.0
    29,
  ACE_NTOHL (0x46544772), 
  ACE_NTOHL (0x6f757056), 
  ACE_NTOHL (0x65727369), 
  ACE_NTOHL (0x6f6e5365), 
  ACE_NTOHL (0x72766963), 
  ACE_NTOHL (0x65436f6e), 
  ACE_NTOHL (0x74657874), 
  ACE_NTOHL (0x0),  // name = FTGroupVersionServiceContext
  1, // member count
    25,
  ACE_NTOHL (0x6f626a65), 
  ACE_NTOHL (0x63745f67), 
  ACE_NTOHL (0x726f7570), 
  ACE_NTOHL (0x5f726566), 
  ACE_NTOHL (0x5f766572), 
  ACE_NTOHL (0x73696f6e), 
  ACE_NTOHL (0x0),  // name = object_group_ref_version
    CORBA::tk_alias, // typecode kind for typedefs
  180, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    41,
    ACE_NTOHL (0x49444c3a), 
    ACE_NTOHL (0x6f6d672e), 
    ACE_NTOHL (0x6f72672f), 
    ACE_NTOHL (0x46542f4f), 
    ACE_NTOHL (0x626a6563), 
    ACE_NTOHL (0x7447726f), 
    ACE_NTOHL (0x75705265), 
    ACE_NTOHL (0x66566572), 
    ACE_NTOHL (0x73696f6e), 
    ACE_NTOHL (0x3a312e30), 
    ACE_NTOHL (0x0),  // repository ID = IDL:omg.org/FT/ObjectGroupRefVersion:1.0
        22,
    ACE_NTOHL (0x4f626a65), 
    ACE_NTOHL (0x63744772), 
    ACE_NTOHL (0x6f757052), 
    ACE_NTOHL (0x65665665), 
    ACE_NTOHL (0x7273696f), 
    ACE_NTOHL (0x6e000000),  // name = ObjectGroupRefVersion
        CORBA::tk_alias, // typecode kind for typedefs
    92, // encapsulation length
      TAO_ENCAP_BYTE_ORDER, // byte order
      52,
      ACE_NTOHL (0x49444c3a), 
      ACE_NTOHL (0x6f6d672e), 
      ACE_NTOHL (0x6f72672f), 
      ACE_NTOHL (0x506f7274), 
      ACE_NTOHL (0x61626c65), 
      ACE_NTOHL (0x47726f75), 
      ACE_NTOHL (0x702f4f62), 
      ACE_NTOHL (0x6a656374), 
      ACE_NTOHL (0x47726f75), 
      ACE_NTOHL (0x70526566), 
      ACE_NTOHL (0x56657273), 
      ACE_NTOHL (0x696f6e3a), 
      ACE_NTOHL (0x312e3000),  // repository ID = IDL:omg.org/PortableGroup/ObjectGroupRefVersion:1.0
            22,
      ACE_NTOHL (0x4f626a65), 
      ACE_NTOHL (0x63744772), 
      ACE_NTOHL (0x6f757052), 
      ACE_NTOHL (0x65665665), 
      ACE_NTOHL (0x7273696f), 
      ACE_NTOHL (0x6e000000),  // name = ObjectGroupRefVersion
            CORBA::tk_ulong,



};

static CORBA::TypeCode _tc_TAO_tc_FT_FTGroupVersionServiceContext (
    CORBA::tk_struct,
    sizeof (_oc_FT_FTGroupVersionServiceContext),
    (char *) &_oc_FT_FTGroupVersionServiceContext,
    0,
    sizeof (FT::FTGroupVersionServiceContext)
  );

namespace FT
{
  ::CORBA::TypeCode_ptr _tc_FTGroupVersionServiceContext =
    &_tc_TAO_tc_FT_FTGroupVersionServiceContext;
}

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

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

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

static const CORBA::Long _oc_FT_FTRequestServiceContext[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  43,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x6f6d672e), 
  ACE_NTOHL (0x6f72672f), 
  ACE_NTOHL (0x46542f46), 
  ACE_NTOHL (0x54526571), 
  ACE_NTOHL (0x75657374), 
  ACE_NTOHL (0x53657276), 
  ACE_NTOHL (0x69636543), 
  ACE_NTOHL (0x6f6e7465), 
  ACE_NTOHL (0x78743a31), 
  ACE_NTOHL (0x2e300000),  // repository ID = IDL:omg.org/FT/FTRequestServiceContext:1.0
    24,
  ACE_NTOHL (0x46545265), 
  ACE_NTOHL (0x71756573), 
  ACE_NTOHL (0x74536572), 
  ACE_NTOHL (0x76696365), 
  ACE_NTOHL (0x436f6e74), 
  ACE_NTOHL (0x65787400),  // name = FTRequestServiceContext
  3, // member count
    10,
  ACE_NTOHL (0x636c6965), 
  ACE_NTOHL (0x6e745f69), 
  ACE_NTOHL (0x64000000),  // name = client_id
    CORBA::tk_string, 
  0U, // string length
  13,
  ACE_NTOHL (0x72657465), 
  ACE_NTOHL (0x6e74696f), 
  ACE_NTOHL (0x6e5f6964), 
  ACE_NTOHL (0x0),  // name = retention_id
    CORBA::tk_long,

  16,
  ACE_NTOHL (0x65787069), 
  ACE_NTOHL (0x72617469), 
  ACE_NTOHL (0x6f6e5f74), 
  ACE_NTOHL (0x696d6500),  // name = expiration_time
    CORBA::tk_alias, // typecode kind for typedefs
  56, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    31,
    ACE_NTOHL (0x49444c3a), 
    ACE_NTOHL (0x6f6d672e), 
    ACE_NTOHL (0x6f72672f), 
    ACE_NTOHL (0x54696d65), 
    ACE_NTOHL (0x42617365), 
    ACE_NTOHL (0x2f54696d), 
    ACE_NTOHL (0x65543a31), 
    ACE_NTOHL (0x2e300000),  // repository ID = IDL:omg.org/TimeBase/TimeT:1.0
        6,
    ACE_NTOHL (0x54696d65), 
    ACE_NTOHL (0x54000000),  // name = TimeT
        CORBA::tk_ulonglong,


};

static CORBA::TypeCode _tc_TAO_tc_FT_FTRequestServiceContext (
    CORBA::tk_struct,
    sizeof (_oc_FT_FTRequestServiceContext),
    (char *) &_oc_FT_FTRequestServiceContext,
    0,
    sizeof (FT::FTRequestServiceContext)
  );

namespace FT
{
  ::CORBA::TypeCode_ptr _tc_FTRequestServiceContext =
    &_tc_TAO_tc_FT_FTRequestServiceContext;
}

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

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

// TAO_IDL - Generated from
// be/be_visitor_interface/interface_cs.cpp:60

// Traits specializations for FT::RequestDurationPolicy.

ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
FT::RequestDurationPolicy_ptr
TAO::Objref_Traits<FT::RequestDurationPolicy>::tao_duplicate (
    FT::RequestDurationPolicy_ptr p
  )
{
  return FT::RequestDurationPolicy::_duplicate (p);
}

ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
void
TAO::Objref_Traits<FT::RequestDurationPolicy>::tao_release (
    FT::RequestDurationPolicy_ptr p
  )
{
  CORBA::release (p);
}

ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
FT::RequestDurationPolicy_ptr
TAO::Objref_Traits<FT::RequestDurationPolicy>::tao_nil (void)
{
  return FT::RequestDurationPolicy::_nil ();
}

ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
CORBA::Boolean
TAO::Objref_Traits<FT::RequestDurationPolicy>::tao_marshal (
    FT::RequestDurationPolicy_ptr p,
    TAO_OutputCDR & cdr
  )
{
  return CORBA::Object::marshal (p, cdr);
}

// Function pointer for collocation factory initialization.
TAO::Collocation_Proxy_Broker * 
(*FT__TAO_RequestDurationPolicy_Proxy_Broker_Factory_function_pointer) (
    CORBA::Object_ptr obj
  ) = 0;

FT::RequestDurationPolicy::RequestDurationPolicy (void)
{}

FT::RequestDurationPolicy::~RequestDurationPolicy (void)
{}

void 
FT::RequestDurationPolicy::_tao_any_destructor (void *_tao_void_pointer)
{
  RequestDurationPolicy *_tao_tmp_pointer =
    static_cast<RequestDurationPolicy *> (_tao_void_pointer);
  CORBA::release (_tao_tmp_pointer);
}

FT::RequestDurationPolicy_ptr
FT::RequestDurationPolicy::_narrow (
    CORBA::Object_ptr _tao_objref
    ACE_ENV_ARG_DECL_NOT_USED
  )
{
  if (CORBA::is_nil (_tao_objref))
    {
      return RequestDurationPolicy::_nil ();
    }
  
  RequestDurationPolicy_ptr proxy =
    dynamic_cast<RequestDurationPolicy_ptr> (_tao_objref);
  
  return RequestDurationPolicy::_duplicate (proxy);
}

FT::RequestDurationPolicy_ptr
FT::RequestDurationPolicy::_unchecked_narrow (
    CORBA::Object_ptr _tao_objref
    ACE_ENV_ARG_DECL_NOT_USED
  )
{
  if (CORBA::is_nil (_tao_objref))
    {
      return RequestDurationPolicy::_nil ();
    }
  
  RequestDurationPolicy_ptr proxy =
    dynamic_cast<RequestDurationPolicy_ptr> (_tao_objref);
  
  return RequestDurationPolicy::_duplicate (proxy);
}

FT::RequestDurationPolicy_ptr
FT::RequestDurationPolicy::_duplicate (RequestDurationPolicy_ptr obj)
{
  if (! CORBA::is_nil (obj))
    {
      obj->_add_ref ();
    }
  
  return obj;
}

CORBA::Boolean
FT::RequestDurationPolicy::_is_a (
    const char *value
    ACE_ENV_ARG_DECL_NOT_USED
  )
{
  if (
      !ACE_OS::strcmp (
          (char *)value,
          "IDL:omg.org/CORBA/Policy:1.0"
        ) ||
      !ACE_OS::strcmp (
          (char *)value,
          "IDL:omg.org/FT/RequestDurationPolicy:1.0"
        ) ||
      !ACE_OS::strcmp (
          (char *)value,
          "IDL:omg.org/CORBA/LocalObject:1.0"
        ) ||
      !ACE_OS::strcmp (
          (char *)value,
          "IDL:omg.org/CORBA/Object:1.0"
        )
     )
    {
      return 1; // success using local knowledge
    }
  else
    {
      return 0;
    }
}

const char* FT::RequestDurationPolicy::_interface_repository_id (void) const
{
  return "IDL:omg.org/FT/RequestDurationPolicy:1.0";
}

CORBA::Boolean
FT::RequestDurationPolicy::marshal (TAO_OutputCDR &)
{
  return 0;
}

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

static const CORBA::Long _oc_FT_RequestDurationPolicy[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  41,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x6f6d672e), 
  ACE_NTOHL (0x6f72672f), 
  ACE_NTOHL (0x46542f52), 
  ACE_NTOHL (0x65717565), 
  ACE_NTOHL (0x73744475), 
  ACE_NTOHL (0x72617469), 
  ACE_NTOHL (0x6f6e506f), 
  ACE_NTOHL (0x6c696379), 
  ACE_NTOHL (0x3a312e30), 
  ACE_NTOHL (0x0),  // repository ID = IDL:omg.org/FT/RequestDurationPolicy:1.0
    22,
  ACE_NTOHL (0x52657175), 
  ACE_NTOHL (0x65737444), 
  ACE_NTOHL (0x75726174), 
  ACE_NTOHL (0x696f6e50), 
  ACE_NTOHL (0x6f6c6963), 
  ACE_NTOHL (0x79000000),  // name = RequestDurationPolicy
  };

static CORBA::TypeCode _tc_TAO_tc_FT_RequestDurationPolicy (
    CORBA::tk_objref,
    sizeof (_oc_FT_RequestDurationPolicy),
    (char *) &_oc_FT_RequestDurationPolicy,
    0,
    sizeof (FT::RequestDurationPolicy)
  );

namespace FT
{
  ::CORBA::TypeCode_ptr _tc_RequestDurationPolicy =
    &_tc_TAO_tc_FT_RequestDurationPolicy;
}

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

static const CORBA::Long _oc_FT_HeartbeatPolicyValue[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  40,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x6f6d672e), 
  ACE_NTOHL (0x6f72672f), 
  ACE_NTOHL (0x46542f48), 
  ACE_NTOHL (0x65617274), 
  ACE_NTOHL (0x62656174), 
  ACE_NTOHL (0x506f6c69), 
  ACE_NTOHL (0x63795661), 
  ACE_NTOHL (0x6c75653a), 
  ACE_NTOHL (0x312e3000),  // repository ID = IDL:omg.org/FT/HeartbeatPolicyValue:1.0
    21,
  ACE_NTOHL (0x48656172), 
  ACE_NTOHL (0x74626561), 
  ACE_NTOHL (0x74506f6c), 
  ACE_NTOHL (0x69637956), 
  ACE_NTOHL (0x616c7565), 
  ACE_NTOHL (0x0),  // name = HeartbeatPolicyValue
  3, // member count
    10,
  ACE_NTOHL (0x68656172), 
  ACE_NTOHL (0x74626561), 
  ACE_NTOHL (0x74000000),  // name = heartbeat
    CORBA::tk_boolean,

  19,
  ACE_NTOHL (0x68656172), 
  ACE_NTOHL (0x74626561), 
  ACE_NTOHL (0x745f696e), 
  ACE_NTOHL (0x74657276), 
  ACE_NTOHL (0x616c0000),  // name = heartbeat_interval
    CORBA::tk_alias, // typecode kind for typedefs
  56, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    31,
    ACE_NTOHL (0x49444c3a), 
    ACE_NTOHL (0x6f6d672e), 
    ACE_NTOHL (0x6f72672f), 
    ACE_NTOHL (0x54696d65), 
    ACE_NTOHL (0x42617365), 
    ACE_NTOHL (0x2f54696d), 
    ACE_NTOHL (0x65543a31), 
    ACE_NTOHL (0x2e300000),  // repository ID = IDL:omg.org/TimeBase/TimeT:1.0
        6,
    ACE_NTOHL (0x54696d65), 
    ACE_NTOHL (0x54000000),  // name = TimeT
        CORBA::tk_ulonglong,


  18,
  ACE_NTOHL (0x68656172), 
  ACE_NTOHL (0x74626561), 
  ACE_NTOHL (0x745f7469), 
  ACE_NTOHL (0x6d656f75), 
  ACE_NTOHL (0x74000000),  // name = heartbeat_timeout
    CORBA::tk_alias, // typecode kind for typedefs
  56, // encapsulation length
    TAO_ENCAP_BYTE_ORDER, // byte order
    31,
    ACE_NTOHL (0x49444c3a), 
    ACE_NTOHL (0x6f6d672e), 
    ACE_NTOHL (0x6f72672f), 
    ACE_NTOHL (0x54696d65), 
    ACE_NTOHL (0x42617365), 
    ACE_NTOHL (0x2f54696d), 
    ACE_NTOHL (0x65543a31), 
    ACE_NTOHL (0x2e300000),  // repository ID = IDL:omg.org/TimeBase/TimeT:1.0
        6,
    ACE_NTOHL (0x54696d65), 
    ACE_NTOHL (0x54000000),  // name = TimeT
        CORBA::tk_ulonglong,


};

static CORBA::TypeCode _tc_TAO_tc_FT_HeartbeatPolicyValue (
    CORBA::tk_struct,
    sizeof (_oc_FT_HeartbeatPolicyValue),
    (char *) &_oc_FT_HeartbeatPolicyValue,
    0,
    sizeof (FT::HeartbeatPolicyValue)
  );

namespace FT
{
  ::CORBA::TypeCode_ptr _tc_HeartbeatPolicyValue =
    &_tc_TAO_tc_FT_HeartbeatPolicyValue;
}

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

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

// TAO_IDL - Generated from
// be/be_visitor_interface/interface_cs.cpp:60

// Traits specializations for FT::HeartbeatPolicy.

ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
FT::HeartbeatPolicy_ptr
TAO::Objref_Traits<FT::HeartbeatPolicy>::tao_duplicate (
    FT::HeartbeatPolicy_ptr p
  )
{
  return FT::HeartbeatPolicy::_duplicate (p);
}

ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
void
TAO::Objref_Traits<FT::HeartbeatPolicy>::tao_release (
    FT::HeartbeatPolicy_ptr p
  )
{
  CORBA::release (p);
}

ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
FT::HeartbeatPolicy_ptr
TAO::Objref_Traits<FT::HeartbeatPolicy>::tao_nil (void)
{
  return FT::HeartbeatPolicy::_nil ();
}

ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
CORBA::Boolean
TAO::Objref_Traits<FT::HeartbeatPolicy>::tao_marshal (
    FT::HeartbeatPolicy_ptr p,
    TAO_OutputCDR & cdr
  )
{
  return CORBA::Object::marshal (p, cdr);
}

// Function pointer for collocation factory initialization.
TAO::Collocation_Proxy_Broker * 
(*FT__TAO_HeartbeatPolicy_Proxy_Broker_Factory_function_pointer) (
    CORBA::Object_ptr obj
  ) = 0;

FT::HeartbeatPolicy::HeartbeatPolicy (void)
{}

FT::HeartbeatPolicy::~HeartbeatPolicy (void)
{}

void 
FT::HeartbeatPolicy::_tao_any_destructor (void *_tao_void_pointer)
{
  HeartbeatPolicy *_tao_tmp_pointer =
    static_cast<HeartbeatPolicy *> (_tao_void_pointer);
  CORBA::release (_tao_tmp_pointer);
}

FT::HeartbeatPolicy_ptr
FT::HeartbeatPolicy::_narrow (
    CORBA::Object_ptr _tao_objref
    ACE_ENV_ARG_DECL_NOT_USED
  )
{
  if (CORBA::is_nil (_tao_objref))
    {
      return HeartbeatPolicy::_nil ();
    }
  
  HeartbeatPolicy_ptr proxy =
    dynamic_cast<HeartbeatPolicy_ptr> (_tao_objref);
  
  return HeartbeatPolicy::_duplicate (proxy);
}

FT::HeartbeatPolicy_ptr
FT::HeartbeatPolicy::_unchecked_narrow (
    CORBA::Object_ptr _tao_objref
    ACE_ENV_ARG_DECL_NOT_USED
  )
{
  if (CORBA::is_nil (_tao_objref))
    {
      return HeartbeatPolicy::_nil ();
    }
  
  HeartbeatPolicy_ptr proxy =
    dynamic_cast<HeartbeatPolicy_ptr> (_tao_objref);
  
  return HeartbeatPolicy::_duplicate (proxy);
}

FT::HeartbeatPolicy_ptr
FT::HeartbeatPolicy::_duplicate (HeartbeatPolicy_ptr obj)
{
  if (! CORBA::is_nil (obj))
    {
      obj->_add_ref ();
    }
  
  return obj;
}

CORBA::Boolean
FT::HeartbeatPolicy::_is_a (
    const char *value
    ACE_ENV_ARG_DECL_NOT_USED
  )
{
  if (
      !ACE_OS::strcmp (
          (char *)value,
          "IDL:omg.org/CORBA/Policy:1.0"
        ) ||
      !ACE_OS::strcmp (
          (char *)value,
          "IDL:omg.org/FT/HeartbeatPolicy:1.0"
        ) ||
      !ACE_OS::strcmp (
          (char *)value,
          "IDL:omg.org/CORBA/LocalObject:1.0"
        ) ||
      !ACE_OS::strcmp (
          (char *)value,
          "IDL:omg.org/CORBA/Object:1.0"
        )
     )
    {
      return 1; // success using local knowledge
    }
  else
    {
      return 0;
    }
}

const char* FT::HeartbeatPolicy::_interface_repository_id (void) const
{
  return "IDL:omg.org/FT/HeartbeatPolicy:1.0";
}

CORBA::Boolean
FT::HeartbeatPolicy::marshal (TAO_OutputCDR &)
{
  return 0;
}

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

static const CORBA::Long _oc_FT_HeartbeatPolicy[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  35,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x6f6d672e), 
  ACE_NTOHL (0x6f72672f), 
  ACE_NTOHL (0x46542f48), 
  ACE_NTOHL (0x65617274), 
  ACE_NTOHL (0x62656174), 
  ACE_NTOHL (0x506f6c69), 
  ACE_NTOHL (0x63793a31), 
  ACE_NTOHL (0x2e300000),  // repository ID = IDL:omg.org/FT/HeartbeatPolicy:1.0
    16,
  ACE_NTOHL (0x48656172), 
  ACE_NTOHL (0x74626561), 
  ACE_NTOHL (0x74506f6c), 
  ACE_NTOHL (0x69637900),  // name = HeartbeatPolicy
  };

static CORBA::TypeCode _tc_TAO_tc_FT_HeartbeatPolicy (
    CORBA::tk_objref,
    sizeof (_oc_FT_HeartbeatPolicy),
    (char *) &_oc_FT_HeartbeatPolicy,
    0,
    sizeof (FT::HeartbeatPolicy)
  );

namespace FT
{
  ::CORBA::TypeCode_ptr _tc_HeartbeatPolicy =
    &_tc_TAO_tc_FT_HeartbeatPolicy;
}

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

static const CORBA::Long _oc_FT_TagFTHeartbeatEnabledTaggedComponent[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  56,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x6f6d672e), 
  ACE_NTOHL (0x6f72672f), 
  ACE_NTOHL (0x46542f54), 
  ACE_NTOHL (0x61674654), 
  ACE_NTOHL (0x48656172), 
  ACE_NTOHL (0x74626561), 
  ACE_NTOHL (0x74456e61), 
  ACE_NTOHL (0x626c6564), 
  ACE_NTOHL (0x54616767), 
  ACE_NTOHL (0x6564436f), 
  ACE_NTOHL (0x6d706f6e), 
  ACE_NTOHL (0x656e743a), 
  ACE_NTOHL (0x312e3000),  // repository ID = IDL:omg.org/FT/TagFTHeartbeatEnabledTaggedComponent:1.0
    37,
  ACE_NTOHL (0x54616746), 
  ACE_NTOHL (0x54486561), 
  ACE_NTOHL (0x72746265), 
  ACE_NTOHL (0x6174456e), 
  ACE_NTOHL (0x61626c65), 
  ACE_NTOHL (0x64546167), 
  ACE_NTOHL (0x67656443), 
  ACE_NTOHL (0x6f6d706f), 
  ACE_NTOHL (0x6e656e74), 
  ACE_NTOHL (0x0),  // name = TagFTHeartbeatEnabledTaggedComponent
  1, // member count
    18,
  ACE_NTOHL (0x68656172), 
  ACE_NTOHL (0x74626561), 
  ACE_NTOHL (0x745f656e), 
  ACE_NTOHL (0x61626c65), 
  ACE_NTOHL (0x64000000),  // name = heartbeat_enabled
    CORBA::tk_boolean,

};

static CORBA::TypeCode _tc_TAO_tc_FT_TagFTHeartbeatEnabledTaggedComponent (
    CORBA::tk_struct,
    sizeof (_oc_FT_TagFTHeartbeatEnabledTaggedComponent),
    (char *) &_oc_FT_TagFTHeartbeatEnabledTaggedComponent,
    0,
    sizeof (FT::TagFTHeartbeatEnabledTaggedComponent)
  );

namespace FT
{
  ::CORBA::TypeCode_ptr _tc_TagFTHeartbeatEnabledTaggedComponent =
    &_tc_TAO_tc_FT_TagFTHeartbeatEnabledTaggedComponent;
}

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

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

// TAO_IDL - Generated from
// be/be_visitor_interface/interface_cs.cpp:60

// Traits specializations for FT::HeartbeatEnabledPolicy.

ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
FT::HeartbeatEnabledPolicy_ptr
TAO::Objref_Traits<FT::HeartbeatEnabledPolicy>::tao_duplicate (
    FT::HeartbeatEnabledPolicy_ptr p
  )
{
  return FT::HeartbeatEnabledPolicy::_duplicate (p);
}

ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
void
TAO::Objref_Traits<FT::HeartbeatEnabledPolicy>::tao_release (
    FT::HeartbeatEnabledPolicy_ptr p
  )
{
  CORBA::release (p);
}

ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
FT::HeartbeatEnabledPolicy_ptr
TAO::Objref_Traits<FT::HeartbeatEnabledPolicy>::tao_nil (void)
{
  return FT::HeartbeatEnabledPolicy::_nil ();
}

ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
CORBA::Boolean
TAO::Objref_Traits<FT::HeartbeatEnabledPolicy>::tao_marshal (
    FT::HeartbeatEnabledPolicy_ptr p,
    TAO_OutputCDR & cdr
  )
{
  return CORBA::Object::marshal (p, cdr);
}

// Function pointer for collocation factory initialization.
TAO::Collocation_Proxy_Broker * 
(*FT__TAO_HeartbeatEnabledPolicy_Proxy_Broker_Factory_function_pointer) (
    CORBA::Object_ptr obj
  ) = 0;

FT::HeartbeatEnabledPolicy::HeartbeatEnabledPolicy (void)
{}

FT::HeartbeatEnabledPolicy::~HeartbeatEnabledPolicy (void)
{}

void 
FT::HeartbeatEnabledPolicy::_tao_any_destructor (void *_tao_void_pointer)
{
  HeartbeatEnabledPolicy *_tao_tmp_pointer =
    static_cast<HeartbeatEnabledPolicy *> (_tao_void_pointer);
  CORBA::release (_tao_tmp_pointer);
}

FT::HeartbeatEnabledPolicy_ptr
FT::HeartbeatEnabledPolicy::_narrow (
    CORBA::Object_ptr _tao_objref
    ACE_ENV_ARG_DECL_NOT_USED
  )
{
  if (CORBA::is_nil (_tao_objref))
    {
      return HeartbeatEnabledPolicy::_nil ();
    }
  
  HeartbeatEnabledPolicy_ptr proxy =
    dynamic_cast<HeartbeatEnabledPolicy_ptr> (_tao_objref);
  
  return HeartbeatEnabledPolicy::_duplicate (proxy);
}

FT::HeartbeatEnabledPolicy_ptr
FT::HeartbeatEnabledPolicy::_unchecked_narrow (
    CORBA::Object_ptr _tao_objref
    ACE_ENV_ARG_DECL_NOT_USED
  )
{
  if (CORBA::is_nil (_tao_objref))
    {
      return HeartbeatEnabledPolicy::_nil ();
    }
  
  HeartbeatEnabledPolicy_ptr proxy =
    dynamic_cast<HeartbeatEnabledPolicy_ptr> (_tao_objref);
  
  return HeartbeatEnabledPolicy::_duplicate (proxy);
}

FT::HeartbeatEnabledPolicy_ptr
FT::HeartbeatEnabledPolicy::_duplicate (HeartbeatEnabledPolicy_ptr obj)
{
  if (! CORBA::is_nil (obj))
    {
      obj->_add_ref ();
    }
  
  return obj;
}

CORBA::Boolean
FT::HeartbeatEnabledPolicy::_is_a (
    const char *value
    ACE_ENV_ARG_DECL_NOT_USED
  )
{
  if (
      !ACE_OS::strcmp (
          (char *)value,
          "IDL:omg.org/CORBA/Policy:1.0"
        ) ||
      !ACE_OS::strcmp (
          (char *)value,
          "IDL:omg.org/FT/HeartbeatEnabledPolicy:1.0"
        ) ||
      !ACE_OS::strcmp (
          (char *)value,
          "IDL:omg.org/CORBA/LocalObject:1.0"
        ) ||
      !ACE_OS::strcmp (
          (char *)value,
          "IDL:omg.org/CORBA/Object:1.0"
        )
     )
    {
      return 1; // success using local knowledge
    }
  else
    {
      return 0;
    }
}

const char* FT::HeartbeatEnabledPolicy::_interface_repository_id (void) const
{
  return "IDL:omg.org/FT/HeartbeatEnabledPolicy:1.0";
}

CORBA::Boolean
FT::HeartbeatEnabledPolicy::marshal (TAO_OutputCDR &)
{
  return 0;
}

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

static const CORBA::Long _oc_FT_HeartbeatEnabledPolicy[] =
{
    TAO_ENCAP_BYTE_ORDER, // byte order
  42,
  ACE_NTOHL (0x49444c3a), 
  ACE_NTOHL (0x6f6d672e), 
  ACE_NTOHL (0x6f72672f), 
  ACE_NTOHL (0x46542f48), 
  ACE_NTOHL (0x65617274), 
  ACE_NTOHL (0x62656174), 
  ACE_NTOHL (0x456e6162), 
  ACE_NTOHL (0x6c656450), 
  ACE_NTOHL (0x6f6c6963), 
  ACE_NTOHL (0x793a312e), 
  ACE_NTOHL (0x30000000),  // repository ID = IDL:omg.org/FT/HeartbeatEnabledPolicy:1.0
    23,
  ACE_NTOHL (0x48656172), 
  ACE_NTOHL (0x74626561), 
  ACE_NTOHL (0x74456e61), 
  ACE_NTOHL (0x626c6564), 
  ACE_NTOHL (0x506f6c69), 
  ACE_NTOHL (0x63790000),  // name = HeartbeatEnabledPolicy
  };

static CORBA::TypeCode _tc_TAO_tc_FT_HeartbeatEnabledPolicy (
    CORBA::tk_objref,
    sizeof (_oc_FT_HeartbeatEnabledPolicy),
    (char *) &_oc_FT_HeartbeatEnabledPolicy,
    0,
    sizeof (FT::HeartbeatEnabledPolicy)
  );

namespace FT
{
  ::CORBA::TypeCode_ptr _tc_HeartbeatEnabledPolicy =
    &_tc_TAO_tc_FT_HeartbeatEnabledPolicy;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// TAO_IDL - Generated from
// be/be_visitor_interface/any_op_cs.cpp:50

ACE_TEMPLATE_SPECIALIZATION
CORBA::Boolean
TAO::Any_Impl_T<FT::RequestDurationPolicy>::to_object (
    CORBA::Object_ptr &_tao_elem
  ) const
{
  _tao_elem = CORBA::Object::_duplicate (this->value_);
  return 1;
}

ACE_TEMPLATE_SPECIALIZATION
CORBA::Boolean
TAO::Any_Impl_T<FT::RequestDurationPolicy>::marshal_value (TAO_OutputCDR &)
{
  return 0;
}

ACE_TEMPLATE_SPECIALIZATION
CORBA::Boolean
TAO::Any_Impl_T<FT::RequestDurationPolicy>::demarshal_value (TAO_InputCDR &)
{
  return 0;
}

// Copying insertion.
void
operator<<= (
    CORBA::Any &_tao_any,
    FT::RequestDurationPolicy_ptr _tao_elem
  )
{
  FT::RequestDurationPolicy_ptr _tao_objptr =
    FT::RequestDurationPolicy::_duplicate (_tao_elem);
  _tao_any <<= &_tao_objptr;
}

// Non-copying insertion.
void
operator<<= (
    CORBA::Any &_tao_any,
    FT::RequestDurationPolicy_ptr *_tao_elem
  )
{
  TAO::Any_Impl_T<FT::RequestDurationPolicy>::insert (
      _tao_any,
      FT::RequestDurationPolicy::_tao_any_destructor,
      FT::_tc_RequestDurationPolicy,
      *_tao_elem
    );
}

CORBA::Boolean
operator>>= (
    const CORBA::Any &_tao_any,
    FT::RequestDurationPolicy_ptr &_tao_elem
  )
{
  return
    TAO::Any_Impl_T<FT::RequestDurationPolicy>::extract (
        _tao_any,
        FT::RequestDurationPolicy::_tao_any_destructor,
        FT::_tc_RequestDurationPolicy,
        _tao_elem
      );
}

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

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

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

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

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

// TAO_IDL - Generated from
// be/be_visitor_interface/any_op_cs.cpp:50

ACE_TEMPLATE_SPECIALIZATION
CORBA::Boolean
TAO::Any_Impl_T<FT::HeartbeatPolicy>::to_object (
    CORBA::Object_ptr &_tao_elem
  ) const
{
  _tao_elem = CORBA::Object::_duplicate (this->value_);
  return 1;
}

ACE_TEMPLATE_SPECIALIZATION
CORBA::Boolean
TAO::Any_Impl_T<FT::HeartbeatPolicy>::marshal_value (TAO_OutputCDR &)
{
  return 0;
}

ACE_TEMPLATE_SPECIALIZATION
CORBA::Boolean
TAO::Any_Impl_T<FT::HeartbeatPolicy>::demarshal_value (TAO_InputCDR &)
{
  return 0;
}

// Copying insertion.
void
operator<<= (
    CORBA::Any &_tao_any,
    FT::HeartbeatPolicy_ptr _tao_elem
  )
{
  FT::HeartbeatPolicy_ptr _tao_objptr =
    FT::HeartbeatPolicy::_duplicate (_tao_elem);
  _tao_any <<= &_tao_objptr;
}

// Non-copying insertion.
void
operator<<= (
    CORBA::Any &_tao_any,
    FT::HeartbeatPolicy_ptr *_tao_elem
  )
{
  TAO::Any_Impl_T<FT::HeartbeatPolicy>::insert (
      _tao_any,
      FT::HeartbeatPolicy::_tao_any_destructor,
      FT::_tc_HeartbeatPolicy,
      *_tao_elem
    );
}

CORBA::Boolean
operator>>= (
    const CORBA::Any &_tao_any,
    FT::HeartbeatPolicy_ptr &_tao_elem
  )
{
  return
    TAO::Any_Impl_T<FT::HeartbeatPolicy>::extract (
        _tao_any,
        FT::HeartbeatPolicy::_tao_any_destructor,
        FT::_tc_HeartbeatPolicy,
        _tao_elem
      );
}

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

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

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

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

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

// TAO_IDL - Generated from
// be/be_visitor_interface/any_op_cs.cpp:50

ACE_TEMPLATE_SPECIALIZATION
CORBA::Boolean
TAO::Any_Impl_T<FT::HeartbeatEnabledPolicy>::to_object (
    CORBA::Object_ptr &_tao_elem
  ) const
{
  _tao_elem = CORBA::Object::_duplicate (this->value_);
  return 1;
}

ACE_TEMPLATE_SPECIALIZATION
CORBA::Boolean
TAO::Any_Impl_T<FT::HeartbeatEnabledPolicy>::marshal_value (TAO_OutputCDR &)
{
  return 0;
}

ACE_TEMPLATE_SPECIALIZATION
CORBA::Boolean
TAO::Any_Impl_T<FT::HeartbeatEnabledPolicy>::demarshal_value (TAO_InputCDR &)
{
  return 0;
}

// Copying insertion.
void
operator<<= (
    CORBA::Any &_tao_any,
    FT::HeartbeatEnabledPolicy_ptr _tao_elem
  )
{
  FT::HeartbeatEnabledPolicy_ptr _tao_objptr =
    FT::HeartbeatEnabledPolicy::_duplicate (_tao_elem);
  _tao_any <<= &_tao_objptr;
}

// Non-copying insertion.
void
operator<<= (
    CORBA::Any &_tao_any,
    FT::HeartbeatEnabledPolicy_ptr *_tao_elem
  )
{
  TAO::Any_Impl_T<FT::HeartbeatEnabledPolicy>::insert (
      _tao_any,
      FT::HeartbeatEnabledPolicy::_tao_any_destructor,
      FT::_tc_HeartbeatEnabledPolicy,
      *_tao_elem
    );
}

CORBA::Boolean
operator>>= (
    const CORBA::Any &_tao_any,
    FT::HeartbeatEnabledPolicy_ptr &_tao_elem
  )
{
  return
    TAO::Any_Impl_T<FT::HeartbeatEnabledPolicy>::extract (
        _tao_any,
        FT::HeartbeatEnabledPolicy::_tao_any_destructor,
        FT::_tc_HeartbeatEnabledPolicy,
        _tao_elem
      );
}

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

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const FT::TagFTPrimaryTaggedComponent &_tao_aggregate
  )
{
  return
    (strm << CORBA::Any::from_boolean (_tao_aggregate.primary));
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    FT::TagFTPrimaryTaggedComponent &_tao_aggregate
  )
{
  return
    (strm >> CORBA::Any::to_boolean (_tao_aggregate.primary));
}

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

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const FT::FTGroupVersionServiceContext &_tao_aggregate
  )
{
  return
    (strm << _tao_aggregate.object_group_ref_version);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    FT::FTGroupVersionServiceContext &_tao_aggregate
  )
{
  return
    (strm >> _tao_aggregate.object_group_ref_version);
}

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

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const FT::FTRequestServiceContext &_tao_aggregate
  )
{
  return
    (strm << _tao_aggregate.client_id.in ()) &&
    (strm << _tao_aggregate.retention_id) &&
    (strm << _tao_aggregate.expiration_time);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    FT::FTRequestServiceContext &_tao_aggregate
  )
{
  return
    (strm >> _tao_aggregate.client_id.out ()) &&
    (strm >> _tao_aggregate.retention_id) &&
    (strm >> _tao_aggregate.expiration_time);
}

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

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const FT::HeartbeatPolicyValue &_tao_aggregate
  )
{
  return
    (strm << CORBA::Any::from_boolean (_tao_aggregate.heartbeat)) &&
    (strm << _tao_aggregate.heartbeat_interval) &&
    (strm << _tao_aggregate.heartbeat_timeout);
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    FT::HeartbeatPolicyValue &_tao_aggregate
  )
{
  return
    (strm >> CORBA::Any::to_boolean (_tao_aggregate.heartbeat)) &&
    (strm >> _tao_aggregate.heartbeat_interval) &&
    (strm >> _tao_aggregate.heartbeat_timeout);
}

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

CORBA::Boolean operator<< (
    TAO_OutputCDR &strm,
    const FT::TagFTHeartbeatEnabledTaggedComponent &_tao_aggregate
  )
{
  return
    (strm << CORBA::Any::from_boolean (_tao_aggregate.heartbeat_enabled));
}

CORBA::Boolean operator>> (
    TAO_InputCDR &strm,
    FT::TagFTHeartbeatEnabledTaggedComponent &_tao_aggregate
  )
{
  return
    (strm >> CORBA::Any::to_boolean (_tao_aggregate.heartbeat_enabled));
}

