// -*- C++ -*-
/**
 * Code generated by the The ACE ORB (TAO) IDL Compiler v2.4.0
 * 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
 * and
 *       Institute for Software Integrated Systems
 *       Vanderbilt University
 *       Nashville, TN
 *       USA
 *       http://www.isis.vanderbilt.edu/
 *
 * Information about TAO is available at:
 *     http://www.dre.vanderbilt.edu/~schmidt/TAO.html
 **/

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

#ifndef _TAO_IDL_IFR_BASICS_IDGDRM_H_
#define _TAO_IDL_IFR_BASICS_IDGDRM_H_

#include /**/ "ace/pre.h"

#include "IFR_BasicC.h"
#include "tao/IFR_Client/IFR_BaseS.h"
#include "tao/ParameterModeS.h"
#include "tao/PortableServer/Basic_SArguments.h"
#include "tao/PortableServer/Special_Basic_SArguments.h"
#include "tao/PortableServer/Fixed_Size_SArgument_T.h"
#include "tao/PortableServer/Var_Size_SArgument_T.h"
#include "tao/PortableServer/Object_SArg_Traits.h"
#include "tao/PortableServer/Special_Basic_SArguments.h"
#include "tao/PortableServer/UB_String_SArguments.h"
#include "tao/PortableServer/Any_SArg_Traits.h"
#include "tao/PortableServer/Object_SArg_Traits.h"
#include "tao/PortableServer/TypeCode_SArg_Traits.h"
#include "tao/PortableServer/get_arg.h"
#include "tao/Special_Basic_Arguments.h"
#include "tao/UB_String_Arguments.h"

#if !defined (ACE_LACKS_PRAGMA_ONCE)
# pragma once
#endif /* ACE_LACKS_PRAGMA_ONCE */

#include "tao/PortableServer/PortableServer.h"
#include "tao/PortableServer/Servant_Base.h"

#include /**/ "tao/IFR_Client/ifr_client_skel_export.h"

#if defined (TAO_EXPORT_MACRO)
#undef TAO_EXPORT_MACRO
#endif
#define TAO_EXPORT_MACRO TAO_IFR_CLIENT_SKEL_Export

TAO_BEGIN_VERSIONED_NAMESPACE_DECL



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


TAO_END_VERSIONED_NAMESPACE_DECL


TAO_BEGIN_VERSIONED_NAMESPACE_DECL


// Arg traits specializations.
namespace TAO
{

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

#if !defined (_CORBA_PRIMITIVEDEF__SARG_TRAITS_)
#define _CORBA_PRIMITIVEDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::PrimitiveDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::PrimitiveDef_ptr,
            ::CORBA::PrimitiveDef_var,
            ::CORBA::PrimitiveDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_STRINGDEF__SARG_TRAITS_)
#define _CORBA_STRINGDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::StringDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::StringDef_ptr,
            ::CORBA::StringDef_var,
            ::CORBA::StringDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_SEQUENCEDEF__SARG_TRAITS_)
#define _CORBA_SEQUENCEDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::SequenceDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::SequenceDef_ptr,
            ::CORBA::SequenceDef_var,
            ::CORBA::SequenceDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_ARRAYDEF__SARG_TRAITS_)
#define _CORBA_ARRAYDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::ArrayDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::ArrayDef_ptr,
            ::CORBA::ArrayDef_var,
            ::CORBA::ArrayDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_WSTRINGDEF__SARG_TRAITS_)
#define _CORBA_WSTRINGDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::WstringDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::WstringDef_ptr,
            ::CORBA::WstringDef_var,
            ::CORBA::WstringDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_FIXEDDEF__SARG_TRAITS_)
#define _CORBA_FIXEDDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::FixedDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::FixedDef_ptr,
            ::CORBA::FixedDef_var,
            ::CORBA::FixedDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

  template<>
  class SArg_Traits< ::CORBA::PrimitiveKind>
    : public
        Basic_SArg_Traits_T<
            ::CORBA::PrimitiveKind,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

#if !defined (_CORBA_REPOSITORY__SARG_TRAITS_)
#define _CORBA_REPOSITORY__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::Repository>
    : public
        Object_SArg_Traits_T<
            ::CORBA::Repository_ptr,
            ::CORBA::Repository_var,
            ::CORBA::Repository_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_MODULEDEF__SARG_TRAITS_)
