/*
 * This file was generated by orbit-idl - DO NOT EDIT!
 */

#include <glib.h>
#define ORBIT_IDL_SERIAL 9
#include <orb/orbit.h>

#ifndef CosNaming_H
#define CosNaming_H 1
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */


/** typedefs **/
#if !defined(_CosNaming_Istring_defined)
#define _CosNaming_Istring_defined 1
typedef CORBA_char * CosNaming_Istring;
#if !defined(TC_IMPL_TC_CosNaming_Istring)
#define TC_IMPL_TC_CosNaming_Istring ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CosNaming_Istring_struct;
#define TC_CosNaming_Istring (&TC_CosNaming_Istring_struct)
#endif
#define CosNaming_Istring__free CORBA_string__free
#endif
#if !defined(_CosNaming_NameComponent_defined)
#define _CosNaming_NameComponent_defined 1
typedef struct {
CosNaming_Istring id;
CosNaming_Istring kind;
} CosNaming_NameComponent;

#if !defined(TC_IMPL_TC_CosNaming_NameComponent)
#define TC_IMPL_TC_CosNaming_NameComponent ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CosNaming_NameComponent_struct;
#define TC_CosNaming_NameComponent (&TC_CosNaming_NameComponent_struct)
#endif
extern CosNaming_NameComponent* CosNaming_NameComponent__alloc(void);
extern gpointer CosNaming_NameComponent__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
#endif
#if !defined(ORBIT_DECL_CORBA_sequence_CosNaming_NameComponent) && !defined(_CORBA_sequence_CosNaming_NameComponent_defined)
#define ORBIT_DECL_CORBA_sequence_CosNaming_NameComponent 1
#define _CORBA_sequence_CosNaming_NameComponent_defined 1
#define ORBIT_IMPL_CORBA_sequence_CosNaming_NameComponent ORBIT_FILE_ID_CosNaming
typedef struct { CORBA_unsigned_long _maximum, _length; CosNaming_NameComponent* _buffer; CORBA_boolean _release; } CORBA_sequence_CosNaming_NameComponent;
#if !defined(TC_IMPL_TC_CORBA_sequence_CosNaming_NameComponent)
#define TC_IMPL_TC_CORBA_sequence_CosNaming_NameComponent ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CORBA_sequence_CosNaming_NameComponent_struct;
#define TC_CORBA_sequence_CosNaming_NameComponent (&TC_CORBA_sequence_CosNaming_NameComponent_struct)
#endif
extern CORBA_sequence_CosNaming_NameComponent* CORBA_sequence_CosNaming_NameComponent__alloc(void);
extern gpointer CORBA_sequence_CosNaming_NameComponent__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
CosNaming_NameComponent *CORBA_sequence_CosNaming_NameComponent_allocbuf(CORBA_unsigned_long len);
#endif
#if !defined(_CosNaming_Name_defined)
#define _CosNaming_Name_defined 1
typedef CORBA_sequence_CosNaming_NameComponent CosNaming_Name;
#if !defined(TC_IMPL_TC_CosNaming_Name)
#define TC_IMPL_TC_CosNaming_Name ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CosNaming_Name_struct;
#define TC_CosNaming_Name (&TC_CosNaming_Name_struct)
#endif
extern CosNaming_Name* CosNaming_Name__alloc(void);
extern gpointer CosNaming_Name__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
#endif
#if !defined(_CosNaming_BindingType_defined)
#define _CosNaming_BindingType_defined 1
typedef enum {
  CosNaming_nobject,
  CosNaming_ncontext
} CosNaming_BindingType;
#if !defined(TC_IMPL_TC_CosNaming_BindingType)
#define TC_IMPL_TC_CosNaming_BindingType ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CosNaming_BindingType_struct;
#define TC_CosNaming_BindingType (&TC_CosNaming_BindingType_struct)
#endif
#endif
#if !defined(_CosNaming_Binding_defined)
#define _CosNaming_Binding_defined 1
typedef struct {
CosNaming_Name binding_name;
CosNaming_BindingType binding_type;
} CosNaming_Binding;

