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

#ifndef Foo_H
#define Foo_H 1
#include <glib.h>
#define ORBIT_IDL_SERIAL 20
#include <orbit/orbit-types.h>

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


/** typedefs **/
#if !defined(_Foo_MyType_defined)
#define _Foo_MyType_defined 1
typedef struct Foo_MyType_type Foo_MyType;
struct Foo_MyType_type {
CORBA_short eins;
CORBA_long zwei;
};

#if !defined(TC_IMPL_TC_Foo_MyType_0)
#define TC_IMPL_TC_Foo_MyType_0 'F'
#define TC_IMPL_TC_Foo_MyType_1 'o'
#define TC_IMPL_TC_Foo_MyType_2 'o'
#ifdef ORBIT_IDL_C_IMODULE_Foo
static
#else
extern
#endif
ORBIT2_MAYBE_CONST struct CORBA_TypeCode_struct TC_Foo_MyType_struct;
#define TC_Foo_MyType ((CORBA_TypeCode)&TC_Foo_MyType_struct)
#endif
#define Foo_MyType__alloc() ((Foo_MyType *)ORBit_small_alloc (TC_Foo_MyType))
#define Foo_MyType__freekids(m,d) ORBit_small_freekids (TC_Foo_MyType,(m),(d))
#endif
#if !defined(ORBIT_DECL_Foo_Bar_Baz) && !defined(_Foo_Bar_Baz_defined)
#define ORBIT_DECL_Foo_Bar_Baz 1
#define _Foo_Bar_Baz_defined 1
#define Foo_Bar_Baz__freekids CORBA_Object__freekids
typedef CORBA_Object Foo_Bar_Baz;
extern CORBA_unsigned_long Foo_Bar_Baz__classid;
#if !defined(TC_IMPL_TC_Foo_Bar_Baz_0)
#define TC_IMPL_TC_Foo_Bar_Baz_0 'F'
#define TC_IMPL_TC_Foo_Bar_Baz_1 'o'
#define TC_IMPL_TC_Foo_Bar_Baz_2 'o'
#ifdef ORBIT_IDL_C_IMODULE_Foo
static
#else
extern
#endif
ORBIT2_MAYBE_CONST struct CORBA_TypeCode_struct TC_Foo_Bar_Baz_struct;
#define TC_Foo_Bar_Baz ((CORBA_TypeCode)&TC_Foo_Bar_Baz_struct)
#endif
#endif
#if !defined(ORBIT_DECL_Foo_Hello) && !defined(_Foo_Hello_defined)
#define ORBIT_DECL_Foo_Hello 1
#define _Foo_Hello_defined 1
#define Foo_Hello__freekids CORBA_Object__freekids
typedef CORBA_Object Foo_Hello;
extern CORBA_unsigned_long Foo_Hello__classid;
#if !defined(TC_IMPL_TC_Foo_Hello_0)
#define TC_IMPL_TC_Foo_Hello_0 'F'
#define TC_IMPL_TC_Foo_Hello_1 'o'
#define TC_IMPL_TC_Foo_Hello_2 'o'
#ifdef ORBIT_IDL_C_IMODULE_Foo
static
#else
extern
#endif
ORBIT2_MAYBE_CONST struct CORBA_TypeCode_struct TC_Foo_Hello_struct;
#define TC_Foo_Hello ((CORBA_TypeCode)&TC_Foo_Hello_struct)
#endif
#endif
#undef ex_Foo_Hello_MyException
#define ex_Foo_Hello_MyException "IDL:Foo/Hello/MyException:1.0"
#if !defined(_Foo_Hello_MyException_defined)
#define _Foo_Hello_MyException_defined 1
typedef struct Foo_Hello_MyException_type Foo_Hello_MyException;
struct Foo_Hello_MyException_type {
int dummy;
};