#define _CORBA_MODULEDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::ModuleDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::ModuleDef_ptr,
            ::CORBA::ModuleDef_var,
            ::CORBA::ModuleDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

  template<>
  class SArg_Traits< ::CORBA::ModuleDescription>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::ModuleDescription,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

#if !defined (_CORBA_CONSTANTDEF__SARG_TRAITS_)
#define _CORBA_CONSTANTDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::ConstantDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::ConstantDef_ptr,
            ::CORBA::ConstantDef_var,
            ::CORBA::ConstantDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

  template<>
  class SArg_Traits< ::CORBA::ConstantDescription>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::ConstantDescription,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

#if !defined (_CORBA_STRUCTDEF__SARG_TRAITS_)
#define _CORBA_STRUCTDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::StructDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::StructDef_ptr,
            ::CORBA::StructDef_var,
            ::CORBA::StructDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_UNIONDEF__SARG_TRAITS_)
#define _CORBA_UNIONDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::UnionDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::UnionDef_ptr,
            ::CORBA::UnionDef_var,
            ::CORBA::UnionDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_ENUMDEF__SARG_TRAITS_)
#define _CORBA_ENUMDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::EnumDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::EnumDef_ptr,
            ::CORBA::EnumDef_var,
            ::CORBA::EnumDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_ALIASDEF__SARG_TRAITS_)
#define _CORBA_ALIASDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::AliasDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::AliasDef_ptr,
            ::CORBA::AliasDef_var,
            ::CORBA::AliasDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_NATIVEDEF__SARG_TRAITS_)
#define _CORBA_NATIVEDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::NativeDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::NativeDef_ptr,
            ::CORBA::NativeDef_var,
            ::CORBA::NativeDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_EXCEPTIONDEF__SARG_TRAITS_)
#define _CORBA_EXCEPTIONDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::ExceptionDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::ExceptionDef_ptr,
            ::CORBA::ExceptionDef_var,
            ::CORBA::ExceptionDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

  template<>
  class SArg_Traits< ::CORBA::ExceptionDefSeq>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::ExceptionDefSeq,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

  template<>
  class SArg_Traits< ::CORBA::AttributeMode>
    : public
        Basic_SArg_Traits_T<
            ::CORBA::AttributeMode,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

#if !defined (_CORBA_ATTRIBUTEDEF__SARG_TRAITS_)
#define _CORBA_ATTRIBUTEDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::AttributeDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::AttributeDef_ptr,
            ::CORBA::AttributeDef_var,
            ::CORBA::AttributeDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

  template<>
  class SArg_Traits< ::CORBA::AttributeDescription>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::AttributeDescription,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

  template<>
  class SArg_Traits< ::CORBA::ExtAttributeDescription>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::ExtAttributeDescription,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

#if !defined (_CORBA_EXTATTRIBUTEDEF__SARG_TRAITS_)
#define _CORBA_EXTATTRIBUTEDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::ExtAttributeDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::ExtAttributeDef_ptr,
            ::CORBA::ExtAttributeDef_var,
            ::CORBA::ExtAttributeDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

  template<>
  class SArg_Traits< ::CORBA::OperationMode>
    : public
        Basic_SArg_Traits_T<
            ::CORBA::OperationMode,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

  template<>
  class SArg_Traits< ::CORBA::ParameterDescription>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::ParameterDescription,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

  template<>
  class SArg_Traits< ::CORBA::ParDescriptionSeq>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::ParDescriptionSeq,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

  template<>
  class SArg_Traits< ::CORBA::ContextIdSeq>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::ContextIdSeq,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

#if !defined (_CORBA_OPERATIONDEF__SARG_TRAITS_)
#define _CORBA_OPERATIONDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::OperationDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::OperationDef_ptr,
            ::CORBA::OperationDef_var,
            ::CORBA::OperationDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

  template<>
  class SArg_Traits< ::CORBA::OperationDescription>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::OperationDescription,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

  template<>
  class SArg_Traits< ::CORBA::RepositoryIdSeq>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::RepositoryIdSeq,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

  template<>
  class SArg_Traits< ::CORBA::OpDescriptionSeq>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::OpDescriptionSeq,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

  template<>
  class SArg_Traits< ::CORBA::AttrDescriptionSeq>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::AttrDescriptionSeq,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

  template<>
  class SArg_Traits< ::CORBA::ExtAttrDescriptionSeq>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::ExtAttrDescriptionSeq,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

