/* This file is automatically generated. Any changes made here will be lost. */

/* This header defines simple perlapi-ish macros for creating SV wrappers
 * and extracting the GPerl value from SV wrappers.  These macros are used
 * by the autogenerated typemaps, and are defined here so that you can use
 * the same logic anywhere in your code (e.g., if you handle the argument
 * stack by hand instead of using the typemap). */

#ifdef EGG_TYPE_TRAY_ICON
  /* GObject derivative EggTrayIcon */
# define SvEggTrayIcon(sv)	((EggTrayIcon*)gperl_get_object_check (sv, EGG_TYPE_TRAY_ICON))
# define newSVEggTrayIcon(val)	(gperl_new_object (G_OBJECT (val), FALSE))
  typedef EggTrayIcon EggTrayIcon_ornull;
# define SvEggTrayIcon_ornull(sv)	(gperl_sv_is_defined (sv) ? SvEggTrayIcon(sv) : NULL)
# define newSVEggTrayIcon_ornull(val)	(((val) == NULL) ? &PL_sv_undef : gperl_new_object (G_OBJECT (val), FALSE))
typedef EggTrayIcon EggTrayIcon_noinc;
#define newSVEggTrayIcon_noinc(val)	(gperl_new_object (G_OBJECT (val), TRUE))
typedef EggTrayIcon EggTrayIcon_noinc_ornull;
#define newSVEggTrayIcon_noinc_ornull(val)	((val) ? newSVEggTrayIcon_noinc(val) : &PL_sv_undef)
#endif /* EGG_TYPE_TRAY_ICON */