#if !defined(TC_IMPL_TC_Foo_Hello_MyException_0)
#define TC_IMPL_TC_Foo_Hello_MyException_0 'F'
#define TC_IMPL_TC_Foo_Hello_MyException_1 'o'
#define TC_IMPL_TC_Foo_Hello_MyException_2 'o'
#ifdef ORBIT_IDL_C_IMODULE_Foo
static
#else
extern
#endif
ORBIT2_MAYBE_CONST struct CORBA_TypeCode_struct TC_Foo_Hello_MyException_struct;
#define TC_Foo_Hello_MyException ((CORBA_TypeCode)&TC_Foo_Hello_MyException_struct)
#endif
#define Foo_Hello_MyException__alloc() ((Foo_Hello_MyException *)ORBit_small_alloc (TC_Foo_Hello_MyException))
#define Foo_Hello_MyException__freekids(m,d) ORBit_small_freekids (TC_Foo_Hello_MyException,(m),(d))
#endif
#if !defined(_Foo_Hello_MyLong_defined)
#define _Foo_Hello_MyLong_defined 1
typedef CORBA_long Foo_Hello_MyLong;
#define Foo_Hello_MyLong_marshal(x,y,z) CORBA_long_marshal((x),(y),(z))
#define Foo_Hello_MyLong_demarshal(x,y,z,i) CORBA_long_demarshal((x),(y),(z),(i))
#if !defined(TC_IMPL_TC_Foo_Hello_MyLong_0)
#define TC_IMPL_TC_Foo_Hello_MyLong_0 'F'
#define TC_IMPL_TC_Foo_Hello_MyLong_1 'o'
#define TC_IMPL_TC_Foo_Hello_MyLong_2 'o'
#ifdef ORBIT_IDL_C_IMODULE_Foo
static
#else
extern
#endif
ORBIT2_MAYBE_CONST struct CORBA_TypeCode_struct TC_Foo_Hello_MyLong_struct;
#define TC_Foo_Hello_MyLong ((CORBA_TypeCode)&TC_Foo_Hello_MyLong_struct)
#endif
#define Foo_Hello_MyLong__alloc() ((Foo_Hello_MyLong *)ORBit_small_alloc (TC_CORBA_long))
#define Foo_Hello_MyLong__freekids(m,d) ORBit_small_freekids (TC_CORBA_long,(m),(d))
#endif
#if !defined(ORBIT_DECL_Foo_MaximumHello) && !defined(_Foo_MaximumHello_defined)
#define ORBIT_DECL_Foo_MaximumHello 1
#define _Foo_MaximumHello_defined 1
#define Foo_MaximumHello__freekids CORBA_Object__freekids
typedef CORBA_Object Foo_MaximumHello;
extern CORBA_unsigned_long Foo_MaximumHello__classid;
#if !defined(TC_IMPL_TC_Foo_MaximumHello_0)
#define TC_IMPL_TC_Foo_MaximumHello_0 'F'
#define TC_IMPL_TC_Foo_MaximumHello_1 'o'
#define TC_IMPL_TC_Foo_MaximumHello_2 'o'
#ifdef ORBIT_IDL_C_IMODULE_Foo
static
#else
extern
#endif
ORBIT2_MAYBE_CONST struct CORBA_TypeCode_struct TC_Foo_MaximumHello_struct;
#define TC_Foo_MaximumHello ((CORBA_TypeCode)&TC_Foo_MaximumHello_struct)
#endif
#endif
#if !defined(ORBIT_DECL_Foo_InheritanceTest) && !defined(_Foo_InheritanceTest_defined)
#define ORBIT_DECL_Foo_InheritanceTest 1
#define _Foo_InheritanceTest_defined 1
#define Foo_InheritanceTest__freekids CORBA_Object__freekids
typedef CORBA_Object Foo_InheritanceTest;
extern CORBA_unsigned_long Foo_InheritanceTest__classid;
#if !defined(TC_IMPL_TC_Foo_InheritanceTest_0)
#define TC_IMPL_TC_Foo_InheritanceTest_0 'F'
#define TC_IMPL_TC_Foo_InheritanceTest_1 'o'
#define TC_IMPL_TC_Foo_InheritanceTest_2 'o'
#ifdef ORBIT_IDL_C_IMODULE_Foo
static
#else
extern
#endif
ORBIT2_MAYBE_CONST struct CORBA_TypeCode_struct TC_Foo_InheritanceTest_struct;
#define TC_Foo_InheritanceTest ((CORBA_TypeCode)&TC_Foo_InheritanceTest_struct)
#endif
#endif

