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

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

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

/* Begin CORBA module CosNaming */

#ifndef _CosNaming_Istring_defined
#define _CosNaming_Istring_defined

   typedef CORBA_char *CosNaming_Istring;
#endif				/* !_CosNaming_Istring_defined */

   extern const struct CORBA_TypeCode_struct TC_CosNaming_Istring_struct;
#define TC_CosNaming_Istring (&TC_CosNaming_Istring_struct)
   extern CosNaming_Istring *CosNaming_Istring__alloc(void);
#define CosNaming_Istring__free CORBA_string__free

#ifndef _CosNaming_NameComponent_defined
#define _CosNaming_NameComponent_defined

   typedef struct CosNaming_NameComponent {
      CosNaming_Istring id;

      CosNaming_Istring kind;

   } CosNaming_NameComponent;
#endif				/* !_CosNaming_NameComponent_defined */

   extern const struct CORBA_TypeCode_struct TC_CosNaming_NameComponent_struct;
#define TC_CosNaming_NameComponent (&TC_CosNaming_NameComponent_struct)
   extern CosNaming_NameComponent *CosNaming_NameComponent__alloc(void);
   extern gpointer CosNaming_NameComponent__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);

#ifndef _CosNaming_Name_defined
#define _CosNaming_Name_defined

   typedef struct {
      CORBA_unsigned_long _maximum;
      CORBA_unsigned_long _length;
      CosNaming_NameComponent *_buffer;
      CORBA_boolean _release:1;	/* ORBit-specific; see page 19-14 of CORBA 2.2 spec */
   } CosNaming_Name;
#endif				/* !_CosNaming_Name_defined */

   extern const struct CORBA_TypeCode_struct TC_CosNaming_Name_struct;
#define TC_CosNaming_Name (&TC_CosNaming_Name_struct)
   extern CosNaming_NameComponent *CORBA_sequence_CosNaming_NameComponent_allocbuf(CORBA_unsigned_long len);
   extern CosNaming_Name *CosNaming_Name__alloc(void);
   extern gpointer CosNaming_Name__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);	/* ORBit internals */

#ifndef _CosNaming_BindingType_defined
#define _CosNaming_BindingType_defined

   typedef enum {
      CosNaming_nobject,
      CosNaming_ncontext
   } CosNaming_BindingType;
#endif				/* !_CosNaming_BindingType_defined */

   extern const struct CORBA_TypeCode_struct TC_CosNaming_BindingType_struct;
#define TC_CosNaming_BindingType (&TC_CosNaming_BindingType_struct)

#ifndef _CosNaming_Binding_defined
#define _CosNaming_Binding_defined

   typedef struct CosNaming_Binding {
      CosNaming_Name binding_name;

      CosNaming_BindingType binding_type;

   } CosNaming_Binding;
#endif				/* !_CosNaming_Binding_defined */

   extern const struct CORBA_TypeCode_struct TC_CosNaming_Binding_struct;
#define TC_CosNaming_Binding (&TC_CosNaming_Binding_struct)
   extern CosNaming_Binding *CosNaming_Binding__alloc(void);
   extern gpointer CosNaming_Binding__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);

#ifndef _CosNaming_BindingList_defined
#define _CosNaming_BindingList_defined

   typedef struct {
      CORBA_unsigned_long _maximum;
      CORBA_unsigned_long _length;
      CosNaming_Binding *_buffer;
      CORBA_boolean _release:1;	/* ORBit-specific; see page 19-14 of CORBA 2.2 spec */
   } CosNaming_BindingList;
#endif				/* !_CosNaming_BindingList_defined */

   extern const struct CORBA_TypeCode_struct TC_CosNaming_BindingList_struct;
#define TC_CosNaming_BindingList (&TC_CosNaming_BindingList_struct)
   extern CosNaming_Binding *CORBA_sequence_CosNaming_Binding_allocbuf(CORBA_unsigned_long len);
   extern CosNaming_BindingList *CosNaming_BindingList__alloc(void);
   extern gpointer CosNaming_BindingList__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);		/* ORBit internals */

/* Begin forward declaration CosNaming_BindingIterator */

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

   typedef CORBA_Object CosNaming_BindingIterator;
#define CosNaming_BindingIterator__free CORBA_Object__free
#endif				/* !_CosNaming_BindingIterator_defined */

/* End forward declaration CosNaming_BindingIterator */