#if !defined(TC_IMPL_TC_CosNaming_Binding)
#define TC_IMPL_TC_CosNaming_Binding ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CosNaming_Binding_struct;
#define TC_CosNaming_Binding (&TC_CosNaming_Binding_struct)
#endif
extern CosNaming_Binding* CosNaming_Binding__alloc(void);
extern gpointer CosNaming_Binding__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
#endif
#if !defined(ORBIT_DECL_CORBA_sequence_CosNaming_Binding) && !defined(_CORBA_sequence_CosNaming_Binding_defined)
#define ORBIT_DECL_CORBA_sequence_CosNaming_Binding 1
#define _CORBA_sequence_CosNaming_Binding_defined 1
#define ORBIT_IMPL_CORBA_sequence_CosNaming_Binding ORBIT_FILE_ID_CosNaming
typedef struct { CORBA_unsigned_long _maximum, _length; CosNaming_Binding* _buffer; CORBA_boolean _release; } CORBA_sequence_CosNaming_Binding;
#if !defined(TC_IMPL_TC_CORBA_sequence_CosNaming_Binding)
#define TC_IMPL_TC_CORBA_sequence_CosNaming_Binding ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CORBA_sequence_CosNaming_Binding_struct;
#define TC_CORBA_sequence_CosNaming_Binding (&TC_CORBA_sequence_CosNaming_Binding_struct)
#endif
extern CORBA_sequence_CosNaming_Binding* CORBA_sequence_CosNaming_Binding__alloc(void);
extern gpointer CORBA_sequence_CosNaming_Binding__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
CosNaming_Binding *CORBA_sequence_CosNaming_Binding_allocbuf(CORBA_unsigned_long len);
#endif
#if !defined(_CosNaming_BindingList_defined)
#define _CosNaming_BindingList_defined 1
typedef CORBA_sequence_CosNaming_Binding CosNaming_BindingList;
#if !defined(TC_IMPL_TC_CosNaming_BindingList)
#define TC_IMPL_TC_CosNaming_BindingList ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CosNaming_BindingList_struct;
#define TC_CosNaming_BindingList (&TC_CosNaming_BindingList_struct)
#endif
extern CosNaming_BindingList* CosNaming_BindingList__alloc(void);
extern gpointer CosNaming_BindingList__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
#endif
#if !defined(ORBIT_DECL_CosNaming_BindingIterator) && !defined(_CosNaming_BindingIterator_defined)
#define ORBIT_DECL_CosNaming_BindingIterator 1
#define _CosNaming_BindingIterator_defined 1
#define CosNaming_BindingIterator__free CORBA_Object__free
typedef CORBA_Object CosNaming_BindingIterator;
extern CORBA_unsigned_long CosNaming_BindingIterator__classid;
#endif
#if !defined(ORBIT_DECL_CosNaming_NamingContext) && !defined(_CosNaming_NamingContext_defined)
#define ORBIT_DECL_CosNaming_NamingContext 1
#define _CosNaming_NamingContext_defined 1
#define CosNaming_NamingContext__free CORBA_Object__free
typedef CORBA_Object CosNaming_NamingContext;
extern CORBA_unsigned_long CosNaming_NamingContext__classid;
#endif
#if !defined(_CosNaming_NamingContext_NotFoundReason_defined)
#define _CosNaming_NamingContext_NotFoundReason_defined 1
typedef enum {
  CosNaming_NamingContext_missing_node,
  CosNaming_NamingContext_not_context,
  CosNaming_NamingContext_not_object
} CosNaming_NamingContext_NotFoundReason;
#if !defined(TC_IMPL_TC_CosNaming_NamingContext_NotFoundReason)
#define TC_IMPL_TC_CosNaming_NamingContext_NotFoundReason ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CosNaming_NamingContext_NotFoundReason_struct;
#define TC_CosNaming_NamingContext_NotFoundReason (&TC_CosNaming_NamingContext_NotFoundReason_struct)
#endif
#endif
#define ex_CosNaming_NamingContext_NotFound "IDL:omg.org/CosNaming/NamingContext/NotFound:1.0"
void _ORBIT_CosNaming_NamingContext_NotFound_demarshal(GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev);
void _ORBIT_CosNaming_NamingContext_NotFound_marshal(GIOPSendBuffer *_ORBIT_send_buffer, CORBA_Environment *ev);
#if !defined(_CosNaming_NamingContext_NotFound_defined)
#define _CosNaming_NamingContext_NotFound_defined 1
typedef struct {
CosNaming_NamingContext_NotFoundReason why;
CosNaming_Name rest_of_name;
} CosNaming_NamingContext_NotFound;