/** POA structures **/
#ifndef _defined_POA_Foo_Bar_Baz
#define _defined_POA_Foo_Bar_Baz 1
typedef struct {
  void *_private;
void (*haveFun)(PortableServer_Servant _servant, const CORBA_short a, const CORBA_boolean b, CORBA_Environment *ev);
} POA_Foo_Bar_Baz__epv;
typedef struct {
  PortableServer_ServantBase__epv *_base_epv;
  POA_Foo_Bar_Baz__epv *Foo_Bar_Baz_epv;
} POA_Foo_Bar_Baz__vepv;
typedef struct {
  void *_private;
  POA_Foo_Bar_Baz__vepv *vepv;
} POA_Foo_Bar_Baz;
extern void POA_Foo_Bar_Baz__init(PortableServer_Servant servant, CORBA_Environment *ev);
extern void POA_Foo_Bar_Baz__fini(PortableServer_Servant servant, CORBA_Environment *ev);
#endif /* _defined_POA_Foo_Bar_Baz */
#ifndef _defined_POA_Foo_Hello
#define _defined_POA_Foo_Hello 1
typedef struct {
  void *_private;
void (*doHello)(PortableServer_Servant _servant, CORBA_Environment *ev);
} POA_Foo_Hello__epv;
typedef struct {
  PortableServer_ServantBase__epv *_base_epv;
  POA_Foo_Hello__epv *Foo_Hello_epv;
} POA_Foo_Hello__vepv;
typedef struct {
  void *_private;
  POA_Foo_Hello__vepv *vepv;
} POA_Foo_Hello;
extern void POA_Foo_Hello__init(PortableServer_Servant servant, CORBA_Environment *ev);
extern void POA_Foo_Hello__fini(PortableServer_Servant servant, CORBA_Environment *ev);
#endif /* _defined_POA_Foo_Hello */
#ifndef _defined_POA_Foo_MaximumHello
#define _defined_POA_Foo_MaximumHello 1
typedef struct {
  void *_private;
void (*haveMoreFun)(PortableServer_Servant _servant, CORBA_Environment *ev);
void (*haveFunWithAnArgument)(PortableServer_Servant _servant, const CORBA_long argument, const CORBA_short foo, CORBA_Environment *ev);
} POA_Foo_MaximumHello__epv;
typedef struct {
  PortableServer_ServantBase__epv *_base_epv;
  POA_Foo_Bar_Baz__epv *Foo_Bar_Baz_epv;
  POA_Foo_Hello__epv *Foo_Hello_epv;
  POA_Foo_MaximumHello__epv *Foo_MaximumHello_epv;
} POA_Foo_MaximumHello__vepv;
typedef struct {
  void *_private;
  POA_Foo_MaximumHello__vepv *vepv;
} POA_Foo_MaximumHello;
extern void POA_Foo_MaximumHello__init(PortableServer_Servant servant, CORBA_Environment *ev);
extern void POA_Foo_MaximumHello__fini(PortableServer_Servant servant, CORBA_Environment *ev);
#endif /* _defined_POA_Foo_MaximumHello */
#ifndef _defined_POA_Foo_InheritanceTest
#define _defined_POA_Foo_InheritanceTest 1
typedef struct {
  void *_private;
void (*theMegaTest)(PortableServer_Servant _servant, CORBA_Environment *ev);
} POA_Foo_InheritanceTest__epv;
typedef struct {
  PortableServer_ServantBase__epv *_base_epv;
  POA_Foo_Bar_Baz__epv *Foo_Bar_Baz_epv;
  POA_Foo_Hello__epv *Foo_Hello_epv;
  POA_Foo_MaximumHello__epv *Foo_MaximumHello_epv;
  POA_Foo_InheritanceTest__epv *Foo_InheritanceTest_epv;
} POA_Foo_InheritanceTest__vepv;
typedef struct {
  void *_private;
  POA_Foo_InheritanceTest__vepv *vepv;
} POA_Foo_InheritanceTest;
extern void POA_Foo_InheritanceTest__init(PortableServer_Servant servant, CORBA_Environment *ev);
extern void POA_Foo_InheritanceTest__fini(PortableServer_Servant servant, CORBA_Environment *ev);
#endif /* _defined_POA_Foo_InheritanceTest */