/* Begin interface CosNaming_NamingContext */

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

   typedef CORBA_Object CosNaming_NamingContext;
#define CosNaming_NamingContext__free CORBA_Object__free
#endif				/* !_CosNaming_NamingContext_defined */

   extern CORBA_unsigned_long CosNaming_NamingContext__classid;
   extern const struct CORBA_TypeCode_struct TC_CosNaming_NamingContext_struct;
#define TC_CosNaming_NamingContext (&TC_CosNaming_NamingContext_struct)
#ifndef _CosNaming_NamingContext_NotFoundReason_defined
#define _CosNaming_NamingContext_NotFoundReason_defined

   typedef enum {
      CosNaming_NamingContext_missing_node,
      CosNaming_NamingContext_not_context,
      CosNaming_NamingContext_not_object
   } CosNaming_NamingContext_NotFoundReason;
#endif				/* !_CosNaming_NamingContext_NotFoundReason_defined */

   extern const struct CORBA_TypeCode_struct TC_CosNaming_NamingContext_NotFoundReason_struct;
#define TC_CosNaming_NamingContext_NotFoundReason (&TC_CosNaming_NamingContext_NotFoundReason_struct)

#ifndef _CosNaming_NamingContext_NotFound_defined
#define _CosNaming_NamingContext_NotFound_defined

   typedef struct CosNaming_NamingContext_NotFound {
      CosNaming_NamingContext_NotFoundReason why;

      CosNaming_Name rest_of_name;

   } CosNaming_NamingContext_NotFound;
#define ex_CosNaming_NamingContext_NotFound "IDL:omg.org/CosNaming/NamingContext/NotFound:1.0"
#endif				/* !_CosNaming_NamingContext_NotFound_defined */

   extern const struct CORBA_TypeCode_struct TC_CosNaming_NamingContext_NotFound_struct;
#define TC_CosNaming_NamingContext_NotFound (&TC_CosNaming_NamingContext_NotFound_struct)
   extern CosNaming_NamingContext_NotFound *CosNaming_NamingContext_NotFound__alloc(void);
   extern gpointer CosNaming_NamingContext_NotFound__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);	/* ORBit internals */

#ifndef _CosNaming_NamingContext_CannotProceed_defined
#define _CosNaming_NamingContext_CannotProceed_defined

   typedef struct CosNaming_NamingContext_CannotProceed {
      CosNaming_NamingContext ctx;

      CosNaming_Name rest_of_name;

   } CosNaming_NamingContext_CannotProceed;
#define ex_CosNaming_NamingContext_CannotProceed "IDL:omg.org/CosNaming/NamingContext/CannotProceed:1.0"
#endif				/* !_CosNaming_NamingContext_CannotProceed_defined */

   extern const struct CORBA_TypeCode_struct TC_CosNaming_NamingContext_CannotProceed_struct;
#define TC_CosNaming_NamingContext_CannotProceed (&TC_CosNaming_NamingContext_CannotProceed_struct)
   extern CosNaming_NamingContext_CannotProceed *CosNaming_NamingContext_CannotProceed__alloc(void);
   extern gpointer CosNaming_NamingContext_CannotProceed__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);		/* ORBit internals */

#ifndef _CosNaming_NamingContext_InvalidName_defined
#define _CosNaming_NamingContext_InvalidName_defined

   typedef struct CosNaming_NamingContext_InvalidName {
      int empty_struct_member;
   } CosNaming_NamingContext_InvalidName;
#define ex_CosNaming_NamingContext_InvalidName "IDL:omg.org/CosNaming/NamingContext/InvalidName:1.0"
#endif				/* !_CosNaming_NamingContext_InvalidName_defined */

   extern const struct CORBA_TypeCode_struct TC_CosNaming_NamingContext_InvalidName_struct;
#define TC_CosNaming_NamingContext_InvalidName (&TC_CosNaming_NamingContext_InvalidName_struct)
   extern CosNaming_NamingContext_InvalidName *CosNaming_NamingContext_InvalidName__alloc(void);
   extern gpointer CosNaming_NamingContext_InvalidName__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);	/* ORBit internals */

#ifndef _CosNaming_NamingContext_AlreadyBound_defined
#define _CosNaming_NamingContext_AlreadyBound_defined

   typedef struct CosNaming_NamingContext_AlreadyBound {
      int empty_struct_member;
   } CosNaming_NamingContext_AlreadyBound;