#if !defined(TC_IMPL_TC_CosNaming_NamingContext_NotFound)
#define TC_IMPL_TC_CosNaming_NamingContext_NotFound ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CosNaming_NamingContext_NotFound_struct;
#define TC_CosNaming_NamingContext_NotFound (&TC_CosNaming_NamingContext_NotFound_struct)
#endif
extern CosNaming_NamingContext_NotFound* CosNaming_NamingContext_NotFound__alloc(void);
extern gpointer CosNaming_NamingContext_NotFound__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
#endif
#define ex_CosNaming_NamingContext_CannotProceed "IDL:omg.org/CosNaming/NamingContext/CannotProceed:1.0"
void _ORBIT_CosNaming_NamingContext_CannotProceed_demarshal(GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev);
void _ORBIT_CosNaming_NamingContext_CannotProceed_marshal(GIOPSendBuffer *_ORBIT_send_buffer, CORBA_Environment *ev);
#if !defined(_CosNaming_NamingContext_CannotProceed_defined)
#define _CosNaming_NamingContext_CannotProceed_defined 1
typedef struct {
CosNaming_NamingContext ctx;
CosNaming_Name rest_of_name;
} CosNaming_NamingContext_CannotProceed;

#if !defined(TC_IMPL_TC_CosNaming_NamingContext_CannotProceed)
#define TC_IMPL_TC_CosNaming_NamingContext_CannotProceed ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CosNaming_NamingContext_CannotProceed_struct;
#define TC_CosNaming_NamingContext_CannotProceed (&TC_CosNaming_NamingContext_CannotProceed_struct)
#endif
extern CosNaming_NamingContext_CannotProceed* CosNaming_NamingContext_CannotProceed__alloc(void);
extern gpointer CosNaming_NamingContext_CannotProceed__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
#endif
#define ex_CosNaming_NamingContext_InvalidName "IDL:omg.org/CosNaming/NamingContext/InvalidName:1.0"
void _ORBIT_CosNaming_NamingContext_InvalidName_demarshal(GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev);
void _ORBIT_CosNaming_NamingContext_InvalidName_marshal(GIOPSendBuffer *_ORBIT_send_buffer, CORBA_Environment *ev);
#if !defined(_CosNaming_NamingContext_InvalidName_defined)
#define _CosNaming_NamingContext_InvalidName_defined 1
typedef struct {
} CosNaming_NamingContext_InvalidName;

#if !defined(TC_IMPL_TC_CosNaming_NamingContext_InvalidName)
#define TC_IMPL_TC_CosNaming_NamingContext_InvalidName ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CosNaming_NamingContext_InvalidName_struct;
#define TC_CosNaming_NamingContext_InvalidName (&TC_CosNaming_NamingContext_InvalidName_struct)
#endif
extern CosNaming_NamingContext_InvalidName* CosNaming_NamingContext_InvalidName__alloc(void);
extern gpointer CosNaming_NamingContext_InvalidName__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
#endif
#define ex_CosNaming_NamingContext_AlreadyBound "IDL:omg.org/CosNaming/NamingContext/AlreadyBound:1.0"
void _ORBIT_CosNaming_NamingContext_AlreadyBound_demarshal(GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev);
void _ORBIT_CosNaming_NamingContext_AlreadyBound_marshal(GIOPSendBuffer *_ORBIT_send_buffer, CORBA_Environment *ev);
#if !defined(_CosNaming_NamingContext_AlreadyBound_defined)
#define _CosNaming_NamingContext_AlreadyBound_defined 1
typedef struct {
} CosNaming_NamingContext_AlreadyBound;

