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

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

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

/** typedefs **/
#if !defined(ORBIT_DECL_GNOME_Table) && !defined(_GNOME_Table_defined)
#define ORBIT_DECL_GNOME_Table 1
#define _GNOME_Table_defined 1
#define GNOME_Table__free CORBA_Object__free
   typedef CORBA_Object GNOME_Table;
   extern CORBA_unsigned_long GNOME_Table__classid;
#if !defined(TC_IMPL_TC_GNOME_Table_0)
#define TC_IMPL_TC_GNOME_Table_0 'T'
#define TC_IMPL_TC_GNOME_Table_1 'a'
#define TC_IMPL_TC_GNOME_Table_2 'b'
#define TC_IMPL_TC_GNOME_Table_3 'l'
#define TC_IMPL_TC_GNOME_Table_4 'e'
   extern const struct CORBA_TypeCode_struct TC_GNOME_Table_struct;
#define TC_GNOME_Table ((CORBA_TypeCode)&TC_GNOME_Table_struct)
#endif
#endif
#ifndef GNOME_Table_VALUE_STRING
#define GNOME_Table_VALUE_STRING 0
#endif				/* !GNOME_Table_VALUE_STRING */

#ifndef GNOME_Table_VALUE_FLOAT
#define GNOME_Table_VALUE_FLOAT 2
#endif				/* !GNOME_Table_VALUE_FLOAT */

#if !defined(_GNOME_Table_Value_defined)
#define _GNOME_Table_Value_defined 1
   typedef struct
   {
      CORBA_short _d;
      union
      {
	 CORBA_double v_float;
	 CORBA_char *str;
      }
      _u;
   }
   GNOME_Table_Value;
#if !defined(TC_IMPL_TC_GNOME_Table_Value_0)
#define TC_IMPL_TC_GNOME_Table_Value_0 'T'
#define TC_IMPL_TC_GNOME_Table_Value_1 'a'
#define TC_IMPL_TC_GNOME_Table_Value_2 'b'
#define TC_IMPL_TC_GNOME_Table_Value_3 'l'
#define TC_IMPL_TC_GNOME_Table_Value_4 'e'
   extern const struct CORBA_TypeCode_struct TC_GNOME_Table_Value_struct;
#define TC_GNOME_Table_Value ((CORBA_TypeCode)&TC_GNOME_Table_Value_struct)
#endif
   extern GNOME_Table_Value *GNOME_Table_Value__alloc(void);
   extern gpointer GNOME_Table_Value__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);	/* ORBit internal use */
#endif
#define ex_GNOME_Table_OutOfRange "IDL:GNOME/Table/OutOfRange:1.0"
   void _ORBIT_GNOME_Table_OutOfRange_demarshal(GIOPRecvBuffer *
						_ORBIT_recv_buffer,
						CORBA_Environment * ev);
   void _ORBIT_GNOME_Table_OutOfRange_marshal(GIOPSendBuffer *
					      _ORBIT_send_buffer,
					      CORBA_Environment * ev);
#if !defined(_GNOME_Table_OutOfRange_defined)
#define _GNOME_Table_OutOfRange_defined 1
   typedef struct
   {
      int dummy;
   }
   GNOME_Table_OutOfRange;

#if !defined(TC_IMPL_TC_GNOME_Table_OutOfRange_0)
#define TC_IMPL_TC_GNOME_Table_OutOfRange_0 'T'
#define TC_IMPL_TC_GNOME_Table_OutOfRange_1 'a'
#define TC_IMPL_TC_GNOME_Table_OutOfRange_2 'b'
#define TC_IMPL_TC_GNOME_Table_OutOfRange_3 'l'
#define TC_IMPL_TC_GNOME_Table_OutOfRange_4 'e'
   extern const struct CORBA_TypeCode_struct TC_GNOME_Table_OutOfRange_struct;
#define TC_GNOME_Table_OutOfRange ((CORBA_TypeCode)&TC_GNOME_Table_OutOfRange_struct)
#endif
#define GNOME_Table_OutOfRange__alloc() NULL
   extern gpointer GNOME_Table_OutOfRange__free(gpointer mem, gpointer dat, CORBA_boolean free_strings);	/* ORBit internal use */
#endif

/** POA structures **/
   typedef struct
   {
      void *_private;
      GNOME_Table_Value *(*get) (PortableServer_Servant _servant,
				 const CORBA_long col, const CORBA_long row,
				 CORBA_Environment * ev);
       CORBA_long(*set) (PortableServer_Servant _servant,
			 const CORBA_long col, const CORBA_long row,
			 const GNOME_Table_Value * val,
			 CORBA_Environment * ev);
   }
   POA_GNOME_Table__epv;
   typedef struct
   {
      PortableServer_ServantBase__epv *_base_epv;
      POA_GNOME_Table__epv *GNOME_Table_epv;
   }
   POA_GNOME_Table__vepv;
   typedef struct
   {
      void *_private;
      POA_GNOME_Table__vepv *vepv;
   }
   POA_GNOME_Table;
   extern void POA_GNOME_Table__init(PortableServer_Servant servant,
				     CORBA_Environment * ev);
   extern void POA_GNOME_Table__fini(PortableServer_Servant servant,
				     CORBA_Environment * ev);

/** prototypes **/
   GNOME_Table_Value *GNOME_Table_get(GNOME_Table _obj, const CORBA_long col,
				      const CORBA_long row,
				      CORBA_Environment * ev);
   CORBA_long GNOME_Table_set(GNOME_Table _obj, const CORBA_long col,
			      const CORBA_long row,
			      const GNOME_Table_Value * val,
			      CORBA_Environment * ev);

   void _ORBIT_skel_GNOME_Table_get(POA_GNOME_Table * _ORBIT_servant,
				    GIOPRecvBuffer * _ORBIT_recv_buffer,
				    CORBA_Environment * ev,
				    GNOME_Table_Value *
				    (*_impl_get) (PortableServer_Servant
						  _servant,
						  const CORBA_long col,
						  const CORBA_long row,
						  CORBA_Environment * ev));
   void _ORBIT_skel_GNOME_Table_set(POA_GNOME_Table * _ORBIT_servant,
				    GIOPRecvBuffer * _ORBIT_recv_buffer,
				    CORBA_Environment * ev,
				    CORBA_long(*_impl_set)
				    (PortableServer_Servant _servant,
				     const CORBA_long col,
				     const CORBA_long row,
				     const GNOME_Table_Value * val,
				     CORBA_Environment * ev));
#ifdef __cplusplus
}
#endif				/* __cplusplus */

#endif
#undef ORBIT_IDL_SERIAL