#if !defined (_CORBA_INTERFACEDEF__SARG_TRAITS_)
#define _CORBA_INTERFACEDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::InterfaceDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::InterfaceDef_ptr,
            ::CORBA::InterfaceDef_var,
            ::CORBA::InterfaceDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

  template<>
  class SArg_Traits< ::CORBA::InterfaceDef::FullInterfaceDescription>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::InterfaceDef::FullInterfaceDescription,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

  template<>
  class SArg_Traits< ::CORBA::InterfaceDescription>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::InterfaceDescription,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

#if !defined (_CORBA_INTERFACEATTREXTENSION__SARG_TRAITS_)
#define _CORBA_INTERFACEATTREXTENSION__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::InterfaceAttrExtension>
    : public
        Object_SArg_Traits_T<
            ::CORBA::InterfaceAttrExtension_ptr,
            ::CORBA::InterfaceAttrExtension_var,
            ::CORBA::InterfaceAttrExtension_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

  template<>
  class SArg_Traits< ::CORBA::InterfaceAttrExtension::ExtFullInterfaceDescription>
    : public
        Var_Size_SArg_Traits_T<
            ::CORBA::InterfaceAttrExtension::ExtFullInterfaceDescription,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

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

#if !defined (_CORBA_EXTINTERFACEDEF__SARG_TRAITS_)
#define _CORBA_EXTINTERFACEDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::ExtInterfaceDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::ExtInterfaceDef_ptr,
            ::CORBA::ExtInterfaceDef_var,
            ::CORBA::ExtInterfaceDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_ABSTRACTINTERFACEDEF__SARG_TRAITS_)
#define _CORBA_ABSTRACTINTERFACEDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::AbstractInterfaceDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::AbstractInterfaceDef_ptr,
            ::CORBA::AbstractInterfaceDef_var,
            ::CORBA::AbstractInterfaceDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_EXTABSTRACTINTERFACEDEF__SARG_TRAITS_)
#define _CORBA_EXTABSTRACTINTERFACEDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::ExtAbstractInterfaceDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::ExtAbstractInterfaceDef_ptr,
            ::CORBA::ExtAbstractInterfaceDef_var,
            ::CORBA::ExtAbstractInterfaceDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_LOCALINTERFACEDEF__SARG_TRAITS_)
#define _CORBA_LOCALINTERFACEDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::LocalInterfaceDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::LocalInterfaceDef_ptr,
            ::CORBA::LocalInterfaceDef_var,
            ::CORBA::LocalInterfaceDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */

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

#if !defined (_CORBA_EXTLOCALINTERFACEDEF__SARG_TRAITS_)
#define _CORBA_EXTLOCALINTERFACEDEF__SARG_TRAITS_

  template<>
  class  SArg_Traits< ::CORBA::ExtLocalInterfaceDef>
    : public
        Object_SArg_Traits_T<
            ::CORBA::ExtLocalInterfaceDef_ptr,
            ::CORBA::ExtLocalInterfaceDef_var,
            ::CORBA::ExtLocalInterfaceDef_out,
            TAO::Any_Insert_Policy_Stream
          >
  {
  };

#endif /* end #if !defined */
}

TAO_END_VERSIONED_NAMESPACE_DECL


TAO_BEGIN_VERSIONED_NAMESPACE_DECL




// TAO_IDL - Generated from
// be/be_visitor_module/module_sh.cpp:35

namespace POA_CORBA
{
  

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class Repository;
  typedef Repository *Repository_ptr;