#if !defined(TC_IMPL_TC_CosNaming_NamingContext_AlreadyBound)
#define TC_IMPL_TC_CosNaming_NamingContext_AlreadyBound ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CosNaming_NamingContext_AlreadyBound_struct;
#define TC_CosNaming_NamingContext_AlreadyBound (&TC_CosNaming_NamingContext_AlreadyBound_struct)
#endif
extern CosNaming_NamingContext_AlreadyBound* CosNaming_NamingContext_AlreadyBound__alloc(void);
extern gpointer CosNaming_NamingContext_AlreadyBound__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
#endif
#define ex_CosNaming_NamingContext_NotEmpty "IDL:omg.org/CosNaming/NamingContext/NotEmpty:1.0"
void _ORBIT_CosNaming_NamingContext_NotEmpty_demarshal(GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev);
void _ORBIT_CosNaming_NamingContext_NotEmpty_marshal(GIOPSendBuffer *_ORBIT_send_buffer, CORBA_Environment *ev);
#if !defined(_CosNaming_NamingContext_NotEmpty_defined)
#define _CosNaming_NamingContext_NotEmpty_defined 1
typedef struct {
} CosNaming_NamingContext_NotEmpty;

#if !defined(TC_IMPL_TC_CosNaming_NamingContext_NotEmpty)
#define TC_IMPL_TC_CosNaming_NamingContext_NotEmpty ORBIT_FILE_ID_CosNaming
extern const struct CORBA_TypeCode_struct TC_CosNaming_NamingContext_NotEmpty_struct;
#define TC_CosNaming_NamingContext_NotEmpty (&TC_CosNaming_NamingContext_NotEmpty_struct)
#endif
extern CosNaming_NamingContext_NotEmpty* CosNaming_NamingContext_NotEmpty__alloc(void);
extern gpointer CosNaming_NamingContext_NotEmpty__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
#endif
#if !defined(ORBIT_DECL_CosNaming_BindingIterator) && !defined(_CosNaming_BindingIterator_defined)
#define ORBIT_DECL_CosNaming_BindingIterator 1
#define _CosNaming_BindingIterator_defined 1
#define CosNaming_BindingIterator__free CORBA_Object__free
typedef CORBA_Object CosNaming_BindingIterator;
extern CORBA_unsigned_long CosNaming_BindingIterator__classid;
#endif

/** POA structures **/
typedef struct {
  void *_private;
void (*bind)(PortableServer_Servant _servant, CosNaming_Name* n, CORBA_Object obj, CORBA_Environment *ev);
void (*rebind)(PortableServer_Servant _servant, CosNaming_Name* n, CORBA_Object obj, CORBA_Environment *ev);
void (*bind_context)(PortableServer_Servant _servant, CosNaming_Name* n, CosNaming_NamingContext nc, CORBA_Environment *ev);
void (*rebind_context)(PortableServer_Servant _servant, CosNaming_Name* n, CosNaming_NamingContext nc, CORBA_Environment *ev);
CORBA_Object (*resolve)(PortableServer_Servant _servant, CosNaming_Name* n, CORBA_Environment *ev);
void (*unbind)(PortableServer_Servant _servant, CosNaming_Name* n, CORBA_Environment *ev);
CosNaming_NamingContext (*new_context)(PortableServer_Servant _servant, CORBA_Environment *ev);
CosNaming_NamingContext (*bind_new_context)(PortableServer_Servant _servant, CosNaming_Name* n, CORBA_Environment *ev);
void (*destroy)(PortableServer_Servant _servant, CORBA_Environment *ev);
void (*list)(PortableServer_Servant _servant, CORBA_unsigned_long how_many, CosNaming_BindingList** bl, CosNaming_BindingIterator* bi, CORBA_Environment *ev);
} POA_CosNaming_NamingContext__epv;
typedef struct {
  PortableServer_ServantBase__epv *_base_epv;
  POA_CosNaming_NamingContext__epv *CosNaming_NamingContext_epv;
} POA_CosNaming_NamingContext__vepv;
typedef struct {
  void *_private;
  POA_CosNaming_NamingContext__vepv *vepv;
} POA_CosNaming_NamingContext;
extern void POA_CosNaming_NamingContext__init(PortableServer_Servant servant, CORBA_Environment *ev);
extern void POA_CosNaming_NamingContext__fini(PortableServer_Servant servant, CORBA_Environment *ev);
typedef struct {
  void *_private;
CORBA_boolean (*next_one)(PortableServer_Servant _servant, CosNaming_Binding** b, CORBA_Environment *ev);
CORBA_boolean (*next_n)(PortableServer_Servant _servant, CORBA_unsigned_long how_many, CosNaming_BindingList** bl, CORBA_Environment *ev);
void (*destroy)(PortableServer_Servant _servant, CORBA_Environment *ev);
} POA_CosNaming_BindingIterator__epv;
typedef struct {
  PortableServer_ServantBase__epv *_base_epv;
  POA_CosNaming_BindingIterator__epv *CosNaming_BindingIterator_epv;
} POA_CosNaming_BindingIterator__vepv;
typedef struct {
  void *_private;
  POA_CosNaming_BindingIterator__vepv *vepv;
} POA_CosNaming_BindingIterator;
extern void POA_CosNaming_BindingIterator__init(PortableServer_Servant servant, CORBA_Environment *ev);
extern void POA_CosNaming_BindingIterator__fini(PortableServer_Servant servant, CORBA_Environment *ev);

