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

#ifndef MateComponent_Sample_Echo_H
#define MateComponent_Sample_Echo_H 1
#include <glib.h>
#define MATECORBA_IDL_SERIAL 20
#include <matecorba/matecorba-types.h>

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


/** typedefs **/
#include <matecomponent/MateComponent.h>
#if !defined(MATECORBA_DECL_MateComponent_Sample_Echo) && !defined(_MateComponent_Sample_Echo_defined)
#define MATECORBA_DECL_MateComponent_Sample_Echo 1
#define _MateComponent_Sample_Echo_defined 1
#define MateComponent_Sample_Echo__freekids CORBA_Object__freekids
typedef CORBA_Object MateComponent_Sample_Echo;
extern CORBA_unsigned_long MateComponent_Sample_Echo__classid;
#if !defined(TC_IMPL_TC_MateComponent_Sample_Echo_0)
#define TC_IMPL_TC_MateComponent_Sample_Echo_0 'M'
#define TC_IMPL_TC_MateComponent_Sample_Echo_1 'a'
#define TC_IMPL_TC_MateComponent_Sample_Echo_2 't'
#define TC_IMPL_TC_MateComponent_Sample_Echo_3 'e'
#define TC_IMPL_TC_MateComponent_Sample_Echo_4 'C'
#define TC_IMPL_TC_MateComponent_Sample_Echo_5 'o'
#define TC_IMPL_TC_MateComponent_Sample_Echo_6 'm'
#define TC_IMPL_TC_MateComponent_Sample_Echo_7 'p'
#define TC_IMPL_TC_MateComponent_Sample_Echo_8 'o'
#define TC_IMPL_TC_MateComponent_Sample_Echo_9 'n'
#define TC_IMPL_TC_MateComponent_Sample_Echo_10 'e'
#define TC_IMPL_TC_MateComponent_Sample_Echo_11 'n'
#define TC_IMPL_TC_MateComponent_Sample_Echo_12 't'
#define TC_IMPL_TC_MateComponent_Sample_Echo_13 '_'
#define TC_IMPL_TC_MateComponent_Sample_Echo_14 'S'
#define TC_IMPL_TC_MateComponent_Sample_Echo_15 'a'
#define TC_IMPL_TC_MateComponent_Sample_Echo_16 'm'
#define TC_IMPL_TC_MateComponent_Sample_Echo_17 'p'
#define TC_IMPL_TC_MateComponent_Sample_Echo_18 'l'
#define TC_IMPL_TC_MateComponent_Sample_Echo_19 'e'
#define TC_IMPL_TC_MateComponent_Sample_Echo_20 '_'
#define TC_IMPL_TC_MateComponent_Sample_Echo_21 'E'
#define TC_IMPL_TC_MateComponent_Sample_Echo_22 'c'
#define TC_IMPL_TC_MateComponent_Sample_Echo_23 'h'
#define TC_IMPL_TC_MateComponent_Sample_Echo_24 'o'
#ifdef MATECORBA_IDL_C_IMODULE_MateComponent_Sample_Echo
static
#else
extern
#endif
MATECORBA2_MAYBE_CONST struct CORBA_TypeCode_struct TC_MateComponent_Sample_Echo_struct;
#define TC_MateComponent_Sample_Echo ((CORBA_TypeCode)&TC_MateComponent_Sample_Echo_struct)
#endif
#endif

/** POA structures **/
#ifndef _defined_POA_MateComponent_Sample_Echo
#define _defined_POA_MateComponent_Sample_Echo 1
typedef struct {
  void *_private;
void (*echo)(PortableServer_Servant _servant, const CORBA_char * message, CORBA_Environment *ev);
} POA_MateComponent_Sample_Echo__epv;
typedef struct {
  PortableServer_ServantBase__epv *_base_epv;
  POA_MateComponent_Unknown__epv *MateComponent_Unknown_epv;
  POA_MateComponent_Sample_Echo__epv *MateComponent_Sample_Echo_epv;
} POA_MateComponent_Sample_Echo__vepv;
typedef struct {
  void *_private;
  POA_MateComponent_Sample_Echo__vepv *vepv;
} POA_MateComponent_Sample_Echo;
extern void POA_MateComponent_Sample_Echo__init(PortableServer_Servant servant, CORBA_Environment *ev);
extern void POA_MateComponent_Sample_Echo__fini(PortableServer_Servant servant, CORBA_Environment *ev);
#endif /* _defined_POA_MateComponent_Sample_Echo */

/** skel prototypes **/
void _MATECORBA_skel_small_MateComponent_Sample_Echo_echo(POA_MateComponent_Sample_Echo *_MATECORBA_servant, gpointer _MATECORBA_retval, gpointer *_MATECORBA_args, CORBA_Context ctx,CORBA_Environment *ev, void (*_impl_echo)(PortableServer_Servant _servant, const CORBA_char * message, CORBA_Environment *ev));

/** stub prototypes **/
#define MateComponent_Sample_Echo_ref MateComponent_Unknown_ref
#define MateComponent_Sample_Echo_unref MateComponent_Unknown_unref
#define MateComponent_Sample_Echo_queryInterface MateComponent_Unknown_queryInterface
void MateComponent_Sample_Echo_echo(MateComponent_Sample_Echo _obj, const CORBA_char * message, CORBA_Environment *ev);
#include <matecorba/orb-core/matecorba-interface.h>

#ifdef MATECORBA_IDL_C_IMODULE_MateComponent_Sample_Echo
static 
#else
extern 
#endif
MateCORBA_IInterface MateComponent_Sample_Echo__iinterface;
#define MateComponent_Sample_Echo_IMETHODS_LEN 1
#ifdef MATECORBA_IDL_C_IMODULE_MateComponent_Sample_Echo
static 
#else
extern 
#endif
MateCORBA_IMethod MateComponent_Sample_Echo__imethods[MateComponent_Sample_Echo_IMETHODS_LEN];

/** IMethods index */

#ifndef __MateComponent_Sample_Echo__imethods_index
#define __MateComponent_Sample_Echo__imethods_index
typedef enum {
	MateComponent_Sample_Echo_echo__imethods_index
} MateComponent_Sample_Echo__imethods_index;
#endif /* __MateComponent_Sample_Echo__imethods_index */

#ifndef __MATECORBA_IMETHODS_INDEX
#define __MATECORBA_IMETHODS_INDEX
#define MATECORBA_IMETHODS_INDEX(m) (m ## __imethods_index)
#endif /* __MATECORBA_IMETHODS_INDEX */

#ifdef __cplusplus
}
#endif /* __cplusplus */

#ifndef EXCLUDE_MATECORBA_H
#include <matecorba/matecorba.h>

#endif /* EXCLUDE_MATECORBA_H */
#endif
#undef MATECORBA_IDL_SERIAL
