// **********************************************************************
//
// Generated by the ORBacus IDL-to-C++ Translator
//
// Copyright (c) 1999
// Object Oriented Concepts, Inc.
// Billerica, MA, USA
//
// All Rights Reserved
//
// **********************************************************************

// Version: 3.2.1
// License: non-commercial

#ifndef __CosNaming_skel_h__
#define __CosNaming_skel_h__

#include <OB/CosNaming.h>

#ifndef OB_INTEGER_VERSION
#   error No ORBacus version defined!
#endif

#ifndef OB_NO_VERSION_CHECK
#   if (OB_INTEGER_VERSION != 3020100L)
#       error ORBacus version mismatch!
#   endif
#endif

//
// IDL:omg.org/CosNaming:1.0
//

//
// IDL:omg.org/CosNaming/NamingContext:1.0
//
class CosNaming_NamingContext_skel : virtual public CosNaming_NamingContext,
                                     virtual public CORBA_Object_skel
{
    CosNaming_NamingContext_skel(const CosNaming_NamingContext_skel&);
    void operator=(const CosNaming_NamingContext_skel&);

protected:

    //
    // IDL:omg.org/CosNaming/NamingContext/bind:1.0
    //
    OBDispatchStatus _OB_op_bind(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContext/rebind:1.0
    //
    OBDispatchStatus _OB_op_rebind(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContext/bind_context:1.0
    //
    OBDispatchStatus _OB_op_bind_context(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContext/rebind_context:1.0
    //
    OBDispatchStatus _OB_op_rebind_context(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContext/resolve:1.0
    //
    OBDispatchStatus _OB_op_resolve(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContext/unbind:1.0
    //
    OBDispatchStatus _OB_op_unbind(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContext/new_context:1.0
    //
    OBDispatchStatus _OB_op_new_context(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContext/bind_new_context:1.0
    //
    OBDispatchStatus _OB_op_bind_new_context(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContext/destroy:1.0
    //
    OBDispatchStatus _OB_op_destroy(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContext/list:1.0
    //
    OBDispatchStatus _OB_op_list(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

public:

    CosNaming_NamingContext_skel() { }

    CosNaming_NamingContext_ptr _this() { return CosNaming_NamingContext::_duplicate(this); }

    virtual OBDispatchStatus _OB_dispatch(const char*, OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContext/bind:1.0
    //
    virtual void bind(const CosNaming_Name& n,
                      CORBA_Object_ptr obj) = 0;

    //
    // IDL:omg.org/CosNaming/NamingContext/rebind:1.0
    //
    virtual void rebind(const CosNaming_Name& n,
                        CORBA_Object_ptr obj) = 0;

    //
    // IDL:omg.org/CosNaming/NamingContext/bind_context:1.0
    //
    virtual void bind_context(const CosNaming_Name& n,
                              CosNaming_NamingContext_ptr nc) = 0;

    //
    // IDL:omg.org/CosNaming/NamingContext/rebind_context:1.0
    //
    virtual void rebind_context(const CosNaming_Name& n,
                                CosNaming_NamingContext_ptr nc) = 0;

    //
    // IDL:omg.org/CosNaming/NamingContext/resolve:1.0
    //
    virtual CORBA_Object_ptr resolve(const CosNaming_Name& n) = 0;

    //
    // IDL:omg.org/CosNaming/NamingContext/unbind:1.0
    //
    virtual void unbind(const CosNaming_Name& n) = 0;

    //
    // IDL:omg.org/CosNaming/NamingContext/new_context:1.0
    //
    virtual CosNaming_NamingContext_ptr new_context() = 0;

    //
    // IDL:omg.org/CosNaming/NamingContext/bind_new_context:1.0
    //
    virtual CosNaming_NamingContext_ptr bind_new_context(const CosNaming_Name& n) = 0;

    //
    // IDL:omg.org/CosNaming/NamingContext/destroy:1.0
    //
    virtual void destroy() = 0;

    //
    // IDL:omg.org/CosNaming/NamingContext/list:1.0
    //
    virtual void list(CORBA_ULong how_many,
                      CosNaming_BindingList*& bl,
                      CosNaming_BindingIterator_ptr& bi) = 0;
};

//
// IDL:omg.org/CosNaming/BindingIterator:1.0
//
class CosNaming_BindingIterator_skel : virtual public CosNaming_BindingIterator,
                                       virtual public CORBA_Object_skel
{
    CosNaming_BindingIterator_skel(const CosNaming_BindingIterator_skel&);
    void operator=(const CosNaming_BindingIterator_skel&);

protected:

    //
    // IDL:omg.org/CosNaming/BindingIterator/next_one:1.0
    //
    OBDispatchStatus _OB_op_next_one(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/BindingIterator/next_n:1.0
    //
    OBDispatchStatus _OB_op_next_n(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/BindingIterator/destroy:1.0
    //
    OBDispatchStatus _OB_op_destroy(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

public:

    CosNaming_BindingIterator_skel() { }

    CosNaming_BindingIterator_ptr _this() { return CosNaming_BindingIterator::_duplicate(this); }

    virtual OBDispatchStatus _OB_dispatch(const char*, OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/BindingIterator/next_one:1.0
    //
    virtual CORBA_Boolean next_one(CosNaming_Binding*& b) = 0;

    //
    // IDL:omg.org/CosNaming/BindingIterator/next_n:1.0
    //
    virtual CORBA_Boolean next_n(CORBA_ULong how_many,
                                 CosNaming_BindingList*& bl) = 0;

    //
    // IDL:omg.org/CosNaming/BindingIterator/destroy:1.0
    //
    virtual void destroy() = 0;
};

//
// IDL:omg.org/CosNaming/NamingContextExt:1.0
//
class CosNaming_NamingContextExt_skel : virtual public CosNaming_NamingContextExt,
                                        virtual public CosNaming_NamingContext_skel
{
    CosNaming_NamingContextExt_skel(const CosNaming_NamingContextExt_skel&);
    void operator=(const CosNaming_NamingContextExt_skel&);

protected:

    //
    // IDL:omg.org/CosNaming/NamingContextExt/to_string:1.0
    //
    OBDispatchStatus _OB_op_to_string(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContextExt/to_name:1.0
    //
    OBDispatchStatus _OB_op_to_name(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContextExt/to_url:1.0
    //
    OBDispatchStatus _OB_op_to_url(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContextExt/resolve_str:1.0
    //
    OBDispatchStatus _OB_op_resolve_str(OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

public:

    CosNaming_NamingContextExt_skel() { }

    CosNaming_NamingContextExt_ptr _this() { return CosNaming_NamingContextExt::_duplicate(this); }

    virtual OBDispatchStatus _OB_dispatch(const char*, OBBuffer&, bool, CORBA_ULong, CORBA_ULong);

    //
    // IDL:omg.org/CosNaming/NamingContextExt/to_string:1.0
    //
    virtual StringName to_string(const CosNaming_Name& n) = 0;

    //
    // IDL:omg.org/CosNaming/NamingContextExt/to_name:1.0
    //
    virtual CosNaming_Name* to_name(const char* n) = 0;

    //
    // IDL:omg.org/CosNaming/NamingContextExt/to_url:1.0
    //
    virtual URLString to_url(const char* addr,
                             const char* n) = 0;

    //
    // IDL:omg.org/CosNaming/NamingContextExt/resolve_str:1.0
    //
    virtual CORBA_Object_ptr resolve_str(const char* n) = 0;
};

#endif