  class TAO_IFR_CLIENT_SKEL_Export Repository
    : public virtual POA_CORBA::Container
  {
  protected:
    Repository (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::Repository _stub_type;
    typedef ::CORBA::Repository_ptr _stub_ptr_type;
    typedef ::CORBA::Repository_var _stub_var_type;

    Repository (const Repository& rhs);
    virtual ~Repository (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::Repository *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::Contained_ptr lookup_id (
      const char * search_id) = 0;

    static void lookup_id_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::TypeCode_ptr get_canonical_typecode (
      ::CORBA::TypeCode_ptr tc) = 0;

    static void get_canonical_typecode_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::PrimitiveDef_ptr get_primitive (
      ::CORBA::PrimitiveKind kind) = 0;

    static void get_primitive_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::StringDef_ptr create_string (
      ::CORBA::ULong bound) = 0;

    static void create_string_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::WstringDef_ptr create_wstring (
      ::CORBA::ULong bound) = 0;

    static void create_wstring_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::SequenceDef_ptr create_sequence (
      ::CORBA::ULong bound,
      ::CORBA::IDLType_ptr element_type) = 0;

    static void create_sequence_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::ArrayDef_ptr create_array (
      ::CORBA::ULong length,
      ::CORBA::IDLType_ptr element_type) = 0;

    static void create_array_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::FixedDef_ptr create_fixed (
      ::CORBA::UShort digits,
      ::CORBA::Short scale) = 0;

    static void create_fixed_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class ModuleDef;
  typedef ModuleDef *ModuleDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export ModuleDef
    : public virtual POA_CORBA::Container,
      public virtual POA_CORBA::Contained
  {
  protected:
    ModuleDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::ModuleDef _stub_type;
    typedef ::CORBA::ModuleDef_ptr _stub_ptr_type;
    typedef ::CORBA::ModuleDef_var _stub_var_type;

    ModuleDef (const ModuleDef& rhs);
    virtual ~ModuleDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::ModuleDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class ConstantDef;
  typedef ConstantDef *ConstantDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export ConstantDef
    : public virtual POA_CORBA::Contained
  {
  protected:
    ConstantDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::ConstantDef _stub_type;
    typedef ::CORBA::ConstantDef_ptr _stub_ptr_type;
    typedef ::CORBA::ConstantDef_var _stub_var_type;

    ConstantDef (const ConstantDef& rhs);
    virtual ~ConstantDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::ConstantDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::TypeCode_ptr type (
      void) = 0;

    static void _get_type_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::IDLType_ptr type_def (
      void) = 0;

    static void _get_type_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void type_def (
      ::CORBA::IDLType_ptr type_def) = 0;

    static void _set_type_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::Any * value (
      void) = 0;

    static void _get_value_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void value (
      const ::CORBA::Any & value) = 0;

    static void _set_value_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class StructDef;
  typedef StructDef *StructDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export StructDef
    : public virtual POA_CORBA::TypedefDef,
      public virtual POA_CORBA::Container
  {
  protected:
    StructDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::StructDef _stub_type;
    typedef ::CORBA::StructDef_ptr _stub_ptr_type;
    typedef ::CORBA::StructDef_var _stub_var_type;

    StructDef (const StructDef& rhs);
    virtual ~StructDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::StructDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::StructMemberSeq * members (
      void) = 0;

    static void _get_members_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void members (
      const ::CORBA::StructMemberSeq & members) = 0;

    static void _set_members_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class UnionDef;
  typedef UnionDef *UnionDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export UnionDef
    : public virtual POA_CORBA::TypedefDef,
      public virtual POA_CORBA::Container
  {
  protected:
    UnionDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::UnionDef _stub_type;
    typedef ::CORBA::UnionDef_ptr _stub_ptr_type;
    typedef ::CORBA::UnionDef_var _stub_var_type;

    UnionDef (const UnionDef& rhs);
    virtual ~UnionDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::UnionDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::TypeCode_ptr discriminator_type (
      void) = 0;

    static void _get_discriminator_type_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::IDLType_ptr discriminator_type_def (
      void) = 0;

    static void _get_discriminator_type_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void discriminator_type_def (
      ::CORBA::IDLType_ptr discriminator_type_def) = 0;

    static void _set_discriminator_type_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::UnionMemberSeq * members (
      void) = 0;

    static void _get_members_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void members (
      const ::CORBA::UnionMemberSeq & members) = 0;

    static void _set_members_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class EnumDef;
  typedef EnumDef *EnumDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export EnumDef
    : public virtual POA_CORBA::TypedefDef
  {
  protected:
    EnumDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::EnumDef _stub_type;
    typedef ::CORBA::EnumDef_ptr _stub_ptr_type;
    typedef ::CORBA::EnumDef_var _stub_var_type;

    EnumDef (const EnumDef& rhs);
    virtual ~EnumDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::EnumDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::EnumMemberSeq * members (
      void) = 0;

    static void _get_members_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void members (
      const ::CORBA::EnumMemberSeq & members) = 0;

    static void _set_members_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class AliasDef;
  typedef AliasDef *AliasDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export AliasDef
    : public virtual POA_CORBA::TypedefDef
  {
  protected:
    AliasDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::AliasDef _stub_type;
    typedef ::CORBA::AliasDef_ptr _stub_ptr_type;
    typedef ::CORBA::AliasDef_var _stub_var_type;

    AliasDef (const AliasDef& rhs);
    virtual ~AliasDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::AliasDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::IDLType_ptr original_type_def (
      void) = 0;

    static void _get_original_type_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void original_type_def (
      ::CORBA::IDLType_ptr original_type_def) = 0;

    static void _set_original_type_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class NativeDef;
  typedef NativeDef *NativeDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export NativeDef
    : public virtual POA_CORBA::TypedefDef
  {
  protected:
    NativeDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::NativeDef _stub_type;
    typedef ::CORBA::NativeDef_ptr _stub_ptr_type;
    typedef ::CORBA::NativeDef_var _stub_var_type;

    NativeDef (const NativeDef& rhs);
    virtual ~NativeDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::NativeDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class PrimitiveDef;
  typedef PrimitiveDef *PrimitiveDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export PrimitiveDef
    : public virtual POA_CORBA::IDLType
  {
  protected:
    PrimitiveDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::PrimitiveDef _stub_type;
    typedef ::CORBA::PrimitiveDef_ptr _stub_ptr_type;
    typedef ::CORBA::PrimitiveDef_var _stub_var_type;

    PrimitiveDef (const PrimitiveDef& rhs);
    virtual ~PrimitiveDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::PrimitiveDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::PrimitiveKind kind (
      void) = 0;

    static void _get_kind_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class StringDef;
  typedef StringDef *StringDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export StringDef
    : public virtual POA_CORBA::IDLType
  {
  protected:
    StringDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::StringDef _stub_type;
    typedef ::CORBA::StringDef_ptr _stub_ptr_type;
    typedef ::CORBA::StringDef_var _stub_var_type;

    StringDef (const StringDef& rhs);
    virtual ~StringDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::StringDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::ULong bound (
      void) = 0;

    static void _get_bound_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void bound (
      ::CORBA::ULong bound) = 0;

    static void _set_bound_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class WstringDef;
  typedef WstringDef *WstringDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export WstringDef
    : public virtual POA_CORBA::IDLType
  {
  protected:
    WstringDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::WstringDef _stub_type;
    typedef ::CORBA::WstringDef_ptr _stub_ptr_type;
    typedef ::CORBA::WstringDef_var _stub_var_type;

    WstringDef (const WstringDef& rhs);
    virtual ~WstringDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::WstringDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::ULong bound (
      void) = 0;

    static void _get_bound_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void bound (
      ::CORBA::ULong bound) = 0;

    static void _set_bound_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class SequenceDef;
  typedef SequenceDef *SequenceDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export SequenceDef
    : public virtual POA_CORBA::IDLType
  {
  protected:
    SequenceDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::SequenceDef _stub_type;
    typedef ::CORBA::SequenceDef_ptr _stub_ptr_type;
    typedef ::CORBA::SequenceDef_var _stub_var_type;

    SequenceDef (const SequenceDef& rhs);
    virtual ~SequenceDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::SequenceDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::ULong bound (
      void) = 0;

    static void _get_bound_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void bound (
      ::CORBA::ULong bound) = 0;

    static void _set_bound_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::TypeCode_ptr element_type (
      void) = 0;

    static void _get_element_type_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::IDLType_ptr element_type_def (
      void) = 0;

    static void _get_element_type_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void element_type_def (
      ::CORBA::IDLType_ptr element_type_def) = 0;

    static void _set_element_type_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class ArrayDef;
  typedef ArrayDef *ArrayDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export ArrayDef
    : public virtual POA_CORBA::IDLType
  {
  protected:
    ArrayDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::ArrayDef _stub_type;
    typedef ::CORBA::ArrayDef_ptr _stub_ptr_type;
    typedef ::CORBA::ArrayDef_var _stub_var_type;

    ArrayDef (const ArrayDef& rhs);
    virtual ~ArrayDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::ArrayDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::ULong length (
      void) = 0;

    static void _get_length_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void length (
      ::CORBA::ULong length) = 0;

    static void _set_length_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::TypeCode_ptr element_type (
      void) = 0;

    static void _get_element_type_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::IDLType_ptr element_type_def (
      void) = 0;

    static void _get_element_type_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void element_type_def (
      ::CORBA::IDLType_ptr element_type_def) = 0;

    static void _set_element_type_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class ExceptionDef;
  typedef ExceptionDef *ExceptionDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export ExceptionDef
    : public virtual POA_CORBA::Contained,
      public virtual POA_CORBA::Container
  {
  protected:
    ExceptionDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::ExceptionDef _stub_type;
    typedef ::CORBA::ExceptionDef_ptr _stub_ptr_type;
    typedef ::CORBA::ExceptionDef_var _stub_var_type;

    ExceptionDef (const ExceptionDef& rhs);
    virtual ~ExceptionDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::ExceptionDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::TypeCode_ptr type (
      void) = 0;

    static void _get_type_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::StructMemberSeq * members (
      void) = 0;

    static void _get_members_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void members (
      const ::CORBA::StructMemberSeq & members) = 0;

    static void _set_members_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class AttributeDef;
  typedef AttributeDef *AttributeDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export AttributeDef
    : public virtual POA_CORBA::Contained
  {
  protected:
    AttributeDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::AttributeDef _stub_type;
    typedef ::CORBA::AttributeDef_ptr _stub_ptr_type;
    typedef ::CORBA::AttributeDef_var _stub_var_type;

    AttributeDef (const AttributeDef& rhs);
    virtual ~AttributeDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::AttributeDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::TypeCode_ptr type (
      void) = 0;

    static void _get_type_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::IDLType_ptr type_def (
      void) = 0;

    static void _get_type_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void type_def (
      ::CORBA::IDLType_ptr type_def) = 0;

    static void _set_type_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::AttributeMode mode (
      void) = 0;

    static void _get_mode_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void mode (
      ::CORBA::AttributeMode mode) = 0;

    static void _set_mode_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class ExtAttributeDef;
  typedef ExtAttributeDef *ExtAttributeDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export ExtAttributeDef
    : public virtual POA_CORBA::AttributeDef
  {
  protected:
    ExtAttributeDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::ExtAttributeDef _stub_type;
    typedef ::CORBA::ExtAttributeDef_ptr _stub_ptr_type;
    typedef ::CORBA::ExtAttributeDef_var _stub_var_type;

    ExtAttributeDef (const ExtAttributeDef& rhs);
    virtual ~ExtAttributeDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::ExtAttributeDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::ExcDescriptionSeq * get_exceptions (
      void) = 0;

    static void _get_get_exceptions_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void get_exceptions (
      const ::CORBA::ExcDescriptionSeq & get_exceptions) = 0;

    static void _set_get_exceptions_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::ExcDescriptionSeq * set_exceptions (
      void) = 0;

    static void _get_set_exceptions_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void set_exceptions (
      const ::CORBA::ExcDescriptionSeq & set_exceptions) = 0;

    static void _set_set_exceptions_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::ExtAttributeDescription * describe_attribute (
      void) = 0;

    static void describe_attribute_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class OperationDef;
  typedef OperationDef *OperationDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export OperationDef
    : public virtual POA_CORBA::Contained
  {
  protected:
    OperationDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::OperationDef _stub_type;
    typedef ::CORBA::OperationDef_ptr _stub_ptr_type;
    typedef ::CORBA::OperationDef_var _stub_var_type;

    OperationDef (const OperationDef& rhs);
    virtual ~OperationDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::OperationDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::TypeCode_ptr result (
      void) = 0;

    static void _get_result_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::IDLType_ptr result_def (
      void) = 0;

    static void _get_result_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void result_def (
      ::CORBA::IDLType_ptr result_def) = 0;

    static void _set_result_def_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::ParDescriptionSeq * params (
      void) = 0;

    static void _get_params_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void params (
      const ::CORBA::ParDescriptionSeq & params) = 0;

    static void _set_params_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::OperationMode mode (
      void) = 0;

    static void _get_mode_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void mode (
      ::CORBA::OperationMode mode) = 0;

    static void _set_mode_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::ContextIdSeq * contexts (
      void) = 0;

    static void _get_contexts_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void contexts (
      const ::CORBA::ContextIdSeq & contexts) = 0;

    static void _set_contexts_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::ExceptionDefSeq * exceptions (
      void) = 0;

    static void _get_exceptions_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void exceptions (
      const ::CORBA::ExceptionDefSeq & exceptions) = 0;

    static void _set_exceptions_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class InterfaceDef;
  typedef InterfaceDef *InterfaceDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export InterfaceDef
    : public virtual POA_CORBA::Container,
      public virtual POA_CORBA::Contained,
      public virtual POA_CORBA::IDLType
  {
  protected:
    InterfaceDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::InterfaceDef _stub_type;
    typedef ::CORBA::InterfaceDef_ptr _stub_ptr_type;
    typedef ::CORBA::InterfaceDef_var _stub_var_type;

    InterfaceDef (const InterfaceDef& rhs);
    virtual ~InterfaceDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::InterfaceDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::InterfaceDefSeq * base_interfaces (
      void) = 0;

    static void _get_base_interfaces_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual void base_interfaces (
      const ::CORBA::InterfaceDefSeq & base_interfaces) = 0;

    static void _set_base_interfaces_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::Boolean is_a (
      const char * interface_id) = 0;

    static void is_a_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::InterfaceDef::FullInterfaceDescription * describe_interface (
      void) = 0;

    static void describe_interface_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::AttributeDef_ptr create_attribute (
      const char * id,
      const char * name,
      const char * version,
      ::CORBA::IDLType_ptr type,
      ::CORBA::AttributeMode mode) = 0;

    static void create_attribute_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::OperationDef_ptr create_operation (
      const char * id,
      const char * name,
      const char * version,
      ::CORBA::IDLType_ptr result,
      ::CORBA::OperationMode mode,
      const ::CORBA::ParDescriptionSeq & params,
      const ::CORBA::ExceptionDefSeq & exceptions,
      const ::CORBA::ContextIdSeq & contexts) = 0;

    static void create_operation_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class InterfaceAttrExtension;
  typedef InterfaceAttrExtension *InterfaceAttrExtension_ptr;

  class TAO_IFR_CLIENT_SKEL_Export InterfaceAttrExtension
    : public virtual PortableServer::ServantBase
  {
  protected:
    InterfaceAttrExtension (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::InterfaceAttrExtension _stub_type;
    typedef ::CORBA::InterfaceAttrExtension_ptr _stub_ptr_type;
    typedef ::CORBA::InterfaceAttrExtension_var _stub_var_type;

    InterfaceAttrExtension (const InterfaceAttrExtension& rhs);
    virtual ~InterfaceAttrExtension (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::InterfaceAttrExtension *_this (void);
    
    virtual const char* _interface_repository_id (void) const;

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::InterfaceAttrExtension::ExtFullInterfaceDescription * describe_ext_interface (
      void) = 0;

    static void describe_ext_interface_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);

    // TAO_IDL - Generated from
    // be/be_visitor_operation/operation_sh.cpp:36

    virtual ::CORBA::ExtAttributeDef_ptr create_ext_attribute (
      const char * id,
      const char * name,
      const char * version,
      ::CORBA::IDLType_ptr type,
      ::CORBA::AttributeMode mode,
      const ::CORBA::ExceptionDefSeq & get_exceptions,
      const ::CORBA::ExceptionDefSeq & set_exceptions) = 0;

    static void create_ext_attribute_skel (
        TAO_ServerRequest &server_request,
        TAO::Portable_Server::Servant_Upcall *servant_upcall,
        TAO_ServantBase *servant);
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class ExtInterfaceDef;
  typedef ExtInterfaceDef *ExtInterfaceDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export ExtInterfaceDef
    : public virtual POA_CORBA::InterfaceDef,
      public virtual POA_CORBA::InterfaceAttrExtension
  {
  protected:
    ExtInterfaceDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::ExtInterfaceDef _stub_type;
    typedef ::CORBA::ExtInterfaceDef_ptr _stub_ptr_type;
    typedef ::CORBA::ExtInterfaceDef_var _stub_var_type;

    ExtInterfaceDef (const ExtInterfaceDef& rhs);
    virtual ~ExtInterfaceDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::ExtInterfaceDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class AbstractInterfaceDef;
  typedef AbstractInterfaceDef *AbstractInterfaceDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export AbstractInterfaceDef
    : public virtual POA_CORBA::InterfaceDef
  {
  protected:
    AbstractInterfaceDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::AbstractInterfaceDef _stub_type;
    typedef ::CORBA::AbstractInterfaceDef_ptr _stub_ptr_type;
    typedef ::CORBA::AbstractInterfaceDef_var _stub_var_type;

    AbstractInterfaceDef (const AbstractInterfaceDef& rhs);
    virtual ~AbstractInterfaceDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::AbstractInterfaceDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class ExtAbstractInterfaceDef;
  typedef ExtAbstractInterfaceDef *ExtAbstractInterfaceDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export ExtAbstractInterfaceDef
    : public virtual POA_CORBA::AbstractInterfaceDef,
      public virtual POA_CORBA::InterfaceAttrExtension
  {
  protected:
    ExtAbstractInterfaceDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::ExtAbstractInterfaceDef _stub_type;
    typedef ::CORBA::ExtAbstractInterfaceDef_ptr _stub_ptr_type;
    typedef ::CORBA::ExtAbstractInterfaceDef_var _stub_var_type;

    ExtAbstractInterfaceDef (const ExtAbstractInterfaceDef& rhs);
    virtual ~ExtAbstractInterfaceDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::ExtAbstractInterfaceDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class LocalInterfaceDef;
  typedef LocalInterfaceDef *LocalInterfaceDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export LocalInterfaceDef
    : public virtual POA_CORBA::InterfaceDef
  {
  protected:
    LocalInterfaceDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::LocalInterfaceDef _stub_type;
    typedef ::CORBA::LocalInterfaceDef_ptr _stub_ptr_type;
    typedef ::CORBA::LocalInterfaceDef_var _stub_var_type;

    LocalInterfaceDef (const LocalInterfaceDef& rhs);
    virtual ~LocalInterfaceDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::LocalInterfaceDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;
  };

  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_sh.cpp:73

  class ExtLocalInterfaceDef;
  typedef ExtLocalInterfaceDef *ExtLocalInterfaceDef_ptr;

  class TAO_IFR_CLIENT_SKEL_Export ExtLocalInterfaceDef
    : public virtual POA_CORBA::LocalInterfaceDef,
      public virtual POA_CORBA::InterfaceAttrExtension
  {
  protected:
    ExtLocalInterfaceDef (void);
  
  public:
    /// Useful for template programming.
    typedef ::CORBA::ExtLocalInterfaceDef _stub_type;
    typedef ::CORBA::ExtLocalInterfaceDef_ptr _stub_ptr_type;
    typedef ::CORBA::ExtLocalInterfaceDef_var _stub_var_type;

    ExtLocalInterfaceDef (const ExtLocalInterfaceDef& rhs);
    virtual ~ExtLocalInterfaceDef (void);

    virtual ::CORBA::Boolean _is_a (const char* logical_type_id);

    virtual void _dispatch (
        TAO_ServerRequest & req,
        TAO::Portable_Server::Servant_Upcall *servant_upcall);
    
    ::CORBA::ExtLocalInterfaceDef *_this (void);
    
    virtual const char* _interface_repository_id (void) const;
  };

// TAO_IDL - Generated from
// be/be_visitor_module/module_sh.cpp:66

} // module CORBA

TAO_END_VERSIONED_NAMESPACE_DECL



#include "IFR_BasicS_T.h"


#include /**/ "ace/post.h"

#endif /* ifndef */

