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

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

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


/** typedefs **/
#if !defined(ORBIT_DECL_CORBA_sequence_CORBA_string) && !defined(_CORBA_sequence_CORBA_string_defined)
#define ORBIT_DECL_CORBA_sequence_CORBA_string 1
#define _CORBA_sequence_CORBA_string_defined 1
#define ORBIT_IMPL_CORBA_sequence_CORBA_string_0 'o'
#define ORBIT_IMPL_CORBA_sequence_CORBA_string_1 'a'
#define ORBIT_IMPL_CORBA_sequence_CORBA_string_2 'f'
#define ORBIT_IMPL_CORBA_sequence_CORBA_string_3 '_'
#define ORBIT_IMPL_CORBA_sequence_CORBA_string_4 'f'
#define ORBIT_IMPL_CORBA_sequence_CORBA_string_5 'a'
#define ORBIT_IMPL_CORBA_sequence_CORBA_string_6 'c'
#define ORBIT_IMPL_CORBA_sequence_CORBA_string_7 't'
#define ORBIT_IMPL_CORBA_sequence_CORBA_string_8 'o'
#define ORBIT_IMPL_CORBA_sequence_CORBA_string_9 'r'
#define ORBIT_IMPL_CORBA_sequence_CORBA_string_10 'y'
typedef struct { CORBA_unsigned_long _maximum, _length; CORBA_char ** _buffer; CORBA_boolean _release; } CORBA_sequence_CORBA_string;
CORBA_char * *CORBA_sequence_CORBA_string_allocbuf(CORBA_unsigned_long len);
#endif
#if !defined(TC_IMPL_TC_CORBA_sequence_CORBA_string_0)
#define TC_IMPL_TC_CORBA_sequence_CORBA_string_0 'o'
#define TC_IMPL_TC_CORBA_sequence_CORBA_string_1 'a'
#define TC_IMPL_TC_CORBA_sequence_CORBA_string_2 'f'
#define TC_IMPL_TC_CORBA_sequence_CORBA_string_3 '_'
#define TC_IMPL_TC_CORBA_sequence_CORBA_string_4 'f'
#define TC_IMPL_TC_CORBA_sequence_CORBA_string_5 'a'
#define TC_IMPL_TC_CORBA_sequence_CORBA_string_6 'c'
#define TC_IMPL_TC_CORBA_sequence_CORBA_string_7 't'
#define TC_IMPL_TC_CORBA_sequence_CORBA_string_8 'o'
#define TC_IMPL_TC_CORBA_sequence_CORBA_string_9 'r'
#define TC_IMPL_TC_CORBA_sequence_CORBA_string_10 'y'
extern const struct CORBA_TypeCode_struct TC_CORBA_sequence_CORBA_string_struct;
#define TC_CORBA_sequence_CORBA_string ((CORBA_TypeCode)&TC_CORBA_sequence_CORBA_string_struct)
#endif
extern CORBA_sequence_CORBA_string* CORBA_sequence_CORBA_string__alloc(void);
extern gpointer CORBA_sequence_CORBA_string__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
#if !defined(_GNOME_stringlist_defined)
#define _GNOME_stringlist_defined 1
typedef CORBA_sequence_CORBA_string GNOME_stringlist;
#if !defined(TC_IMPL_TC_GNOME_stringlist_0)
#define TC_IMPL_TC_GNOME_stringlist_0 'o'
#define TC_IMPL_TC_GNOME_stringlist_1 'a'
#define TC_IMPL_TC_GNOME_stringlist_2 'f'
#define TC_IMPL_TC_GNOME_stringlist_3 '_'
#define TC_IMPL_TC_GNOME_stringlist_4 'f'
#define TC_IMPL_TC_GNOME_stringlist_5 'a'
#define TC_IMPL_TC_GNOME_stringlist_6 'c'
#define TC_IMPL_TC_GNOME_stringlist_7 't'
#define TC_IMPL_TC_GNOME_stringlist_8 'o'
#define TC_IMPL_TC_GNOME_stringlist_9 'r'
#define TC_IMPL_TC_GNOME_stringlist_10 'y'
extern const struct CORBA_TypeCode_struct TC_GNOME_stringlist_struct;
#define TC_GNOME_stringlist ((CORBA_TypeCode)&TC_GNOME_stringlist_struct)
#endif
extern GNOME_stringlist* GNOME_stringlist__alloc(void);
extern gpointer GNOME_stringlist__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
#endif
#if !defined(ORBIT_DECL_GNOME_ObjectFactory) && !defined(_GNOME_ObjectFactory_defined)
#define ORBIT_DECL_GNOME_ObjectFactory 1
#define _GNOME_ObjectFactory_defined 1
#define GNOME_ObjectFactory__free CORBA_Object__free
typedef CORBA_Object GNOME_ObjectFactory;
extern CORBA_unsigned_long GNOME_ObjectFactory__classid;
#if !defined(TC_IMPL_TC_GNOME_ObjectFactory_0)
#define TC_IMPL_TC_GNOME_ObjectFactory_0 'o'
#define TC_IMPL_TC_GNOME_ObjectFactory_1 'a'
#define TC_IMPL_TC_GNOME_ObjectFactory_2 'f'
#define TC_IMPL_TC_GNOME_ObjectFactory_3 '_'
#define TC_IMPL_TC_GNOME_ObjectFactory_4 'f'
#define TC_IMPL_TC_GNOME_ObjectFactory_5 'a'
#define TC_IMPL_TC_GNOME_ObjectFactory_6 'c'
#define TC_IMPL_TC_GNOME_ObjectFactory_7 't'
#define TC_IMPL_TC_GNOME_ObjectFactory_8 'o'
#define TC_IMPL_TC_GNOME_ObjectFactory_9 'r'
#define TC_IMPL_TC_GNOME_ObjectFactory_10 'y'
extern const struct CORBA_TypeCode_struct TC_GNOME_ObjectFactory_struct;
#define TC_GNOME_ObjectFactory ((CORBA_TypeCode)&TC_GNOME_ObjectFactory_struct)
#endif
#endif
#define ex_GNOME_ObjectFactory_CannotActivate "IDL:GNOME/ObjectFactory/CannotActivate:1.0"
void _ORBIT_GNOME_ObjectFactory_CannotActivate_demarshal(GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev);
void _ORBIT_GNOME_ObjectFactory_CannotActivate_marshal(GIOPSendBuffer *_ORBIT_send_buffer, CORBA_Environment *ev);
#if !defined(_GNOME_ObjectFactory_CannotActivate_defined)
#define _GNOME_ObjectFactory_CannotActivate_defined 1
typedef struct {
int dummy;
} GNOME_ObjectFactory_CannotActivate;