/** prototypes **/
void CosNaming_NamingContext_bind(CosNaming_NamingContext _obj, CosNaming_Name* n, CORBA_Object obj, CORBA_Environment *ev);
void CosNaming_NamingContext_rebind(CosNaming_NamingContext _obj, CosNaming_Name* n, CORBA_Object obj, CORBA_Environment *ev);
void CosNaming_NamingContext_bind_context(CosNaming_NamingContext _obj, CosNaming_Name* n, CosNaming_NamingContext nc, CORBA_Environment *ev);
void CosNaming_NamingContext_rebind_context(CosNaming_NamingContext _obj, CosNaming_Name* n, CosNaming_NamingContext nc, CORBA_Environment *ev);
CORBA_Object CosNaming_NamingContext_resolve(CosNaming_NamingContext _obj, CosNaming_Name* n, CORBA_Environment *ev);
void CosNaming_NamingContext_unbind(CosNaming_NamingContext _obj, CosNaming_Name* n, CORBA_Environment *ev);
CosNaming_NamingContext CosNaming_NamingContext_new_context(CosNaming_NamingContext _obj, CORBA_Environment *ev);
CosNaming_NamingContext CosNaming_NamingContext_bind_new_context(CosNaming_NamingContext _obj, CosNaming_Name* n, CORBA_Environment *ev);
void CosNaming_NamingContext_destroy(CosNaming_NamingContext _obj, CORBA_Environment *ev);
void CosNaming_NamingContext_list(CosNaming_NamingContext _obj, CORBA_unsigned_long how_many, CosNaming_BindingList** bl, CosNaming_BindingIterator* bi, CORBA_Environment *ev);
CORBA_boolean CosNaming_BindingIterator_next_one(CosNaming_BindingIterator _obj, CosNaming_Binding** b, CORBA_Environment *ev);
CORBA_boolean CosNaming_BindingIterator_next_n(CosNaming_BindingIterator _obj, CORBA_unsigned_long how_many, CosNaming_BindingList** bl, CORBA_Environment *ev);
void CosNaming_BindingIterator_destroy(CosNaming_BindingIterator _obj, CORBA_Environment *ev);