#define ex_CosNaming_NamingContext_AlreadyBound "IDL:omg.org/CosNaming/NamingContext/AlreadyBound:1.0"
#endif				/* !_CosNaming_NamingContext_AlreadyBound_defined */

   extern const struct CORBA_TypeCode_struct TC_CosNaming_NamingContext_AlreadyBound_struct;
#define TC_CosNaming_NamingContext_AlreadyBound (&TC_CosNaming_NamingContext_AlreadyBound_struct)
   extern CosNaming_NamingContext_AlreadyBound *CosNaming_NamingContext_AlreadyBound__alloc(void);
   extern gpointer CosNaming_NamingContext_AlreadyBound__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);	/* ORBit internals */

#ifndef _CosNaming_NamingContext_NotEmpty_defined
#define _CosNaming_NamingContext_NotEmpty_defined

   typedef struct CosNaming_NamingContext_NotEmpty {
      int empty_struct_member;
   } CosNaming_NamingContext_NotEmpty;
#define ex_CosNaming_NamingContext_NotEmpty "IDL:omg.org/CosNaming/NamingContext/NotEmpty:1.0"
#endif				/* !_CosNaming_NamingContext_NotEmpty_defined */

   extern const struct CORBA_TypeCode_struct TC_CosNaming_NamingContext_NotEmpty_struct;
#define TC_CosNaming_NamingContext_NotEmpty (&TC_CosNaming_NamingContext_NotEmpty_struct)
   extern CosNaming_NamingContext_NotEmpty *CosNaming_NamingContext_NotEmpty__alloc(void);
   extern gpointer CosNaming_NamingContext_NotEmpty__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);	/* ORBit internals */

   extern void CosNaming_NamingContext_bind(CosNaming_NamingContext _obj, const CosNaming_Name * n, const CORBA_Object obj, CORBA_Environment * ev);

   extern void CosNaming_NamingContext_rebind(CosNaming_NamingContext _obj, const CosNaming_Name * n, const CORBA_Object obj, CORBA_Environment * ev);

   extern void CosNaming_NamingContext_bind_context(CosNaming_NamingContext _obj, const CosNaming_Name * n, const CosNaming_NamingContext nc, CORBA_Environment * ev);

   extern void CosNaming_NamingContext_rebind_context(CosNaming_NamingContext _obj, const CosNaming_Name * n, const CosNaming_NamingContext nc, CORBA_Environment * ev);

   extern CORBA_Object CosNaming_NamingContext_resolve(CosNaming_NamingContext _obj, const CosNaming_Name * n, CORBA_Environment * ev);

   extern void CosNaming_NamingContext_unbind(CosNaming_NamingContext _obj, const CosNaming_Name * n, CORBA_Environment * ev);

   extern CosNaming_NamingContext CosNaming_NamingContext_new_context(CosNaming_NamingContext _obj, CORBA_Environment * ev);

   extern CosNaming_NamingContext CosNaming_NamingContext_bind_new_context(CosNaming_NamingContext _obj, const CosNaming_Name * n, CORBA_Environment * ev);

   extern void CosNaming_NamingContext_destroy(CosNaming_NamingContext _obj, CORBA_Environment * ev);

   extern void CosNaming_NamingContext_list(CosNaming_NamingContext _obj, const CORBA_unsigned_long how_many, CosNaming_BindingList ** bl, CosNaming_BindingIterator * bi, CORBA_Environment * ev);

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

   typedef struct {
      void *_private;
      void (*bind) (PortableServer_Servant servant, const CosNaming_Name * n, const CORBA_Object obj, CORBA_Environment * ev);
      void (*rebind) (PortableServer_Servant servant, const CosNaming_Name * n, const CORBA_Object obj, CORBA_Environment * ev);
      void (*bind_context) (PortableServer_Servant servant, const CosNaming_Name * n, const CosNaming_NamingContext nc, CORBA_Environment * ev);
      void (*rebind_context) (PortableServer_Servant servant, const CosNaming_Name * n, const CosNaming_NamingContext nc, CORBA_Environment * ev);
       CORBA_Object(*resolve) (PortableServer_Servant servant, const CosNaming_Name * n, CORBA_Environment * ev);
      void (*unbind) (PortableServer_Servant servant, const CosNaming_Name * n, CORBA_Environment * ev);
       CosNaming_NamingContext(*new_context) (PortableServer_Servant servant, CORBA_Environment * ev);
       CosNaming_NamingContext(*bind_new_context) (PortableServer_Servant servant, const CosNaming_Name * n, CORBA_Environment * ev);
      void (*destroy) (PortableServer_Servant servant, CORBA_Environment * ev);
      void (*list) (PortableServer_Servant servant, const CORBA_unsigned_long how_many, CosNaming_BindingList ** bl, CosNaming_BindingIterator * bi, CORBA_Environment * ev);
   } POA_CosNaming_NamingContext__epv;