#if !defined(TC_IMPL_TC_GNOME_ObjectFactory_CannotActivate_0)
#define TC_IMPL_TC_GNOME_ObjectFactory_CannotActivate_0 'o'
#define TC_IMPL_TC_GNOME_ObjectFactory_CannotActivate_1 'a'
#define TC_IMPL_TC_GNOME_ObjectFactory_CannotActivate_2 'f'
#define TC_IMPL_TC_GNOME_ObjectFactory_CannotActivate_3 '_'
#define TC_IMPL_TC_GNOME_ObjectFactory_CannotActivate_4 'f'
#define TC_IMPL_TC_GNOME_ObjectFactory_CannotActivate_5 'a'
#define TC_IMPL_TC_GNOME_ObjectFactory_CannotActivate_6 'c'
#define TC_IMPL_TC_GNOME_ObjectFactory_CannotActivate_7 't'
#define TC_IMPL_TC_GNOME_ObjectFactory_CannotActivate_8 'o'
#define TC_IMPL_TC_GNOME_ObjectFactory_CannotActivate_9 'r'
#define TC_IMPL_TC_GNOME_ObjectFactory_CannotActivate_10 'y'
extern const struct CORBA_TypeCode_struct TC_GNOME_ObjectFactory_CannotActivate_struct;
#define TC_GNOME_ObjectFactory_CannotActivate ((CORBA_TypeCode)&TC_GNOME_ObjectFactory_CannotActivate_struct)
#endif
#define GNOME_ObjectFactory_CannotActivate__alloc() NULL
extern gpointer GNOME_ObjectFactory_CannotActivate__free(gpointer mem, gpointer dat, CORBA_boolean free_strings); /* ORBit internal use */
#endif

/** POA structures **/
typedef struct {
  void *_private;
CORBA_boolean (*manufactures)(PortableServer_Servant _servant, const CORBA_char * obj_oaf_id, CORBA_Environment *ev);
CORBA_Object (*create_object)(PortableServer_Servant _servant, const CORBA_char * oaf_id, const GNOME_stringlist* params, CORBA_Environment *ev);
void (*ref)(PortableServer_Servant _servant, CORBA_Environment *ev);
void (*unref)(PortableServer_Servant _servant, CORBA_Environment *ev);
} POA_GNOME_ObjectFactory__epv;
typedef struct {
  PortableServer_ServantBase__epv *_base_epv;
  POA_GNOME_ObjectFactory__epv *GNOME_ObjectFactory_epv;
} POA_GNOME_ObjectFactory__vepv;
typedef struct {
  void *_private;
  POA_GNOME_ObjectFactory__vepv *vepv;
} POA_GNOME_ObjectFactory;
extern void POA_GNOME_ObjectFactory__init(PortableServer_Servant servant, CORBA_Environment *ev);
extern void POA_GNOME_ObjectFactory__fini(PortableServer_Servant servant, CORBA_Environment *ev);

/** prototypes **/
CORBA_boolean GNOME_ObjectFactory_manufactures(GNOME_ObjectFactory _obj, const CORBA_char * obj_oaf_id, CORBA_Environment *ev);
CORBA_Object GNOME_ObjectFactory_create_object(GNOME_ObjectFactory _obj, const CORBA_char * oaf_id, const GNOME_stringlist* params, CORBA_Environment *ev);
void GNOME_ObjectFactory_ref(GNOME_ObjectFactory _obj, CORBA_Environment *ev);
void GNOME_ObjectFactory_unref(GNOME_ObjectFactory _obj, CORBA_Environment *ev);

void _ORBIT_skel_GNOME_ObjectFactory_manufactures(POA_GNOME_ObjectFactory *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, CORBA_boolean (*_impl_manufactures)(PortableServer_Servant _servant, const CORBA_char * obj_oaf_id, CORBA_Environment *ev));
void _ORBIT_skel_GNOME_ObjectFactory_create_object(POA_GNOME_ObjectFactory *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, CORBA_Object (*_impl_create_object)(PortableServer_Servant _servant, const CORBA_char * oaf_id, const GNOME_stringlist* params, CORBA_Environment *ev));
void _ORBIT_skel_GNOME_ObjectFactory_ref(POA_GNOME_ObjectFactory *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, void (*_impl_ref)(PortableServer_Servant _servant, CORBA_Environment *ev));
void _ORBIT_skel_GNOME_ObjectFactory_unref(POA_GNOME_ObjectFactory *_ORBIT_servant, GIOPRecvBuffer *_ORBIT_recv_buffer, CORBA_Environment *ev, void (*_impl_unref)(PortableServer_Servant _servant, CORBA_Environment *ev));
#ifdef __cplusplus
}
#endif /* __cplusplus */

#endif
#undef ORBIT_IDL_SERIAL