void _ORBIT_skel_CosNaming_NamingContext_bind(POA_CosNaming_NamingContext *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, void (*_impl_bind)(PortableServer_Servant _servant, CosNaming_Name* n, CORBA_Object obj, CORBA_Environment *ev));
void _ORBIT_skel_CosNaming_NamingContext_rebind(POA_CosNaming_NamingContext *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, void (*_impl_rebind)(PortableServer_Servant _servant, CosNaming_Name* n, CORBA_Object obj, CORBA_Environment *ev));
void _ORBIT_skel_CosNaming_NamingContext_bind_context(POA_CosNaming_NamingContext *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, void (*_impl_bind_context)(PortableServer_Servant _servant, CosNaming_Name* n, CosNaming_NamingContext nc, CORBA_Environment *ev));
void _ORBIT_skel_CosNaming_NamingContext_rebind_context(POA_CosNaming_NamingContext *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, void (*_impl_rebind_context)(PortableServer_Servant _servant, CosNaming_Name* n, CosNaming_NamingContext nc, CORBA_Environment *ev));
void _ORBIT_skel_CosNaming_NamingContext_resolve(POA_CosNaming_NamingContext *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, CORBA_Object (*_impl_resolve)(PortableServer_Servant _servant, CosNaming_Name* n, CORBA_Environment *ev));
void _ORBIT_skel_CosNaming_NamingContext_unbind(POA_CosNaming_NamingContext *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, void (*_impl_unbind)(PortableServer_Servant _servant, CosNaming_Name* n, CORBA_Environment *ev));
void _ORBIT_skel_CosNaming_NamingContext_new_context(POA_CosNaming_NamingContext *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, CosNaming_NamingContext (*_impl_new_context)(PortableServer_Servant _servant, CORBA_Environment *ev));
void _ORBIT_skel_CosNaming_NamingContext_bind_new_context(POA_CosNaming_NamingContext *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, CosNaming_NamingContext (*_impl_bind_new_context)(PortableServer_Servant _servant, CosNaming_Name* n, CORBA_Environment *ev));
void _ORBIT_skel_CosNaming_NamingContext_destroy(POA_CosNaming_NamingContext *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, void (*_impl_destroy)(PortableServer_Servant _servant, CORBA_Environment *ev));
void _ORBIT_skel_CosNaming_NamingContext_list(POA_CosNaming_NamingContext *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, void (*_impl_list)(PortableServer_Servant _servant, CORBA_unsigned_long how_many, CosNaming_BindingList** bl, CosNaming_BindingIterator* bi, CORBA_Environment *ev));
void _ORBIT_skel_CosNaming_BindingIterator_next_one(POA_CosNaming_BindingIterator *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, CORBA_boolean (*_impl_next_one)(PortableServer_Servant _servant, CosNaming_Binding** b, CORBA_Environment *ev));
void _ORBIT_skel_CosNaming_BindingIterator_next_n(POA_CosNaming_BindingIterator *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, CORBA_boolean (*_impl_next_n)(PortableServer_Servant _servant, CORBA_unsigned_long how_many, CosNaming_BindingList** bl, CORBA_Environment *ev));
void _ORBIT_skel_CosNaming_BindingIterator_destroy(POA_CosNaming_BindingIterator *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, void (*_impl_destroy)(PortableServer_Servant _servant, CORBA_Environment *ev));
#ifdef __cplusplus
}
#endif /* __cplusplus */

#endif
#undef ORBIT_IDL_SERIAL
#ifndef LNAME_H
#define LNAME_H 1
/*
 * This file was generated by orbit-idl - DO NOT EDIT!
 */

#include <glib.h>
#define ORBIT_IDL_SERIAL 9
#include <orb/orbit.h>

#include "CosNaming.h"

/*
 * This file was generated by orbit-idl - DO NOT EDIT!
 */

/* The following lines are added, because LName and LNameComponent are
   pseudo objects, not real ones */
#define _LName_defined
#define _LNameComponent_defined
typedef void* LName;
typedef void* LNameComponent;

/* The following 2 functions define the means to get instances of
   those 2 pseudo objects*/
extern LName create_lname(); 
extern LNameComponent create_lname_component();

/* The following 3 functions are provided as add-ons by ORBit */
LNameComponent ORBit_string_to_LNameComponent(const CORBA_char* string, 
					      CORBA_Environment * ev);
LName ORBit_string_to_LName(const CORBA_char* string, CORBA_Environment * ev);
CosNaming_Name* ORBit_string_to_CosNaming_Name(const CORBA_char* string, 
					       CORBA_Environment * ev);

