/*
 * 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 */
