
	/* Do not edit this file, it was generated by ../tools/genext.pl */

#ifndef _PERLGTK_EXT_
#define _PERLGTK_EXT_
#define PERLGTKEXT

#ifdef GLOBAL_SYMBOLS
#include "PerlGtkInt.h"
#else

#ifdef PERLGTKEXT_Define

#define PerlGtkDeclareFunc(return, name) return (*name)
#define PerlGtkDeclareVar(type, name) type * _p_ ## name

#else

#define PerlGtkDeclareFunc(return, name) extern return (*name)
#define PerlGtkDeclareVar(type, name) extern type * _p_ ## name

#endif

HV * PerlGtkExtFixupHash;

#define PerlGtkExtFixupName(name)						\
	_lookup = hv_fetch(	PerlGtkExtFixupHash,			\
				STRINGIFY(name),							\
				strlen(STRINGIFY(name)), 0);				\
	if (_lookup && SvOK(*_lookup) && SvIOK(*_lookup))		\
		name = (void*)SvIV(*_lookup);

#define PerlGtkExtFixup()								\
	{														\
		SV ** _lookup;										\
		if (!PerlGtkExtFixupHash) {					\
			PerlGtkExtFixupHash = perl_get_hv("Gtk::_ExtFixup", TRUE);	\
			/*												\
			dSP ;											\
			int count ;										\
															\
			ENTER ;											\
			SAVETMPS;										\
															\
			PUSHMARK(sp) ;									\
															\
			count = perl_call_pv("Gtk::_ExtFixup", G_SCALAR);\
															\
			SPAGAIN ;										\
															\
			if (count != 1)									\
				croak("Big trouble
") ;					\
															\
			PerlGtkExtFixupHash = POPi ;				\
															\
			PUTBACK ;										\
			FREETMPS ;										\
			LEAVE ;											\
			*/												\
		}													\
															\
		PerlGtkExtFixupName(newSVGdkGCValues);			\
		PerlGtkExtFixupName(SvGdkGCValues);			\
		PerlGtkExtFixupName(newSVGdkDeviceInfo);			\
		PerlGtkExtFixupName(newSVGdkTimeCoord);			\
		PerlGtkExtFixupName(newSVGdkRectangle);			\
		PerlGtkExtFixupName(SvGdkRectangle);			\
		PerlGtkExtFixupName(newSVGdkAtom);			\
		PerlGtkExtFixupName(SvGdkAtom);			\
		PerlGtkExtFixupName(newSVGdkRegion);			\
		PerlGtkExtFixupName(SvGdkRegion);			\
		PerlGtkExtFixupName(SvGdkWindowAttr);			\
		PerlGtkExtFixupName(newSVGdkWindow);			\
		PerlGtkExtFixupName(SvGdkWindow);			\
		PerlGtkExtFixupName(SvGdkGeometry);			\
		PerlGtkExtFixupName(SvGdkDragContextRef);			\
		PerlGtkExtFixupName(newSVGdkDragContextRef);			\
		PerlGtkExtFixupName(_p_PerlGtkTypeHelpers);			\
		PerlGtkExtFixupName(AddTypeHelper);			\
		PerlGtkExtFixupName(_p_PerlGtkSignalHelpers);			\
		PerlGtkExtFixupName(AddSignalHelper);			\
		PerlGtkExtFixupName(AddSignalHelperParts);			\
		PerlGtkExtFixupName(GtkGetArg);			\
		PerlGtkExtFixupName(GtkSetArg);			\
		PerlGtkExtFixupName(GtkSetRetArg);			\
		PerlGtkExtFixupName(GtkGetRetArg);			\
		PerlGtkExtFixupName(_p_pgtk_did_we_init_gdk);			\
		PerlGtkExtFixupName(_p_pgtk_did_we_init_gtk);			\
		PerlGtkExtFixupName(GtkInit_internal);			\
		PerlGtkExtFixupName(newSVGtkObjectRef);			\
		PerlGtkExtFixupName(SvGtkObjectRef);			\
		PerlGtkExtFixupName(newSVGtkMenuEntry);			\
		PerlGtkExtFixupName(SvGtkMenuEntry);			\
		PerlGtkExtFixupName(newSVGtkSelectionDataRef);			\
		PerlGtkExtFixupName(SvGtkSelectionDataRef);			\
		PerlGtkExtFixupName(GCGtkObjects);			\
		PerlGtkExtFixupName(FreeHVObject);			\
		PerlGtkExtFixupName(pgtk_link_types);			\
		PerlGtkExtFixupName(gtnumber_for_ptname);			\
		PerlGtkExtFixupName(gtnumber_for_gtname);			\
		PerlGtkExtFixupName(ptname_for_gtnumber);			\
		PerlGtkExtFixupName(gtname_for_ptname);			\
		PerlGtkExtFixupName(ptname_for_gtname);			\
		PerlGtkExtFixupName(pgtk_class_size_for_gtname);			\
		PerlGtkExtFixupName(pgtk_obj_size_for_gtname);			\
		PerlGtkExtFixupName(FindArgumentTypeWithObject);			\
		PerlGtkExtFixupName(FindArgumentTypeWithClass);			\
		PerlGtkExtFixupName(newSVGtkTargetEntry);			\
		PerlGtkExtFixupName(SvGtkTargetEntry);			\
		PerlGtkExtFixupName(UnregisterMisc);			\
		PerlGtkExtFixupName(RegisterMisc);			\
		PerlGtkExtFixupName(RetrieveMisc);			\
		PerlGtkExtFixupName(newSVMiscRef);			\
		PerlGtkExtFixupName(SvMiscRef);			\
		PerlGtkExtFixupName(CroakOpts);			\
		PerlGtkExtFixupName(SvOpt);			\
		PerlGtkExtFixupName(newSVOpt);			\
		PerlGtkExtFixupName(SvOptFlags);			\
		PerlGtkExtFixupName(newSVOptFlags);			\
		PerlGtkExtFixupName(SvOptsHash);			\
		PerlGtkExtFixupName(newSVOptsHash);			\
		PerlGtkExtFixupName(SvFlagsHash);			\
		PerlGtkExtFixupName(newSVFlagsHash);			\
		PerlGtkExtFixupName(newSVDefEnumHash);			\
		PerlGtkExtFixupName(newSVDefFlagsHash);			\
		PerlGtkExtFixupName(SvEFValueLookup);			\
		PerlGtkExtFixupName(SvDefEnumHash);			\
		PerlGtkExtFixupName(SvDefFlagsHash);			\
		PerlGtkExtFixupName(_p_pgtk_use_minus);			\
		PerlGtkExtFixupName(_p_pgtk_use_array);			\
		PerlGtkExtFixupName(pgtk_alloc_temp);			\
	}

#define PerlGtkTypeHelpers (*(_p_PerlGtkTypeHelpers))
#define PerlGtkSignalHelpers (*(_p_PerlGtkSignalHelpers))
#define pgtk_did_we_init_gdk (*(_p_pgtk_did_we_init_gdk))
#define pgtk_did_we_init_gtk (*(_p_pgtk_did_we_init_gtk))
#define pgtk_use_minus (*(_p_pgtk_use_minus))
#define pgtk_use_array (*(_p_pgtk_use_array))


#endif /* !GLOBAL_SYMBOLS */

#endif /* _PERLGTK_EXT_ */