/* from now on its the original one as generated by orbit-idl */

#include <glib.h>
#include <orb/orbit.h>

#ifdef __cplusplus
extern "C" {
#endif				/* __cplusplus */

/* Begin interface LNameComponent */

   /* client-side data structures and methods */
#ifndef _LNameComponent_defined
#define _LNameComponent_defined

   typedef CORBA_Object LNameComponent;
#define LNameComponent__free CORBA_Object__free
#endif				/* !_LNameComponent_defined */

   extern CORBA_unsigned_long LNameComponent__classid;
#ifndef _LNameComponent_NotSet_defined
#define _LNameComponent_NotSet_defined

   typedef struct LNameComponent_NotSet {
	int empty_struct;
   } LNameComponent_NotSet;
#define ex_LNameComponent_NotSet "ex_LNameComponent_NotSet"
#endif				/* !_LNameComponent_NotSet_defined */

   extern LNameComponent_NotSet *LNameComponent_NotSet__alloc(void);
   extern gpointer LNameComponent_NotSet__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);		/* ORBit internals */

   extern CORBA_char *LNameComponent_get_id(LNameComponent _obj, CORBA_Environment * ev);

   extern void LNameComponent_set_id(LNameComponent _obj, CORBA_char * i, CORBA_Environment * ev);

   extern CORBA_char *LNameComponent_get_kind(LNameComponent _obj, CORBA_Environment * ev);

   extern void LNameComponent_set_kind(LNameComponent _obj, CORBA_char * k, CORBA_Environment * ev);

   extern void LNameComponent_destroy(LNameComponent _obj, CORBA_Environment * ev);

   /* server-side (via the POA) data structures and methods */
#ifndef _POA_LNameComponent__epv_defined
#define _POA_LNameComponent__epv_defined

   typedef struct {
      void *_private;
      CORBA_char *(*get_id) (PortableServer_Servant servant, CORBA_Environment * ev);
      void (*set_id) (PortableServer_Servant servant, CORBA_char * i, CORBA_Environment * ev);
      CORBA_char *(*get_kind) (PortableServer_Servant servant, CORBA_Environment * ev);
      void (*set_kind) (PortableServer_Servant servant, CORBA_char * k, CORBA_Environment * ev);
      void (*destroy) (PortableServer_Servant servant, CORBA_Environment * ev);
   } POA_LNameComponent__epv;
#endif				/* !_POA_LNameComponent__epv_defined */

#ifndef _POA_LNameComponent__vepv_defined
#define _POA_LNameComponent__vepv_defined

   typedef struct {
      PortableServer_ServantBase__epv *_base_epv;
      POA_LNameComponent__epv *LNameComponent_epv;
   } POA_LNameComponent__vepv;
#endif				/* !_POA_LNameComponent__vepv_defined */

#ifndef _POA_LNameComponent_defined
#define _POA_LNameComponent_defined

   typedef struct {
      void *_private;
      POA_LNameComponent__vepv *vepv;
   } POA_LNameComponent;
#endif				/* !_POA_LNameComponent_defined */

   extern void POA_LNameComponent__init(POA_LNameComponent * servant, CORBA_Environment * ev);
   extern void POA_LNameComponent__fini(POA_LNameComponent * servant, CORBA_Environment * ev);
/* End interface LNameComponent */

/* Begin interface LName */

   /* client-side data structures and methods */
#ifndef _LName_defined
#define _LName_defined

   typedef CORBA_Object LName;
#define LName__free CORBA_Object__free
#endif				/* !_LName_defined */

   extern CORBA_unsigned_long LName__classid;
#ifndef _LName_NoComponent_defined
#define _LName_NoComponent_defined

   typedef struct LName_NoComponent {
	int empty_struct;
   } LName_NoComponent;
#define ex_LName_NoComponent "ex_LName_NoComponent"
#endif				/* !_LName_NoComponent_defined */

   extern LName_NoComponent *LName_NoComponent__alloc(void);
   extern gpointer LName_NoComponent__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);	/* ORBit internals */