#endif				/* !_POA_CosNaming_NamingContext__epv_defined */

#ifndef _POA_CosNaming_NamingContext__vepv_defined
#define _POA_CosNaming_NamingContext__vepv_defined

   typedef struct {
      PortableServer_ServantBase__epv *_base_epv;
      POA_CosNaming_NamingContext__epv *CosNaming_NamingContext_epv;
   } POA_CosNaming_NamingContext__vepv;
#endif				/* !_POA_CosNaming_NamingContext__vepv_defined */

#ifndef _POA_CosNaming_NamingContext_defined
#define _POA_CosNaming_NamingContext_defined

   typedef struct {
      void *_private;
      POA_CosNaming_NamingContext__vepv *vepv;
   } POA_CosNaming_NamingContext;
#endif				/* !_POA_CosNaming_NamingContext_defined */

   extern void POA_CosNaming_NamingContext__init(POA_CosNaming_NamingContext * servant, CORBA_Environment * ev);
   extern void POA_CosNaming_NamingContext__fini(POA_CosNaming_NamingContext * servant, CORBA_Environment * ev);
/* End interface CosNaming_NamingContext */

/* Begin interface CosNaming_BindingIterator */

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

   typedef CORBA_Object CosNaming_BindingIterator;
#define CosNaming_BindingIterator__free CORBA_Object__free
#endif				/* !_CosNaming_BindingIterator_defined */

   extern CORBA_unsigned_long CosNaming_BindingIterator__classid;
   extern const struct CORBA_TypeCode_struct TC_CosNaming_BindingIterator_struct;
#define TC_CosNaming_BindingIterator (&TC_CosNaming_BindingIterator_struct)
   extern CORBA_boolean CosNaming_BindingIterator_next_one(CosNaming_BindingIterator _obj, CosNaming_Binding ** b, CORBA_Environment * ev);

   extern CORBA_boolean CosNaming_BindingIterator_next_n(CosNaming_BindingIterator _obj, const CORBA_unsigned_long how_many, CosNaming_BindingList ** bl, CORBA_Environment * ev);

   extern void CosNaming_BindingIterator_destroy(CosNaming_BindingIterator _obj, CORBA_Environment * ev);

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

   typedef struct {
      void *_private;
       CORBA_boolean(*next_one) (PortableServer_Servant servant, CosNaming_Binding ** b, CORBA_Environment * ev);
       CORBA_boolean(*next_n) (PortableServer_Servant servant, const CORBA_unsigned_long how_many, CosNaming_BindingList ** bl, CORBA_Environment * ev);
      void (*destroy) (PortableServer_Servant servant, CORBA_Environment * ev);
   } POA_CosNaming_BindingIterator__epv;
#endif				/* !_POA_CosNaming_BindingIterator__epv_defined */

#ifndef _POA_CosNaming_BindingIterator__vepv_defined
#define _POA_CosNaming_BindingIterator__vepv_defined

   typedef struct {
      PortableServer_ServantBase__epv *_base_epv;
      POA_CosNaming_BindingIterator__epv *CosNaming_BindingIterator_epv;
   } POA_CosNaming_BindingIterator__vepv;
#endif				/* !_POA_CosNaming_BindingIterator__vepv_defined */

#ifndef _POA_CosNaming_BindingIterator_defined
#define _POA_CosNaming_BindingIterator_defined

   typedef struct {
      void *_private;
      POA_CosNaming_BindingIterator__vepv *vepv;
   } POA_CosNaming_BindingIterator;
#endif				/* !_POA_CosNaming_BindingIterator_defined */

   extern void POA_CosNaming_BindingIterator__init(POA_CosNaming_BindingIterator * servant, CORBA_Environment * ev);
   extern void POA_CosNaming_BindingIterator__fini(POA_CosNaming_BindingIterator * servant, CORBA_Environment * ev);
/* End interface CosNaming_BindingIterator */

/* End CORBA module CosNaming */

#ifdef __cplusplus
}

#endif				/* __cplusplus */
#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 */