/** skel prototypes **/
void _ORBIT_skel_small_Foo_Bar_Baz_haveFun(POA_Foo_Bar_Baz *_ORBIT_servant, gpointer _ORBIT_retval, gpointer *_ORBIT_args, CORBA_Context ctx,CORBA_Environment *ev, void (*_impl_haveFun)(PortableServer_Servant _servant, const CORBA_short a, const CORBA_boolean b, CORBA_Environment *ev));
void _ORBIT_skel_small_Foo_Hello_doHello(POA_Foo_Hello *_ORBIT_servant, gpointer _ORBIT_retval, gpointer *_ORBIT_args, CORBA_Context ctx,CORBA_Environment *ev, void (*_impl_doHello)(PortableServer_Servant _servant, CORBA_Environment *ev));
void _ORBIT_skel_small_Foo_MaximumHello_haveMoreFun(POA_Foo_MaximumHello *_ORBIT_servant, gpointer _ORBIT_retval, gpointer *_ORBIT_args, CORBA_Context ctx,CORBA_Environment *ev, void (*_impl_haveMoreFun)(PortableServer_Servant _servant, CORBA_Environment *ev));
void _ORBIT_skel_small_Foo_MaximumHello_haveFunWithAnArgument(POA_Foo_MaximumHello *_ORBIT_servant, gpointer _ORBIT_retval, gpointer *_ORBIT_args, CORBA_Context ctx,CORBA_Environment *ev, void (*_impl_haveFunWithAnArgument)(PortableServer_Servant _servant, const CORBA_long argument, const CORBA_short foo, CORBA_Environment *ev));
void _ORBIT_skel_small_Foo_InheritanceTest_theMegaTest(POA_Foo_InheritanceTest *_ORBIT_servant, gpointer _ORBIT_retval, gpointer *_ORBIT_args, CORBA_Context ctx,CORBA_Environment *ev, void (*_impl_theMegaTest)(PortableServer_Servant _servant, CORBA_Environment *ev));

/** stub prototypes **/
void Foo_Bar_Baz_haveFun(Foo_Bar_Baz _obj, const CORBA_short a, const CORBA_boolean b, CORBA_Environment *ev);
void Foo_Hello_doHello(Foo_Hello _obj, CORBA_Environment *ev);
#define Foo_MaximumHello_haveFun Foo_Bar_Baz_haveFun
#define Foo_MaximumHello_doHello Foo_Hello_doHello
void Foo_MaximumHello_haveMoreFun(Foo_MaximumHello _obj, CORBA_Environment *ev);
void Foo_MaximumHello_haveFunWithAnArgument(Foo_MaximumHello _obj, const CORBA_long argument, const CORBA_short foo, CORBA_Environment *ev);
#define Foo_InheritanceTest_haveFun Foo_Bar_Baz_haveFun
#define Foo_InheritanceTest_doHello Foo_Hello_doHello
#define Foo_InheritanceTest_haveMoreFun Foo_MaximumHello_haveMoreFun
#define Foo_InheritanceTest_haveFunWithAnArgument Foo_MaximumHello_haveFunWithAnArgument
void Foo_InheritanceTest_theMegaTest(Foo_InheritanceTest _obj, CORBA_Environment *ev);
#include <orbit/orb-core/orbit-interface.h>