#ifndef _LName_OverFlow_defined
#define _LName_OverFlow_defined

   typedef struct LName_OverFlow {
	int empty_struct;
   } LName_OverFlow;
#define ex_LName_OverFlow "ex_LName_OverFlow"
#endif				/* !_LName_OverFlow_defined */

   extern LName_OverFlow *LName_OverFlow__alloc(void);
   extern gpointer LName_OverFlow__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);	/* ORBit internals */

#ifndef _LName_InvalidName_defined
#define _LName_InvalidName_defined

   typedef struct LName_InvalidName {
	int empty_struct;
   } LName_InvalidName;
#define ex_LName_InvalidName "ex_LName_InvalidName"
#endif				/* !_LName_InvalidName_defined */

   extern LName_InvalidName *LName_InvalidName__alloc(void);
   extern gpointer LName_InvalidName__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);	/* ORBit internals */

   extern LName LName_insert_component(LName _obj, CORBA_unsigned_long i, LNameComponent n, CORBA_Environment * ev);

   extern LNameComponent LName_get_component(LName _obj, CORBA_unsigned_long i, CORBA_Environment * ev);

   extern LNameComponent LName_delete_component(LName _obj, CORBA_unsigned_long i, CORBA_Environment * ev);

   extern CORBA_unsigned_long LName_num_components(LName _obj, CORBA_Environment * ev);

   extern CORBA_boolean LName_equal(LName _obj, LName ln, CORBA_Environment * ev);

   extern CORBA_boolean LName_less_than(LName _obj, LName ln, CORBA_Environment * ev);

   extern CosNaming_Name *LName_to_idl_form(LName _obj, CORBA_Environment * ev);

   extern void LName_from_idl_form(LName _obj, CosNaming_Name * n, CORBA_Environment * ev);

   extern void LName_destroy(LName _obj, CORBA_Environment * ev);

   /* server-side (via the POA) data structures and methods */
#ifndef _POA_LName__epv_defined
#define _POA_LName__epv_defined

   typedef struct {
      void *_private;
       LName(*insert_component) (PortableServer_Servant servant, CORBA_unsigned_long i, LNameComponent n, CORBA_Environment * ev);
       LNameComponent(*get_component) (PortableServer_Servant servant, CORBA_unsigned_long i, CORBA_Environment * ev);
       LNameComponent(*delete_component) (PortableServer_Servant servant, CORBA_unsigned_long i, CORBA_Environment * ev);
       CORBA_unsigned_long(*num_components) (PortableServer_Servant servant, CORBA_Environment * ev);
       CORBA_boolean(*equal) (PortableServer_Servant servant, LName ln, CORBA_Environment * ev);
       CORBA_boolean(*less_than) (PortableServer_Servant servant, LName ln, CORBA_Environment * ev);
      CosNaming_Name *(*to_idl_form) (PortableServer_Servant servant, CORBA_Environment * ev);
      void (*from_idl_form) (PortableServer_Servant servant, CosNaming_Name * n, CORBA_Environment * ev);
      void (*destroy) (PortableServer_Servant servant, CORBA_Environment * ev);
   } POA_LName__epv;
#endif				/* !_POA_LName__epv_defined */

#ifndef _POA_LName__vepv_defined
#define _POA_LName__vepv_defined

   typedef struct {
      PortableServer_ServantBase__epv *_base_epv;
      POA_LName__epv *LName_epv;
   } POA_LName__vepv;
#endif				/* !_POA_LName__vepv_defined */

#ifndef _POA_LName_defined
#define _POA_LName_defined

   typedef struct {
      void *_private;
      POA_LName__vepv *vepv;
   } POA_LName;
#endif				/* !_POA_LName_defined */

   extern void POA_LName__init(POA_LName * servant, CORBA_Environment * ev);
   extern void POA_LName__fini(POA_LName * servant, CORBA_Environment * ev);
/* End interface LName */

#ifdef __cplusplus
}

#endif				/* __cplusplus */
#undef ORBIT_IDL_SERIAL
#endif /* LNAME_H */