#ifdef ORBIT_IDL_C_IMODULE_Foo
static 
#else
extern 
#endif
ORBit_IInterface Foo_Bar_Baz__iinterface;
#define Foo_Bar_Baz_IMETHODS_LEN 1
#ifdef ORBIT_IDL_C_IMODULE_Foo
static 
#else
extern 
#endif
ORBit_IMethod Foo_Bar_Baz__imethods[Foo_Bar_Baz_IMETHODS_LEN];
#ifdef ORBIT_IDL_C_IMODULE_Foo
static 
#else
extern 
#endif
ORBit_IInterface Foo_Hello__iinterface;
#define Foo_Hello_IMETHODS_LEN 1
#ifdef ORBIT_IDL_C_IMODULE_Foo
static 
#else
extern 
#endif
ORBit_IMethod Foo_Hello__imethods[Foo_Hello_IMETHODS_LEN];
#ifdef ORBIT_IDL_C_IMODULE_Foo
static 
#else
extern 
#endif
ORBit_IInterface Foo_MaximumHello__iinterface;
#define Foo_MaximumHello_IMETHODS_LEN 2
#ifdef ORBIT_IDL_C_IMODULE_Foo
static 
#else
extern 
#endif
ORBit_IMethod Foo_MaximumHello__imethods[Foo_MaximumHello_IMETHODS_LEN];
#ifdef ORBIT_IDL_C_IMODULE_Foo
static 
#else
extern 
#endif
ORBit_IInterface Foo_InheritanceTest__iinterface;
#define Foo_InheritanceTest_IMETHODS_LEN 1
#ifdef ORBIT_IDL_C_IMODULE_Foo
static 
#else
extern 
#endif
ORBit_IMethod Foo_InheritanceTest__imethods[Foo_InheritanceTest_IMETHODS_LEN];

/** IMethods index */

#ifndef __Foo_Bar_Baz__imethods_index
#define __Foo_Bar_Baz__imethods_index
typedef enum {
	Foo_Bar_Baz_haveFun__imethods_index
} Foo_Bar_Baz__imethods_index;
#endif /* __Foo_Bar_Baz__imethods_index */

#ifndef __Foo_Hello__imethods_index
#define __Foo_Hello__imethods_index
typedef enum {
	Foo_Hello_doHello__imethods_index
} Foo_Hello__imethods_index;
#endif /* __Foo_Hello__imethods_index */

#ifndef __Foo_MaximumHello__imethods_index
#define __Foo_MaximumHello__imethods_index
typedef enum {
	Foo_MaximumHello_haveMoreFun__imethods_index,
	Foo_MaximumHello_haveFunWithAnArgument__imethods_index
} Foo_MaximumHello__imethods_index;
#endif /* __Foo_MaximumHello__imethods_index */

#ifndef __Foo_InheritanceTest__imethods_index
#define __Foo_InheritanceTest__imethods_index
typedef enum {
	Foo_InheritanceTest_theMegaTest__imethods_index
} Foo_InheritanceTest__imethods_index;
#endif /* __Foo_InheritanceTest__imethods_index */

#ifndef __ORBIT_IMETHODS_INDEX
#define __ORBIT_IMETHODS_INDEX
#define ORBIT_IMETHODS_INDEX(m) (m ## __imethods_index)
#endif /* __ORBIT_IMETHODS_INDEX */

#ifdef __cplusplus
}
#endif /* __cplusplus */

#ifndef EXCLUDE_ORBIT_H
#include <orbit/orbit.h>

#endif /* EXCLUDE_ORBIT_H */
#endif
#undef ORBIT_IDL_SERIAL
