/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version 1.3.22
 * 
 * This file is not intended to be easily readable and contains a number of 
 * coding conventions designed to improve portability and efficiency. Do not make
 * changes to this file unless you know what you are doing--modify the SWIG 
 * interface file instead. 
 * ----------------------------------------------------------------------------- */

#define SWIG_NOINCLUDE

#ifdef __cplusplus
template<class T> class SwigValueWrapper {
    T *tt;
public:
    SwigValueWrapper() : tt(0) { }
    SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
    SwigValueWrapper(const T& t) : tt(new T(t)) { }
    ~SwigValueWrapper() { delete tt; } 
    SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
    operator T&() const { return *tt; }
    T *operator&() { return tt; }
private:
    SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
};                                                    
#endif

/* ruby.swg */
/* Implementation : RUBY */
#define SWIGRUBY 1

#include "ruby.h"

/* Flags for pointer conversion */
#define SWIG_POINTER_EXCEPTION     0x1
#define SWIG_POINTER_DISOWN        0x2

#define NUM2USHRT(n) (\
    (0 <= NUM2UINT(n) && NUM2UINT(n) <= USHRT_MAX)\
    ? (unsigned short) NUM2UINT(n) \
    : (rb_raise(rb_eArgError, "integer %d out of range of `unsigned short'",\
               NUM2UINT(n)), (short)0)\
)

#define NUM2SHRT(n) (\
    (SHRT_MIN <= NUM2INT(n) && NUM2INT(n) <= SHRT_MAX)\
    ? (short)NUM2INT(n)\
    : (rb_raise(rb_eArgError, "integer %d out of range of `short'",\
               NUM2INT(n)), (short)0)\
)

/* Ruby 1.7 defines NUM2LL(), LL2NUM() and ULL2NUM() macros */
#ifndef NUM2LL
#define NUM2LL(x) NUM2LONG((x))
#endif
#ifndef LL2NUM
#define LL2NUM(x) INT2NUM((long) (x))
#endif
#ifndef ULL2NUM
#define ULL2NUM(x) UINT2NUM((unsigned long) (x))
#endif

/* Ruby 1.7 doesn't (yet) define NUM2ULL() */
#ifndef NUM2ULL
#ifdef HAVE_LONG_LONG
#define NUM2ULL(x) rb_num2ull((x))
#else
#define NUM2ULL(x) NUM2ULONG(x)
#endif
#endif

/*
 * Need to be very careful about how these macros are defined, especially
 * when compiling C++ code or C code with an ANSI C compiler.
 *
 * VALUEFUNC(f) is a macro used to typecast a C function that implements
 * a Ruby method so that it can be passed as an argument to API functions
 * like rb_define_method() and rb_define_singleton_method().
 *
 * VOIDFUNC(f) is a macro used to typecast a C function that implements
 * either the "mark" or "free" stuff for a Ruby Data object, so that it
 * can be passed as an argument to API functions like Data_Wrap_Struct()
 * and Data_Make_Struct().
 */
 
#ifdef __cplusplus
#  ifndef RUBY_METHOD_FUNC /* These definitions should work for Ruby 1.4.6 */
#    define VALUEFUNC(f) ((VALUE (*)()) f)
#    define VOIDFUNC(f)  ((void (*)()) f)
#  else
#    ifndef ANYARGS /* These definitions should work for Ruby 1.6 */
#      define VALUEFUNC(f) ((VALUE (*)()) f)
#      define VOIDFUNC(f)  ((RUBY_DATA_FUNC) f)
#    else /* These definitions should work for Ruby 1.7 */
#      define VALUEFUNC(f) ((VALUE (*)(ANYARGS)) f)
#      define VOIDFUNC(f)  ((RUBY_DATA_FUNC) f)
#    endif
#  endif
#else
#  define VALUEFUNC(f) (f)
#  define VOIDFUNC(f) (f)
#endif

typedef struct {
  VALUE klass;
  VALUE mImpl;
  void  (*mark)(void *);
  void  (*destroy)(void *);
} swig_class;

/* Don't use for expressions have side effect */
#ifndef RB_STRING_VALUE
#define RB_STRING_VALUE(s) (TYPE(s) == T_STRING ? (s) : (*(volatile VALUE *)&(s) = rb_str_to_str(s)))
#endif
#ifndef StringValue
#define StringValue(s) RB_STRING_VALUE(s)
#endif
#ifndef StringValuePtr
#define StringValuePtr(s) RSTRING(RB_STRING_VALUE(s))->ptr
#endif
#ifndef StringValueLen
#define StringValueLen(s) RSTRING(RB_STRING_VALUE(s))->len
#endif
#ifndef SafeStringValue
#define SafeStringValue(v) do {\
    StringValue(v);\
    rb_check_safe_str(v);\
} while (0)
#endif

#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
#define rb_define_alloc_func(klass, func) rb_define_singleton_method((klass), "new", VALUEFUNC((func)), -1)
#define rb_undef_alloc_func(klass) rb_undef_method(CLASS_OF((klass)), "new")
#endif

/* Contract support */

#define SWIG_contract_assert(expr, msg) if (!(expr)) { rb_raise(rb_eRuntimeError, (char *) msg ); } else


/*************************************************************** -*- c -*-
 * ruby/precommon.swg
 *
 * Rename all exported symbols from common.swg, to avoid symbol
 * clashes if multiple interpreters are included
 *
 ************************************************************************/

#define SWIG_TypeRegister    SWIG_Ruby_TypeRegister
#define SWIG_TypeCheck       SWIG_Ruby_TypeCheck
#define SWIG_TypeCast        SWIG_Ruby_TypeCast
#define SWIG_TypeDynamicCast SWIG_Ruby_TypeDynamicCast
#define SWIG_TypeName        SWIG_Ruby_TypeName
#define SWIG_TypeQuery       SWIG_Ruby_TypeQuery
#define SWIG_TypeClientData  SWIG_Ruby_TypeClientData
#define SWIG_PackData        SWIG_Ruby_PackData 
#define SWIG_UnpackData      SWIG_Ruby_UnpackData 

/* Also rename all exported symbols from rubydef.swig */

/* Common SWIG API */
#define SWIG_ConvertPtr(obj, pp, type, flags) \
  SWIG_Ruby_ConvertPtr(obj, pp, type, flags)
#define SWIG_NewPointerObj(p, type, flags) \
  SWIG_Ruby_NewPointerObj(p, type, flags)
#define SWIG_MustGetPtr(p, type, argnum, flags) \
  SWIG_Ruby_MustGetPtr(p, type, argnum, flags)

/* Ruby-specific SWIG API */

#define SWIG_InitRuntime() \
  SWIG_Ruby_InitRuntime()
#define SWIG_define_class(ty) \
  SWIG_Ruby_define_class(ty)
#define SWIG_NewClassInstance(value, ty) \
  SWIG_Ruby_NewClassInstance(value, ty)
#define SWIG_MangleStr(value) \
  SWIG_Ruby_MangleStr(value)
#define SWIG_CheckConvert(value, ty) \
  SWIG_Ruby_CheckConvert(value, ty)
#define SWIG_NewPackedObj(ptr, sz, ty) \
  SWIG_Ruby_NewPackedObj(ptr, sz, ty)
#define SWIG_ConvertPacked(obj, ptr, sz, ty, flags) \
  SWIG_Ruby_ConvertPacked(obj, ptr, sz, ty, flags)


/***********************************************************************
 * common.swg
 *
 *     This file contains generic SWIG runtime support for pointer
 *     type checking as well as a few commonly used macros to control
 *     external linkage.
 *
 * Author : David Beazley (beazley@cs.uchicago.edu)
 *
 * Copyright (c) 1999-2000, The University of Chicago
 * 
 * This file may be freely redistributed without license or fee provided
 * this copyright message remains intact.
 ************************************************************************/

#include <string.h>

#if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
#  if defined(_MSC_VER) || defined(__GNUC__)
#    if defined(STATIC_LINKED)
#      define SWIGEXPORT(a) a
#      define SWIGIMPORT(a) extern a
#    else
#      define SWIGEXPORT(a) __declspec(dllexport) a
#      define SWIGIMPORT(a) extern a
#    endif
#  else
#    if defined(__BORLANDC__)
#      define SWIGEXPORT(a) a _export
#      define SWIGIMPORT(a) a _export
#    else
#      define SWIGEXPORT(a) a
#      define SWIGIMPORT(a) a
#    endif
#  endif
#else
#  define SWIGEXPORT(a) a
#  define SWIGIMPORT(a) a
#endif

#ifdef SWIG_GLOBAL
#  define SWIGRUNTIME(a) SWIGEXPORT(a)
#else
#  define SWIGRUNTIME(a) static a
#endif

#ifdef __cplusplus
extern "C" {
#endif

typedef void *(*swig_converter_func)(void *);
typedef struct swig_type_info *(*swig_dycast_func)(void **);

typedef struct swig_type_info {
  const char             *name;
  swig_converter_func     converter;
  const char             *str;
  void                   *clientdata;
  swig_dycast_func        dcast;
  struct swig_type_info  *next;
  struct swig_type_info  *prev;
} swig_type_info;

#ifdef SWIG_NOINCLUDE

SWIGIMPORT(swig_type_info *) SWIG_TypeRegister(swig_type_info *);
SWIGIMPORT(swig_type_info *) SWIG_TypeCheck(char *c, swig_type_info *);
SWIGIMPORT(void *)           SWIG_TypeCast(swig_type_info *, void *);
SWIGIMPORT(swig_type_info *) SWIG_TypeDynamicCast(swig_type_info *, void **);
SWIGIMPORT(const char *)     SWIG_TypeName(const swig_type_info *);
SWIGIMPORT(swig_type_info *) SWIG_TypeQuery(const char *);
SWIGIMPORT(void)             SWIG_TypeClientData(swig_type_info *, void *);
SWIGIMPORT(char *)           SWIG_PackData(char *, void *, int);
SWIGIMPORT(char *)           SWIG_UnpackData(char *, void *, int);

#else

static swig_type_info *swig_type_list = 0;

/* Register a type mapping with the type-checking */
SWIGRUNTIME(swig_type_info *)
SWIG_TypeRegister(swig_type_info *ti) {
  swig_type_info *tc, *head, *ret, *next;
  /* Check to see if this type has already been registered */
  tc = swig_type_list;
  while (tc) {
    if (strcmp(tc->name, ti->name) == 0) {
      /* Already exists in the table.  Just add additional types to the list */
      if (tc->clientdata) ti->clientdata = tc->clientdata;
      head = tc;
      next = tc->next;
      goto l1;
    }
    tc = tc->prev;
  }
  head = ti;
  next = 0;

  /* Place in list */
  ti->prev = swig_type_list;
  swig_type_list = ti;

  /* Build linked lists */
  l1:
  ret = head;
  tc = ti + 1;
  /* Patch up the rest of the links */
  while (tc->name) {
    head->next = tc;
    tc->prev = head;
    head = tc;
    tc++;
  }
  if (next) next->prev = head;
  head->next = next;
  return ret;
}

/* Check the typename */
SWIGRUNTIME(swig_type_info *) 
SWIG_TypeCheck(char *c, swig_type_info *ty) {
  swig_type_info *s;
  if (!ty) return 0;        /* Void pointer */
  s = ty->next;             /* First element always just a name */
  do {
    if (strcmp(s->name,c) == 0) {
      if (s == ty->next) return s;
      /* Move s to the top of the linked list */
      s->prev->next = s->next;
      if (s->next) {
        s->next->prev = s->prev;
      }
      /* Insert s as second element in the list */
      s->next = ty->next;
      if (ty->next) ty->next->prev = s;
      ty->next = s;
      s->prev = ty;
      return s;
    }
    s = s->next;
  } while (s && (s != ty->next));
  return 0;
}

/* Cast a pointer up an inheritance hierarchy */
SWIGRUNTIME(void *) 
SWIG_TypeCast(swig_type_info *ty, void *ptr) {
  if ((!ty) || (!ty->converter)) return ptr;
  return (*ty->converter)(ptr);
}

/* Dynamic pointer casting. Down an inheritance hierarchy */
SWIGRUNTIME(swig_type_info *) 
SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) {
  swig_type_info *lastty = ty;
  if (!ty || !ty->dcast) return ty;
  while (ty && (ty->dcast)) {
    ty = (*ty->dcast)(ptr);
    if (ty) lastty = ty;
  }
  return lastty;
}

/* Return the name associated with this type */
SWIGRUNTIME(const char *)
SWIG_TypeName(const swig_type_info *ty) {
  return ty->name;
}

/* Search for a swig_type_info structure */
SWIGRUNTIME(swig_type_info *)
SWIG_TypeQuery(const char *name) {
  swig_type_info *ty = swig_type_list;
  while (ty) {
    if (ty->str && (strcmp(name,ty->str) == 0)) return ty;
    if (ty->name && (strcmp(name,ty->name) == 0)) return ty;
    ty = ty->prev;
  }
  return 0;
}

/* Set the clientdata field for a type */
SWIGRUNTIME(void)
SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
  swig_type_info *tc, *equiv;
  if (ti->clientdata == clientdata) return;
  ti->clientdata = clientdata;
  equiv = ti->next;
  while (equiv) {
    if (!equiv->converter) {
      tc = swig_type_list;
      while (tc) {
        if ((strcmp(tc->name, equiv->name) == 0))
          SWIG_TypeClientData(tc,clientdata);
        tc = tc->prev;
      }
    }
    equiv = equiv->next;
  }
}

/* Pack binary data into a string */
SWIGRUNTIME(char *)
SWIG_PackData(char *c, void *ptr, int sz) {
  static char hex[17] = "0123456789abcdef";
  int i;
  unsigned char *u = (unsigned char *) ptr;
  register unsigned char uu;
  for (i = 0; i < sz; i++,u++) {
    uu = *u;
    *(c++) = hex[(uu & 0xf0) >> 4];
    *(c++) = hex[uu & 0xf];
  }
  return c;
}

/* Unpack binary data from a string */
SWIGRUNTIME(char *)
SWIG_UnpackData(char *c, void *ptr, int sz) {
  register unsigned char uu = 0;
  register int d;
  unsigned char *u = (unsigned char *) ptr;
  int i;
  for (i = 0; i < sz; i++, u++) {
    d = *(c++);
    if ((d >= '0') && (d <= '9'))
      uu = ((d - '0') << 4);
    else if ((d >= 'a') && (d <= 'f'))
      uu = ((d - ('a'-10)) << 4);
    d = *(c++);
    if ((d >= '0') && (d <= '9'))
      uu |= (d - '0');
    else if ((d >= 'a') && (d <= 'f'))
      uu |= (d - ('a'-10));
    *u = uu;
  }
  return c;
}

#endif

#ifdef __cplusplus
}
#endif

/* rubydec.swg -*- c -*- */
#ifdef __cplusplus
extern "C" {
#endif

SWIGIMPORT(void)   SWIG_Ruby_InitRuntime(void);
SWIGIMPORT(void)   SWIG_Ruby_define_class(swig_type_info *);
SWIGIMPORT(VALUE)  SWIG_Ruby_NewPointerObj(void *, swig_type_info *, int);
SWIGIMPORT(VALUE)  SWIG_Ruby_NewClassInstance(VALUE, swig_type_info *);
SWIGIMPORT(char *) SWIG_Ruby_MangleStr(VALUE);
SWIGIMPORT(int)    SWIG_Ruby_ConvertPtr(VALUE, void**, swig_type_info *, int);
SWIGIMPORT(void *) SWIG_Ruby_MustGetPtr(VALUE, swig_type_info *, int, int);
SWIGIMPORT(int)    SWIG_Ruby_CheckConvert(VALUE, swig_type_info *);
SWIGIMPORT(VALUE)  SWIG_Ruby_NewPackedObj(void *ptr, int sz, swig_type_info *type);
SWIGIMPORT(void)   SWIG_Ruby_ConvertPacked(VALUE obj, void *ptr, int sz, swig_type_info *ty, int flags);

#ifdef __cplusplus
}
#endif


/* -------- TYPES TABLE (BEGIN) -------- */

#define  SWIGTYPE_p_FXObject swig_types[0] 
#define  SWIGTYPE_p_FXRGBImage swig_types[1] 
#define  SWIGTYPE_p_FXuchar swig_types[2] 
#define  SWIGTYPE_p_FXBitmap swig_types[3] 
#define  SWIGTYPE_p_FXId swig_types[4] 
#define  SWIGTYPE_p_p_FXchar swig_types[5] 
#define  SWIGTYPE_p_FXStream swig_types[6] 
#define  SWIGTYPE_p_FXDrawable swig_types[7] 
#define  SWIGTYPE_p_FXGIFImage swig_types[8] 
#define  SWIGTYPE_p_FXTIFImage swig_types[9] 
#define  SWIGTYPE_p_FXICOImage swig_types[10] 
#define  SWIGTYPE_p_FXXPMImage swig_types[11] 
#define  SWIGTYPE_p_FXPCXImage swig_types[12] 
#define  SWIGTYPE_p_FXBMPImage swig_types[13] 
#define  SWIGTYPE_p_FXApp swig_types[14] 
#define  SWIGTYPE_p_FXPNGImage swig_types[15] 
#define  SWIGTYPE_p_FXJPGImage swig_types[16] 
#define  SWIGTYPE_p_FXImage swig_types[17] 
#define  SWIGTYPE_p_FXMemoryBuffer swig_types[18] 
#define  SWIGTYPE_p_FXTGAImage swig_types[19] 
static swig_type_info *swig_types[21];

/* -------- TYPES TABLE (END) -------- */

#define SWIG_init    Init_image
#define SWIG_name    "Image"


#include "FXRbCommon.h"


inline FXColor to_FXColor(VALUE obj){
  if(TYPE(obj)==T_STRING){
    return fxcolorfromname(StringValuePtr(obj));
    }
  else if(TYPE(obj)==T_SYMBOL){
    return fxcolorfromname(rb_id2name(SYM2ID(obj)));
    }
  else{
    return NUM2ULONG(obj);
    }
  }


inline FXString to_FXString(VALUE obj){
  if(!NIL_P(obj)){
    Check_Type(obj,T_STRING);
    return FXString(STR2CSTR(obj));
    }
  else{
    return FXString::null;
    }
  }


inline FXbool to_FXbool(VALUE obj){
  if (obj == Qtrue || obj == Qfalse){
    return (obj == Qtrue) ? TRUE : FALSE;
    }
  else{
    return static_cast<FXbool>(NUM2UINT(obj));
    }
  }


static swig_type_info* FXEventTypeInfo=0;

inline void* to_FXEvent(VALUE obj){
  void* ptr;
  if(!FXEventTypeInfo){
    FXEventTypeInfo=SWIG_TypeQuery("FXEvent *");
    FXASSERT(FXEventTypeInfo!=0);
    }
  SWIG_ConvertPtr(obj,&ptr,FXEventTypeInfo,1);
  return ptr;
  }

FXBitmap *new_FXBitmap(FXApp *a,void const *pix,FXuint opts,FXint w,FXint h){
      return new FXRbBitmap(a,pix,opts,w,h);
      }

swig_class cFXBitmap;
static void free_FXBitmap(FXBitmap *);
FXuchar FXMemoryBuffer___getitem__(FXMemoryBuffer const *self,FXuint i){
      return self->getData()[i];
      }
FXuchar FXMemoryBuffer___setitem__(FXMemoryBuffer *self,FXuint i,FXuchar value){
      self->getData()[i] = value;
      return value;
      }
VALUE FXMemoryBuffer_to_s(FXMemoryBuffer const *self){
      if(self->getSize()>0){
        const char *str=const_cast<const char*>(reinterpret_cast<char*>(self->getData()));
	long len=static_cast<long>(self->getSize());
        return rb_str_new(str,len);
	}
      else{
        return rb_str_new2("");
	}
      }

swig_class cFXMemoryBuffer;
static void free_FXMemoryBuffer(FXMemoryBuffer *);
FXImage *new_FXImage(FXApp *a,void const *IMGPIXELS,FXuint opts,FXint w,FXint h){
      return new FXRbImage(a,IMGPIXELS,opts,w,h);
      }
FXMemoryBuffer *FXImage_getData(FXImage const *self){
      return new FXMemoryBuffer(self->getData(),self->getChannels()*self->getWidth()*self->getHeight());
      }

swig_class cFXImage;
static void free_FXImage(FXImage *);

static swig_type_info *FXImage_dynamic_cast(void **ptr) {
    FXImage **ppImage = reinterpret_cast<FXImage **>(ptr);
    FXBMPImage *pBMPImage=dynamic_cast<FXBMPImage*>(*ppImage);
    if(pBMPImage){
      *ptr=reinterpret_cast<void*>(pBMPImage);
      return SWIG_TypeQuery("FXBMPImage *");
      }
    FXGIFImage *pGIFImage=dynamic_cast<FXGIFImage*>(*ppImage);
    if(pGIFImage){
      *ptr=reinterpret_cast<void*>(pGIFImage);
      return SWIG_TypeQuery("FXGIFImage *");
      }
    FXICOImage *pICOImage=dynamic_cast<FXICOImage*>(*ppImage);
    if(pICOImage){
      *ptr=reinterpret_cast<void*>(pICOImage);
      return SWIG_TypeQuery("FXICOImage *");
      }
    FXIcon *pIcon=dynamic_cast<FXIcon*>(*ppImage);
    if(pIcon){
      *ptr=reinterpret_cast<void*>(pIcon);
      return SWIG_TypeQuery("FXIcon *");
      }
    FXJPGImage *pJPGImage=dynamic_cast<FXJPGImage*>(*ppImage);
    if(pJPGImage){
      *ptr=reinterpret_cast<void*>(pJPGImage);
      return SWIG_TypeQuery("FXJPGImage *");
      }
    FXPCXImage *pPCXImage=dynamic_cast<FXPCXImage*>(*ppImage);
    if(pPCXImage){
      *ptr=reinterpret_cast<void*>(pPCXImage);
      return SWIG_TypeQuery("FXPCXImage *");
      }
    FXPNGImage *pPNGImage=dynamic_cast<FXPNGImage*>(*ppImage);
    if(pPNGImage){
      *ptr=reinterpret_cast<void*>(pPNGImage);
      return SWIG_TypeQuery("FXPNGImage *");
      }
    FXRGBImage *pRGBImage=dynamic_cast<FXRGBImage*>(*ppImage);
    if(pRGBImage){
      *ptr=reinterpret_cast<void*>(pRGBImage);
      return SWIG_TypeQuery("FXRGBImage *");
      }
    FXTGAImage *pTGAImage=dynamic_cast<FXTGAImage*>(*ppImage);
    if(pTGAImage){
      *ptr=reinterpret_cast<void*>(pTGAImage);
      return SWIG_TypeQuery("FXTGAImage *");
      }
    FXTIFImage *pTIFImage=dynamic_cast<FXTIFImage*>(*ppImage);
    if(pTIFImage){
      *ptr=reinterpret_cast<void*>(pTIFImage);
      return SWIG_TypeQuery("FXTIFImage *");
      }
    FXXPMImage *pXPMImage=dynamic_cast<FXXPMImage*>(*ppImage);
    if(pXPMImage){
      *ptr=reinterpret_cast<void*>(pXPMImage);
      return SWIG_TypeQuery("FXXPMImage *");
      }
    return 0;
}

FXBMPImage *new_FXBMPImage(FXApp *a,void const *pix,FXuint opts,FXint w,FXint h){
      return new FXRbBMPImage(a,pix,opts,w,h);
      }

swig_class cFXBMPImage;
static void free_FXBMPImage(FXBMPImage *);
FXGIFImage *new_FXGIFImage(FXApp *a,void const *pix,FXuint opts,FXint w,FXint h){
      return new FXRbGIFImage(a,pix,opts,w,h);
      }

swig_class cFXGIFImage;
static void free_FXGIFImage(FXGIFImage *);
FXICOImage *new_FXICOImage(FXApp *a,void const *pix,FXuint opts,FXint w,FXint h){
      return new FXRbICOImage(a,pix,opts,w,h);
      }

swig_class cFXICOImage;
static void free_FXICOImage(FXICOImage *);
FXJPGImage *new_FXJPGImage(FXApp *a,void const *pix,FXuint opts,FXint w,FXint h){
      return new FXRbJPGImage(a,pix,opts,w,h);
      }

swig_class cFXJPGImage;
static void free_FXJPGImage(FXJPGImage *);

  /// Load a jpeg from a stream
  VALUE fxloadJPG(FXStream& store){
    FXuchar* data;
    FXColor transp;
    FXint width,height,quality;
    if(fxloadJPG(store,data,transp,width,height,quality)){
      VALUE ary=rb_ary_new();
      rb_ary_push(ary,rb_str_new((const char*)data,3*width*height));
      FXFREE(&data);
      rb_ary_push(ary,to_ruby(transp));
      rb_ary_push(ary,to_ruby(width));
      rb_ary_push(ary,to_ruby(height));
      rb_ary_push(ary,to_ruby(quality));
      return ary;
      }
    else{
      return Qnil;
      }
    }

  /// Save a jpeg to a stream
  FXbool fxsaveJPG(FXStream& store,VALUE data,FXColor transp,FXint width,FXint height,FXint quality){
    Check_Type(data,T_STRING);
    const FXuchar* bytes=(const FXuchar*) RSTRING(data)->ptr;
    return fxsaveJPG(store,bytes,transp,width,height,quality);
    }

FXPCXImage *new_FXPCXImage(FXApp *a,void const *pix,FXuint opts,FXint w,FXint h){
      return new FXRbPCXImage(a,pix,opts,w,h);
      }

swig_class cFXPCXImage;
static void free_FXPCXImage(FXPCXImage *);
FXPNGImage *new_FXPNGImage(FXApp *a,void const *pix,FXuint opts,FXint w,FXint h){
      return new FXRbPNGImage(a,pix,opts,w,h);
      }

swig_class cFXPNGImage;
static void free_FXPNGImage(FXPNGImage *);
FXRGBImage *new_FXRGBImage(FXApp *a,void const *pix,FXuint opts,FXint w,FXint h){
      return new FXRbRGBImage(a,pix,opts,w,h);
      }

swig_class cFXRGBImage;
static void free_FXRGBImage(FXRGBImage *);

  /// Load a IRIS-RGB image file from a stream
  VALUE fxloadRGB(FXStream& store){
    FXuchar* data;
    FXColor transp;
    FXint width;
    FXint height;
    if(fxloadRGB(store,data,transp,width,height)){
      VALUE ary=rb_ary_new();
      rb_ary_push(ary,rb_str_new((const char*)data,3*width*height));
      FXFREE(&data);
      rb_ary_push(ary,to_ruby(transp));
      rb_ary_push(ary,to_ruby(width));
      rb_ary_push(ary,to_ruby(height));
      return ary;
      }
    else{
      return Qnil;
      }
    }

FXTGAImage *new_FXTGAImage(FXApp *a,void const *pix,FXuint opts,FXint w,FXint h){
      return new FXRbTGAImage(a,pix,opts,w,h);
      }

swig_class cFXTGAImage;
static void free_FXTGAImage(FXTGAImage *);

  /// Load a Targa Image from a stream
  VALUE fxloadTGA(FXStream& store){
    FXuchar* data;
    FXuint channels;
    FXint width;
    FXint height;
    if(fxloadTGA(store,data,channels,width,height)){
      VALUE ary=rb_ary_new();
      rb_ary_push(ary,rb_str_new((const char*)data,channels*width*height));
      FXFREE(&data);
      rb_ary_push(ary,to_ruby(channels));
      rb_ary_push(ary,to_ruby(width));
      rb_ary_push(ary,to_ruby(height));
      return ary;
      }
    else{
      return Qnil;
      }
    }

FXTIFImage *new_FXTIFImage(FXApp *a,void const *pix,FXuint opts,FXint w,FXint h){
      return new FXRbTIFImage(a,pix,opts,w,h);
      }

swig_class cFXTIFImage;
static void free_FXTIFImage(FXTIFImage *);

  /// Load a tiff from a stream
  VALUE fxloadTIF(FXStream& store){
    FXuchar* data;
    FXColor transp;
    FXint width;
    FXint height;
    FXushort codec;
    if(fxloadTIF(store,data,transp,width,height,codec)){
      VALUE ary=rb_ary_new();
      rb_ary_push(ary,rb_str_new((const char*)data,4*width*height));
      FXFREE(&data);
      rb_ary_push(ary,to_ruby(transp));
      rb_ary_push(ary,to_ruby(width));
      rb_ary_push(ary,to_ruby(height));
      rb_ary_push(ary,to_ruby(codec));
      return ary;
      }
    else{
      return Qnil;
      }
    }

FXXPMImage *new_FXXPMImage(FXApp *a,FXchar const **pix,FXuint opts,FXint w,FXint h){
      return new FXRbXPMImage(a,pix,opts,w,h);
      }

swig_class cFXXPMImage;
static void free_FXXPMImage(FXXPMImage *);
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
static VALUE _wrap_FXBitmap_allocate(VALUE self) {
#else
     static VALUE _wrap_FXBitmap_allocate(int argc, VALUE *argv, VALUE self) {
#endif
         VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_FXBitmap);
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
        rb_obj_call_init(vresult, argc, argv);
#endif
         return vresult; }
static VALUE _wrap_new_FXBitmap(int argc, VALUE *argv, VALUE self) { FXApp *arg1 = (FXApp *) 0 ; void *arg2 = (void *) 0 ;
    FXuint arg3 = (FXuint) 0 ; FXint arg4 = (FXint) 1 ; FXint arg5 = (FXint) 1 ; FXBitmap *result; if ((argc < 1) || (argc > 5))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXApp, 1); if (argc > 1) { { if (argv[1] != Qnil) {
                Check_Type(argv[1], T_STRING); arg2 = reinterpret_cast<void *>(RSTRING(argv[1])->ptr); }  else { arg2 = NULL; }
             }  }  if (argc > 2) { arg3 = NUM2UINT(argv[2]); }  if (argc > 3) { arg4 = NUM2INT(argv[3]); }  if (argc > 4) {
        arg5 = NUM2INT(argv[4]); }  { result = (FXBitmap *)new_FXBitmap(arg1,(void const *)arg2,arg3,arg4,arg5);
        DATA_PTR(self) = (void *) result; FXRbRegisterRubyObj(self, result); if(rb_block_given_p()){ rb_yield(self); }  } 
    return self; }
static VALUE _wrap_FXBitmap_getPixel(int argc, VALUE *argv, VALUE self) { FXBitmap *arg1 = (FXBitmap *) 0 ; FXint arg2 ;
    FXint arg3 ; FXbool result; VALUE vresult = Qnil; if ((argc < 2) || (argc > 2))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBitmap, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    result = (FXbool)((FXBitmap const *)arg1)->getPixel(arg2,arg3); vresult = result ? Qtrue : Qfalse; return vresult; }
static VALUE _wrap_FXBitmap_setPixel(int argc, VALUE *argv, VALUE self) { FXBitmap *arg1 = (FXBitmap *) 0 ; FXint arg2 ;
    FXint arg3 ; FXbool arg4 ; if ((argc < 3) || (argc > 3)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 3)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBitmap, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    arg4 = to_FXbool(argv[2]); (arg1)->setPixel(arg2,arg3,arg4); return Qnil; }
static void
free_FXBitmap(FXBitmap *arg1) {
    delete arg1;
}
static VALUE _wrap_FXBitmap_save(int argc, VALUE *argv, VALUE self) { FXBitmap *arg1 = (FXBitmap *) 0 ; FXStream *arg2 = 0 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBitmap, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXBitmap_save((FXBitmap const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXBitmap_load(int argc, VALUE *argv, VALUE self) { FXBitmap *arg1 = (FXBitmap *) 0 ; FXStream *arg2 = 0 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBitmap, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXBitmap_load(arg1,*arg2); return Qnil; }
static VALUE _wrap_FXBitmap_create(int argc, VALUE *argv, VALUE self) { FXBitmap *arg1 = (FXBitmap *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBitmap, 1); FXBitmap_create(arg1); return Qnil; }
static VALUE _wrap_FXBitmap_detach(int argc, VALUE *argv, VALUE self) { FXBitmap *arg1 = (FXBitmap *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBitmap, 1); FXBitmap_detach(arg1); return Qnil; }
static VALUE _wrap_FXBitmap_destroy(int argc, VALUE *argv, VALUE self) { FXBitmap *arg1 = (FXBitmap *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBitmap, 1); FXBitmap_destroy(arg1); return Qnil; }
static VALUE _wrap_FXBitmap_resize(int argc, VALUE *argv, VALUE self) { FXBitmap *arg1 = (FXBitmap *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBitmap, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXBitmap_resize(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXBitmap_render(int argc, VALUE *argv, VALUE self) { FXBitmap *arg1 = (FXBitmap *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBitmap, 1); FXBitmap_render(arg1); return Qnil; }
static VALUE _wrap_FXBitmap_savePixels(int argc, VALUE *argv, VALUE self) { FXBitmap *arg1 = (FXBitmap *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBitmap, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXBitmap_savePixels((FXBitmap const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXBitmap_loadPixels(int argc, VALUE *argv, VALUE self) { FXBitmap *arg1 = (FXBitmap *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBitmap, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXBitmap_loadPixels(arg1,*arg2); return Qnil; }
static VALUE _wrap_FXMemoryBuffer_getSize(int argc, VALUE *argv, VALUE self) { FXMemoryBuffer *arg1 = (FXMemoryBuffer *) 0 ;
    FXuint result; VALUE vresult = Qnil; if ((argc < 0) || (argc > 0))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXMemoryBuffer, 1);
    result = (FXuint)((FXMemoryBuffer const *)arg1)->getSize(); vresult = UINT2NUM(result); return vresult; }
static VALUE _wrap_FXMemoryBuffer___getitem__(int argc, VALUE *argv, VALUE self) { FXMemoryBuffer *arg1 = (FXMemoryBuffer *) 0 ;
    FXuint arg2 ; FXuchar result; VALUE vresult = Qnil; if ((argc < 1) || (argc > 1))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXMemoryBuffer, 1); arg2 = NUM2UINT(argv[0]);
    result = (FXuchar)FXMemoryBuffer___getitem__((FXMemoryBuffer const *)arg1,arg2); vresult = UINT2NUM(result);
    return vresult; }
static VALUE _wrap_FXMemoryBuffer___setitem__(int argc, VALUE *argv, VALUE self) { FXMemoryBuffer *arg1 = (FXMemoryBuffer *) 0 ;
    FXuint arg2 ; FXuchar arg3 ; FXuchar result; VALUE vresult = Qnil; if ((argc < 2) || (argc > 2))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXMemoryBuffer, 1); arg2 = NUM2UINT(argv[0]);
    arg3 = (FXuchar) NUM2INT(argv[1]); result = (FXuchar)FXMemoryBuffer___setitem__(arg1,arg2,arg3); vresult = UINT2NUM(result);
    return vresult; }
static VALUE _wrap_FXMemoryBuffer_to_s(int argc, VALUE *argv, VALUE self) { FXMemoryBuffer *arg1 = (FXMemoryBuffer *) 0 ;
    VALUE result; VALUE vresult = Qnil; if ((argc < 0) || (argc > 0))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXMemoryBuffer, 1);
    result = (VALUE)FXMemoryBuffer_to_s((FXMemoryBuffer const *)arg1); vresult = result; return vresult; }
static void
free_FXMemoryBuffer(FXMemoryBuffer *arg1) {
    delete arg1;
}
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
static VALUE _wrap_FXImage_allocate(VALUE self) {
#else
     static VALUE _wrap_FXImage_allocate(int argc, VALUE *argv, VALUE self) {
#endif
         VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_FXImage);
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
        rb_obj_call_init(vresult, argc, argv);
#endif
         return vresult; }
static VALUE _wrap_new_FXImage(int argc, VALUE *argv, VALUE self) { FXApp *arg1 = (FXApp *) 0 ; void *arg2 = (void *) 0 ;
    FXuint arg3 = (FXuint) 0 ; FXint arg4 = (FXint) 1 ; FXint arg5 = (FXint) 1 ; FXImage *result; if ((argc < 1) || (argc > 5))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXApp, 1); if (argc > 1) { { if (argv[1] != Qnil) {
                if (TYPE(argv[1]) == T_STRING) { arg2 = reinterpret_cast<void *>(RSTRING(argv[1])->ptr); }  else {
                    FXMemoryBuffer *memoryBuffer =
                    reinterpret_cast<FXMemoryBuffer*>(FXRbConvertPtr(argv[1], FXRbTypeQuery("FXMemoryBuffer *")));
                    arg2 = reinterpret_cast<void *>(memoryBuffer->getData());       }  }  else { arg2 = NULL; }  }  } 
    if (argc > 2) { arg3 = NUM2UINT(argv[2]); }  if (argc > 3) { arg4 = NUM2INT(argv[3]); }  if (argc > 4) {
        arg5 = NUM2INT(argv[4]); }  { result = (FXImage *)new_FXImage(arg1,(void const *)arg2,arg3,arg4,arg5);
        DATA_PTR(self) = (void *) result; FXRbRegisterRubyObj(self, result); if(rb_block_given_p()){ rb_yield(self); }  } 
    return self; }
static VALUE _wrap_FXImage_getData(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXMemoryBuffer *result;
    VALUE vresult = Qnil; if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1);
    result = (FXMemoryBuffer *)FXImage_getData((FXImage const *)arg1);
    vresult = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_FXMemoryBuffer,0); return vresult; }
static VALUE _wrap_FXImage_getOptions(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXuint result;
    VALUE vresult = Qnil; if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); result = (FXuint)((FXImage const *)arg1)->getOptions();
    vresult = UINT2NUM(result); return vresult; }
static VALUE _wrap_FXImage_setOptions(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXuint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); arg2 = NUM2UINT(argv[0]); (arg1)->setOptions(arg2);
    return Qnil; }
static VALUE _wrap_FXImage_getChannels(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXint result;
    VALUE vresult = Qnil; if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); result = (FXint)((FXImage const *)arg1)->getChannels();
    vresult = INT2NUM(result); return vresult; }
static VALUE _wrap_FXImage_getPixel(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXint arg2 ;
    FXint arg3 ; FXColor result; VALUE vresult = Qnil; if ((argc < 2) || (argc > 2))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    result = (FXColor)((FXImage const *)arg1)->getPixel(arg2,arg3); vresult = UINT2NUM(result); return vresult; }
static VALUE _wrap_FXImage_setPixel(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXint arg2 ;
    FXint arg3 ; FXColor arg4 ; if ((argc < 3) || (argc > 3)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 3)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    arg4 = to_FXColor(argv[2]); (arg1)->setPixel(arg2,arg3,arg4); return Qnil; }
static void
free_FXImage(FXImage *arg1) {
    delete arg1;
}
static VALUE _wrap_FXImage_save(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXStream *arg2 = 0 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXImage_save((FXImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXImage_load(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXStream *arg2 = 0 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXImage_load(arg1,*arg2); return Qnil; }
static VALUE _wrap_FXImage_create(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); FXImage_create(arg1); return Qnil; }
static VALUE _wrap_FXImage_detach(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); FXImage_detach(arg1); return Qnil; }
static VALUE _wrap_FXImage_destroy(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); FXImage_destroy(arg1); return Qnil; }
static VALUE _wrap_FXImage_resize(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXint arg2 ; FXint arg3 ;
    if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXImage_resize(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXImage_restore(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); FXImage_restore(arg1); return Qnil; }
static VALUE _wrap_FXImage_render(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); FXImage_render(arg1); return Qnil; }
static VALUE _wrap_FXImage_scale(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXint arg2 ; FXint arg3 ;
    if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXImage_scale(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXImage_mirror(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXbool arg2 ;
    FXbool arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); arg2 = to_FXbool(argv[0]); arg3 = to_FXbool(argv[1]);
    FXImage_mirror(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXImage_rotate(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); arg2 = NUM2INT(argv[0]); FXImage_rotate(arg1,arg2);
    return Qnil; }
static VALUE _wrap_FXImage_crop(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXint arg2 ; FXint arg3 ;
    FXint arg4 ; FXint arg5 ; if ((argc < 4) || (argc > 4)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    arg4 = NUM2INT(argv[2]); arg5 = NUM2INT(argv[3]); FXImage_crop(arg1,arg2,arg3,arg4,arg5); return Qnil; }
static VALUE _wrap_FXImage_savePixels(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXStream *arg2 = 0 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXImage_savePixels((FXImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXImage_loadPixels(int argc, VALUE *argv, VALUE self) { FXImage *arg1 = (FXImage *) 0 ; FXStream *arg2 = 0 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXImage_loadPixels(arg1,*arg2); return Qnil; }
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
static VALUE _wrap_FXBMPImage_allocate(VALUE self) {
#else
     static VALUE _wrap_FXBMPImage_allocate(int argc, VALUE *argv, VALUE self) {
#endif
         VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_FXBMPImage);
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
        rb_obj_call_init(vresult, argc, argv);
#endif
         return vresult; }
static VALUE _wrap_new_FXBMPImage(int argc, VALUE *argv, VALUE self) { FXApp *arg1 = (FXApp *) 0 ; void *arg2 = (void *) 0 ;
    FXuint arg3 = (FXuint) 0 ; FXint arg4 = (FXint) 1 ; FXint arg5 = (FXint) 1 ; FXBMPImage *result;
    if ((argc < 1) || (argc > 5)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXApp, 1); if (argc > 1) { { if (argv[1] != Qnil) {
                Check_Type(argv[1], T_STRING); arg2 = reinterpret_cast<void *>(RSTRING(argv[1])->ptr); }  else { arg2 = NULL; }
             }  }  if (argc > 2) { arg3 = NUM2UINT(argv[2]); }  if (argc > 3) { arg4 = NUM2INT(argv[3]); }  if (argc > 4) {
        arg5 = NUM2INT(argv[4]); }  { result = (FXBMPImage *)new_FXBMPImage(arg1,(void const *)arg2,arg3,arg4,arg5);
        DATA_PTR(self) = (void *) result; FXRbRegisterRubyObj(self, result); if(rb_block_given_p()){ rb_yield(self); }  } 
    return self; }
static void
free_FXBMPImage(FXBMPImage *arg1) {
    delete arg1;
}
static VALUE _wrap_FXBMPImage_save(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXBMPImage_save((FXBMPImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXBMPImage_load(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXBMPImage_load(arg1,*arg2); return Qnil; }
static VALUE _wrap_FXBMPImage_create(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1); FXBMPImage_create(arg1); return Qnil; }
static VALUE _wrap_FXBMPImage_detach(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1); FXBMPImage_detach(arg1); return Qnil; }
static VALUE _wrap_FXBMPImage_destroy(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1); FXBMPImage_destroy(arg1); return Qnil; }
static VALUE _wrap_FXBMPImage_resize(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXBMPImage_resize(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXBMPImage_restore(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1); FXBMPImage_restore(arg1); return Qnil; }
static VALUE _wrap_FXBMPImage_render(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1); FXBMPImage_render(arg1); return Qnil; }
static VALUE _wrap_FXBMPImage_scale(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXBMPImage_scale(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXBMPImage_mirror(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ; FXbool arg2 ;
    FXbool arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1); arg2 = to_FXbool(argv[0]); arg3 = to_FXbool(argv[1]);
    FXBMPImage_mirror(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXBMPImage_rotate(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ; FXint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1); arg2 = NUM2INT(argv[0]); FXBMPImage_rotate(arg1,arg2);
    return Qnil; }
static VALUE _wrap_FXBMPImage_crop(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ; FXint arg2 ;
    FXint arg3 ; FXint arg4 ; FXint arg5 ; if ((argc < 4) || (argc > 4))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    arg4 = NUM2INT(argv[2]); arg5 = NUM2INT(argv[3]); FXBMPImage_crop(arg1,arg2,arg3,arg4,arg5); return Qnil; }
static VALUE _wrap_FXBMPImage_savePixels(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXBMPImage_savePixels((FXBMPImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXBMPImage_loadPixels(int argc, VALUE *argv, VALUE self) { FXBMPImage *arg1 = (FXBMPImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXBMPImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXBMPImage_loadPixels(arg1,*arg2); return Qnil; }
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
static VALUE _wrap_FXGIFImage_allocate(VALUE self) {
#else
     static VALUE _wrap_FXGIFImage_allocate(int argc, VALUE *argv, VALUE self) {
#endif
         VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_FXGIFImage);
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
        rb_obj_call_init(vresult, argc, argv);
#endif
         return vresult; }
static VALUE _wrap_new_FXGIFImage(int argc, VALUE *argv, VALUE self) { FXApp *arg1 = (FXApp *) 0 ; void *arg2 = (void *) 0 ;
    FXuint arg3 = (FXuint) 0 ; FXint arg4 = (FXint) 1 ; FXint arg5 = (FXint) 1 ; FXGIFImage *result;
    if ((argc < 1) || (argc > 5)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXApp, 1); if (argc > 1) { { if (argv[1] != Qnil) {
                Check_Type(argv[1], T_STRING); arg2 = reinterpret_cast<void *>(RSTRING(argv[1])->ptr); }  else { arg2 = NULL; }
             }  }  if (argc > 2) { arg3 = NUM2UINT(argv[2]); }  if (argc > 3) { arg4 = NUM2INT(argv[3]); }  if (argc > 4) {
        arg5 = NUM2INT(argv[4]); }  { result = (FXGIFImage *)new_FXGIFImage(arg1,(void const *)arg2,arg3,arg4,arg5);
        DATA_PTR(self) = (void *) result; FXRbRegisterRubyObj(self, result); if(rb_block_given_p()){ rb_yield(self); }  } 
    return self; }
static void
free_FXGIFImage(FXGIFImage *arg1) {
    delete arg1;
}
static VALUE _wrap_FXGIFImage_save(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXGIFImage_save((FXGIFImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXGIFImage_load(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXGIFImage_load(arg1,*arg2); return Qnil; }
static VALUE _wrap_FXGIFImage_create(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1); FXGIFImage_create(arg1); return Qnil; }
static VALUE _wrap_FXGIFImage_detach(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1); FXGIFImage_detach(arg1); return Qnil; }
static VALUE _wrap_FXGIFImage_destroy(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1); FXGIFImage_destroy(arg1); return Qnil; }
static VALUE _wrap_FXGIFImage_resize(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXGIFImage_resize(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXGIFImage_restore(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1); FXGIFImage_restore(arg1); return Qnil; }
static VALUE _wrap_FXGIFImage_render(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1); FXGIFImage_render(arg1); return Qnil; }
static VALUE _wrap_FXGIFImage_scale(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXGIFImage_scale(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXGIFImage_mirror(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ; FXbool arg2 ;
    FXbool arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1); arg2 = to_FXbool(argv[0]); arg3 = to_FXbool(argv[1]);
    FXGIFImage_mirror(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXGIFImage_rotate(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ; FXint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1); arg2 = NUM2INT(argv[0]); FXGIFImage_rotate(arg1,arg2);
    return Qnil; }
static VALUE _wrap_FXGIFImage_crop(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ; FXint arg2 ;
    FXint arg3 ; FXint arg4 ; FXint arg5 ; if ((argc < 4) || (argc > 4))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    arg4 = NUM2INT(argv[2]); arg5 = NUM2INT(argv[3]); FXGIFImage_crop(arg1,arg2,arg3,arg4,arg5); return Qnil; }
static VALUE _wrap_FXGIFImage_savePixels(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXGIFImage_savePixels((FXGIFImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXGIFImage_loadPixels(int argc, VALUE *argv, VALUE self) { FXGIFImage *arg1 = (FXGIFImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXGIFImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXGIFImage_loadPixels(arg1,*arg2); return Qnil; }
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
static VALUE _wrap_FXICOImage_allocate(VALUE self) {
#else
     static VALUE _wrap_FXICOImage_allocate(int argc, VALUE *argv, VALUE self) {
#endif
         VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_FXICOImage);
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
        rb_obj_call_init(vresult, argc, argv);
#endif
         return vresult; }
static VALUE _wrap_new_FXICOImage(int argc, VALUE *argv, VALUE self) { FXApp *arg1 = (FXApp *) 0 ; void *arg2 = (void *) 0 ;
    FXuint arg3 = (FXuint) 0 ; FXint arg4 = (FXint) 1 ; FXint arg5 = (FXint) 1 ; FXICOImage *result;
    if ((argc < 1) || (argc > 5)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXApp, 1); if (argc > 1) { { if (argv[1] != Qnil) {
                Check_Type(argv[1], T_STRING); arg2 = reinterpret_cast<void *>(RSTRING(argv[1])->ptr); }  else { arg2 = NULL; }
             }  }  if (argc > 2) { arg3 = NUM2UINT(argv[2]); }  if (argc > 3) { arg4 = NUM2INT(argv[3]); }  if (argc > 4) {
        arg5 = NUM2INT(argv[4]); }  { result = (FXICOImage *)new_FXICOImage(arg1,(void const *)arg2,arg3,arg4,arg5);
        DATA_PTR(self) = (void *) result; FXRbRegisterRubyObj(self, result); if(rb_block_given_p()){ rb_yield(self); }  } 
    return self; }
static void
free_FXICOImage(FXICOImage *arg1) {
    delete arg1;
}
static VALUE _wrap_FXICOImage_save(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXICOImage_save((FXICOImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXICOImage_load(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXICOImage_load(arg1,*arg2); return Qnil; }
static VALUE _wrap_FXICOImage_create(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1); FXICOImage_create(arg1); return Qnil; }
static VALUE _wrap_FXICOImage_detach(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1); FXICOImage_detach(arg1); return Qnil; }
static VALUE _wrap_FXICOImage_destroy(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1); FXICOImage_destroy(arg1); return Qnil; }
static VALUE _wrap_FXICOImage_resize(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXICOImage_resize(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXICOImage_restore(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1); FXICOImage_restore(arg1); return Qnil; }
static VALUE _wrap_FXICOImage_render(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1); FXICOImage_render(arg1); return Qnil; }
static VALUE _wrap_FXICOImage_scale(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXICOImage_scale(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXICOImage_mirror(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ; FXbool arg2 ;
    FXbool arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1); arg2 = to_FXbool(argv[0]); arg3 = to_FXbool(argv[1]);
    FXICOImage_mirror(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXICOImage_rotate(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ; FXint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1); arg2 = NUM2INT(argv[0]); FXICOImage_rotate(arg1,arg2);
    return Qnil; }
static VALUE _wrap_FXICOImage_crop(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ; FXint arg2 ;
    FXint arg3 ; FXint arg4 ; FXint arg5 ; if ((argc < 4) || (argc > 4))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    arg4 = NUM2INT(argv[2]); arg5 = NUM2INT(argv[3]); FXICOImage_crop(arg1,arg2,arg3,arg4,arg5); return Qnil; }
static VALUE _wrap_FXICOImage_savePixels(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXICOImage_savePixels((FXICOImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXICOImage_loadPixels(int argc, VALUE *argv, VALUE self) { FXICOImage *arg1 = (FXICOImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXICOImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXICOImage_loadPixels(arg1,*arg2); return Qnil; }
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
static VALUE _wrap_FXJPGImage_allocate(VALUE self) {
#else
     static VALUE _wrap_FXJPGImage_allocate(int argc, VALUE *argv, VALUE self) {
#endif
         VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_FXJPGImage);
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
        rb_obj_call_init(vresult, argc, argv);
#endif
         return vresult; }
static VALUE _wrap_new_FXJPGImage(int argc, VALUE *argv, VALUE self) { FXApp *arg1 = (FXApp *) 0 ; void *arg2 = (void *) 0 ;
    FXuint arg3 = (FXuint) 0 ; FXint arg4 = (FXint) 1 ; FXint arg5 = (FXint) 1 ; FXJPGImage *result;
    if ((argc < 1) || (argc > 5)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXApp, 1); if (argc > 1) { { if (argv[1] != Qnil) {
                Check_Type(argv[1], T_STRING); arg2 = reinterpret_cast<void *>(RSTRING(argv[1])->ptr); }  else { arg2 = NULL; }
             }  }  if (argc > 2) { arg3 = NUM2UINT(argv[2]); }  if (argc > 3) { arg4 = NUM2INT(argv[3]); }  if (argc > 4) {
        arg5 = NUM2INT(argv[4]); }  { result = (FXJPGImage *)new_FXJPGImage(arg1,(void const *)arg2,arg3,arg4,arg5);
        DATA_PTR(self) = (void *) result; FXRbRegisterRubyObj(self, result); if(rb_block_given_p()){ rb_yield(self); }  } 
    return self; }
static VALUE _wrap_FXJPGImage_setQuality(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ; FXint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1); arg2 = NUM2INT(argv[0]); (arg1)->setQuality(arg2);
    return Qnil; }
static VALUE _wrap_FXJPGImage_getQuality(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ;
    FXint result; VALUE vresult = Qnil; if ((argc < 0) || (argc > 0))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1); result = (FXint)((FXJPGImage const *)arg1)->getQuality();
    vresult = INT2NUM(result); return vresult; }
static void
free_FXJPGImage(FXJPGImage *arg1) {
    delete arg1;
}
static VALUE _wrap_FXJPGImage_save(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXJPGImage_save((FXJPGImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXJPGImage_load(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXJPGImage_load(arg1,*arg2); return Qnil; }
static VALUE _wrap_FXJPGImage_create(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1); FXJPGImage_create(arg1); return Qnil; }
static VALUE _wrap_FXJPGImage_detach(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1); FXJPGImage_detach(arg1); return Qnil; }
static VALUE _wrap_FXJPGImage_destroy(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1); FXJPGImage_destroy(arg1); return Qnil; }
static VALUE _wrap_FXJPGImage_resize(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXJPGImage_resize(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXJPGImage_restore(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1); FXJPGImage_restore(arg1); return Qnil; }
static VALUE _wrap_FXJPGImage_render(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1); FXJPGImage_render(arg1); return Qnil; }
static VALUE _wrap_FXJPGImage_scale(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXJPGImage_scale(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXJPGImage_mirror(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ; FXbool arg2 ;
    FXbool arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1); arg2 = to_FXbool(argv[0]); arg3 = to_FXbool(argv[1]);
    FXJPGImage_mirror(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXJPGImage_rotate(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ; FXint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1); arg2 = NUM2INT(argv[0]); FXJPGImage_rotate(arg1,arg2);
    return Qnil; }
static VALUE _wrap_FXJPGImage_crop(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ; FXint arg2 ;
    FXint arg3 ; FXint arg4 ; FXint arg5 ; if ((argc < 4) || (argc > 4))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    arg4 = NUM2INT(argv[2]); arg5 = NUM2INT(argv[3]); FXJPGImage_crop(arg1,arg2,arg3,arg4,arg5); return Qnil; }
static VALUE _wrap_FXJPGImage_savePixels(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXJPGImage_savePixels((FXJPGImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXJPGImage_loadPixels(int argc, VALUE *argv, VALUE self) { FXJPGImage *arg1 = (FXJPGImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXJPGImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXJPGImage_loadPixels(arg1,*arg2); return Qnil; }
static VALUE _wrap_fxloadJPG(int argc, VALUE *argv, VALUE self) { FXStream *arg1 = 0 ; VALUE result; VALUE vresult = Qnil;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXStream, 1); if (arg1 == NULL) rb_raise(rb_eTypeError, "null reference");
    result = (VALUE)fxloadJPG(*arg1); vresult = result; return vresult; }
static VALUE _wrap_fxsaveJPG(int argc, VALUE *argv, VALUE self) { FXStream *arg1 = 0 ; VALUE arg2 ; FXColor arg3 ; FXint arg4 ;
    FXint arg5 ; FXint arg6 ; FXbool result; VALUE vresult = Qnil; if ((argc < 6) || (argc > 6))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 6)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXStream, 1); if (arg1 == NULL) rb_raise(rb_eTypeError, "null reference");
    arg2 = argv[1]; arg3 = to_FXColor(argv[2]); arg4 = NUM2INT(argv[3]); arg5 = NUM2INT(argv[4]); arg6 = NUM2INT(argv[5]);
    result = (FXbool)fxsaveJPG(*arg1,arg2,arg3,arg4,arg5,arg6); vresult = result ? Qtrue : Qfalse; return vresult; }
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
static VALUE _wrap_FXPCXImage_allocate(VALUE self) {
#else
     static VALUE _wrap_FXPCXImage_allocate(int argc, VALUE *argv, VALUE self) {
#endif
         VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_FXPCXImage);
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
        rb_obj_call_init(vresult, argc, argv);
#endif
         return vresult; }
static VALUE _wrap_new_FXPCXImage(int argc, VALUE *argv, VALUE self) { FXApp *arg1 = (FXApp *) 0 ; void *arg2 = (void *) 0 ;
    FXuint arg3 = (FXuint) 0 ; FXint arg4 = (FXint) 1 ; FXint arg5 = (FXint) 1 ; FXPCXImage *result;
    if ((argc < 1) || (argc > 5)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXApp, 1); if (argc > 1) { { if (argv[1] != Qnil) {
                Check_Type(argv[1], T_STRING); arg2 = reinterpret_cast<void *>(RSTRING(argv[1])->ptr); }  else { arg2 = NULL; }
             }  }  if (argc > 2) { arg3 = NUM2UINT(argv[2]); }  if (argc > 3) { arg4 = NUM2INT(argv[3]); }  if (argc > 4) {
        arg5 = NUM2INT(argv[4]); }  { result = (FXPCXImage *)new_FXPCXImage(arg1,(void const *)arg2,arg3,arg4,arg5);
        DATA_PTR(self) = (void *) result; FXRbRegisterRubyObj(self, result); if(rb_block_given_p()){ rb_yield(self); }  } 
    return self; }
static void
free_FXPCXImage(FXPCXImage *arg1) {
    delete arg1;
}
static VALUE _wrap_FXPCXImage_save(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXPCXImage_save((FXPCXImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXPCXImage_load(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXPCXImage_load(arg1,*arg2); return Qnil; }
static VALUE _wrap_FXPCXImage_create(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1); FXPCXImage_create(arg1); return Qnil; }
static VALUE _wrap_FXPCXImage_detach(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1); FXPCXImage_detach(arg1); return Qnil; }
static VALUE _wrap_FXPCXImage_destroy(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1); FXPCXImage_destroy(arg1); return Qnil; }
static VALUE _wrap_FXPCXImage_resize(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXPCXImage_resize(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXPCXImage_restore(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1); FXPCXImage_restore(arg1); return Qnil; }
static VALUE _wrap_FXPCXImage_render(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1); FXPCXImage_render(arg1); return Qnil; }
static VALUE _wrap_FXPCXImage_scale(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXPCXImage_scale(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXPCXImage_mirror(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ; FXbool arg2 ;
    FXbool arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1); arg2 = to_FXbool(argv[0]); arg3 = to_FXbool(argv[1]);
    FXPCXImage_mirror(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXPCXImage_rotate(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ; FXint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1); arg2 = NUM2INT(argv[0]); FXPCXImage_rotate(arg1,arg2);
    return Qnil; }
static VALUE _wrap_FXPCXImage_crop(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ; FXint arg2 ;
    FXint arg3 ; FXint arg4 ; FXint arg5 ; if ((argc < 4) || (argc > 4))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    arg4 = NUM2INT(argv[2]); arg5 = NUM2INT(argv[3]); FXPCXImage_crop(arg1,arg2,arg3,arg4,arg5); return Qnil; }
static VALUE _wrap_FXPCXImage_savePixels(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXPCXImage_savePixels((FXPCXImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXPCXImage_loadPixels(int argc, VALUE *argv, VALUE self) { FXPCXImage *arg1 = (FXPCXImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPCXImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXPCXImage_loadPixels(arg1,*arg2); return Qnil; }
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
static VALUE _wrap_FXPNGImage_allocate(VALUE self) {
#else
     static VALUE _wrap_FXPNGImage_allocate(int argc, VALUE *argv, VALUE self) {
#endif
         VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_FXPNGImage);
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
        rb_obj_call_init(vresult, argc, argv);
#endif
         return vresult; }
static VALUE _wrap_new_FXPNGImage(int argc, VALUE *argv, VALUE self) { FXApp *arg1 = (FXApp *) 0 ; void *arg2 = (void *) 0 ;
    FXuint arg3 = (FXuint) 0 ; FXint arg4 = (FXint) 1 ; FXint arg5 = (FXint) 1 ; FXPNGImage *result;
    if ((argc < 1) || (argc > 5)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXApp, 1); if (argc > 1) { { if (argv[1] != Qnil) {
                Check_Type(argv[1], T_STRING); arg2 = reinterpret_cast<void *>(RSTRING(argv[1])->ptr); }  else { arg2 = NULL; }
             }  }  if (argc > 2) { arg3 = NUM2UINT(argv[2]); }  if (argc > 3) { arg4 = NUM2INT(argv[3]); }  if (argc > 4) {
        arg5 = NUM2INT(argv[4]); }  { result = (FXPNGImage *)new_FXPNGImage(arg1,(void const *)arg2,arg3,arg4,arg5);
        DATA_PTR(self) = (void *) result; FXRbRegisterRubyObj(self, result); if(rb_block_given_p()){ rb_yield(self); }  } 
    return self; }
static void
free_FXPNGImage(FXPNGImage *arg1) {
    delete arg1;
}
static VALUE _wrap_FXPNGImage_save(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXPNGImage_save((FXPNGImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXPNGImage_load(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXPNGImage_load(arg1,*arg2); return Qnil; }
static VALUE _wrap_FXPNGImage_create(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1); FXPNGImage_create(arg1); return Qnil; }
static VALUE _wrap_FXPNGImage_detach(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1); FXPNGImage_detach(arg1); return Qnil; }
static VALUE _wrap_FXPNGImage_destroy(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1); FXPNGImage_destroy(arg1); return Qnil; }
static VALUE _wrap_FXPNGImage_resize(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXPNGImage_resize(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXPNGImage_restore(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1); FXPNGImage_restore(arg1); return Qnil; }
static VALUE _wrap_FXPNGImage_render(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1); FXPNGImage_render(arg1); return Qnil; }
static VALUE _wrap_FXPNGImage_scale(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXPNGImage_scale(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXPNGImage_mirror(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ; FXbool arg2 ;
    FXbool arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1); arg2 = to_FXbool(argv[0]); arg3 = to_FXbool(argv[1]);
    FXPNGImage_mirror(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXPNGImage_rotate(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ; FXint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1); arg2 = NUM2INT(argv[0]); FXPNGImage_rotate(arg1,arg2);
    return Qnil; }
static VALUE _wrap_FXPNGImage_crop(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ; FXint arg2 ;
    FXint arg3 ; FXint arg4 ; FXint arg5 ; if ((argc < 4) || (argc > 4))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    arg4 = NUM2INT(argv[2]); arg5 = NUM2INT(argv[3]); FXPNGImage_crop(arg1,arg2,arg3,arg4,arg5); return Qnil; }
static VALUE _wrap_FXPNGImage_savePixels(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXPNGImage_savePixels((FXPNGImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXPNGImage_loadPixels(int argc, VALUE *argv, VALUE self) { FXPNGImage *arg1 = (FXPNGImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXPNGImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXPNGImage_loadPixels(arg1,*arg2); return Qnil; }
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
static VALUE _wrap_FXRGBImage_allocate(VALUE self) {
#else
     static VALUE _wrap_FXRGBImage_allocate(int argc, VALUE *argv, VALUE self) {
#endif
         VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_FXRGBImage);
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
        rb_obj_call_init(vresult, argc, argv);
#endif
         return vresult; }
static VALUE _wrap_new_FXRGBImage(int argc, VALUE *argv, VALUE self) { FXApp *arg1 = (FXApp *) 0 ; void *arg2 = (void *) 0 ;
    FXuint arg3 = (FXuint) 0 ; FXint arg4 = (FXint) 1 ; FXint arg5 = (FXint) 1 ; FXRGBImage *result;
    if ((argc < 1) || (argc > 5)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXApp, 1); if (argc > 1) { { if (argv[1] != Qnil) {
                Check_Type(argv[1], T_STRING); arg2 = reinterpret_cast<void *>(RSTRING(argv[1])->ptr); }  else { arg2 = NULL; }
             }  }  if (argc > 2) { arg3 = NUM2UINT(argv[2]); }  if (argc > 3) { arg4 = NUM2INT(argv[3]); }  if (argc > 4) {
        arg5 = NUM2INT(argv[4]); }  { result = (FXRGBImage *)new_FXRGBImage(arg1,(void const *)arg2,arg3,arg4,arg5);
        DATA_PTR(self) = (void *) result; FXRbRegisterRubyObj(self, result); if(rb_block_given_p()){ rb_yield(self); }  } 
    return self; }
static void
free_FXRGBImage(FXRGBImage *arg1) {
    delete arg1;
}
static VALUE _wrap_FXRGBImage_save(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXRGBImage_save((FXRGBImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXRGBImage_load(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXRGBImage_load(arg1,*arg2); return Qnil; }
static VALUE _wrap_FXRGBImage_create(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1); FXRGBImage_create(arg1); return Qnil; }
static VALUE _wrap_FXRGBImage_detach(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1); FXRGBImage_detach(arg1); return Qnil; }
static VALUE _wrap_FXRGBImage_destroy(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1); FXRGBImage_destroy(arg1); return Qnil; }
static VALUE _wrap_FXRGBImage_resize(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXRGBImage_resize(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXRGBImage_restore(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1); FXRGBImage_restore(arg1); return Qnil; }
static VALUE _wrap_FXRGBImage_render(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1); FXRGBImage_render(arg1); return Qnil; }
static VALUE _wrap_FXRGBImage_scale(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXRGBImage_scale(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXRGBImage_mirror(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ; FXbool arg2 ;
    FXbool arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1); arg2 = to_FXbool(argv[0]); arg3 = to_FXbool(argv[1]);
    FXRGBImage_mirror(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXRGBImage_rotate(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ; FXint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1); arg2 = NUM2INT(argv[0]); FXRGBImage_rotate(arg1,arg2);
    return Qnil; }
static VALUE _wrap_FXRGBImage_crop(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ; FXint arg2 ;
    FXint arg3 ; FXint arg4 ; FXint arg5 ; if ((argc < 4) || (argc > 4))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    arg4 = NUM2INT(argv[2]); arg5 = NUM2INT(argv[3]); FXRGBImage_crop(arg1,arg2,arg3,arg4,arg5); return Qnil; }
static VALUE _wrap_FXRGBImage_savePixels(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXRGBImage_savePixels((FXRGBImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXRGBImage_loadPixels(int argc, VALUE *argv, VALUE self) { FXRGBImage *arg1 = (FXRGBImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXRGBImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXRGBImage_loadPixels(arg1,*arg2); return Qnil; }
static VALUE _wrap_fxloadRGB(int argc, VALUE *argv, VALUE self) { FXStream *arg1 = 0 ; VALUE result; VALUE vresult = Qnil;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXStream, 1); if (arg1 == NULL) rb_raise(rb_eTypeError, "null reference");
    result = (VALUE)fxloadRGB(*arg1); vresult = result; return vresult; }
static VALUE _wrap_fxsaveRGB(int argc, VALUE *argv, VALUE self) { FXStream *arg1 = 0 ; FXuchar *arg2 = (FXuchar *) 0 ;
    FXColor arg3 ; FXint arg4 ; FXint arg5 ; FXbool result; VALUE vresult = Qnil; if ((argc < 5) || (argc > 5))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 5)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXStream, 1); if (arg1 == NULL) rb_raise(rb_eTypeError, "null reference");
    { if (argv[1] != Qnil) { Check_Type(argv[1], T_STRING); arg2 = reinterpret_cast<FXuchar *>(RSTRING(argv[1])->ptr); }  else {
            arg2 = NULL; }  }  arg3 = to_FXColor(argv[2]); arg4 = NUM2INT(argv[3]); arg5 = NUM2INT(argv[4]);
    result = (FXbool)fxsaveRGB(*arg1,(FXuchar const *)arg2,arg3,arg4,arg5); vresult = result ? Qtrue : Qfalse; return vresult; }
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
static VALUE _wrap_FXTGAImage_allocate(VALUE self) {
#else
     static VALUE _wrap_FXTGAImage_allocate(int argc, VALUE *argv, VALUE self) {
#endif
         VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_FXTGAImage);
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
        rb_obj_call_init(vresult, argc, argv);
#endif
         return vresult; }
static VALUE _wrap_new_FXTGAImage(int argc, VALUE *argv, VALUE self) { FXApp *arg1 = (FXApp *) 0 ; void *arg2 = (void *) 0 ;
    FXuint arg3 = (FXuint) 0 ; FXint arg4 = (FXint) 1 ; FXint arg5 = (FXint) 1 ; FXTGAImage *result;
    if ((argc < 1) || (argc > 5)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXApp, 1); if (argc > 1) { { if (argv[1] != Qnil) {
                Check_Type(argv[1], T_STRING); arg2 = reinterpret_cast<void *>(RSTRING(argv[1])->ptr); }  else { arg2 = NULL; }
             }  }  if (argc > 2) { arg3 = NUM2UINT(argv[2]); }  if (argc > 3) { arg4 = NUM2INT(argv[3]); }  if (argc > 4) {
        arg5 = NUM2INT(argv[4]); }  { result = (FXTGAImage *)new_FXTGAImage(arg1,(void const *)arg2,arg3,arg4,arg5);
        DATA_PTR(self) = (void *) result; FXRbRegisterRubyObj(self, result); if(rb_block_given_p()){ rb_yield(self); }  } 
    return self; }
static void
free_FXTGAImage(FXTGAImage *arg1) {
    delete arg1;
}
static VALUE _wrap_FXTGAImage_save(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXTGAImage_save((FXTGAImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXTGAImage_load(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXTGAImage_load(arg1,*arg2); return Qnil; }
static VALUE _wrap_FXTGAImage_create(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1); FXTGAImage_create(arg1); return Qnil; }
static VALUE _wrap_FXTGAImage_detach(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1); FXTGAImage_detach(arg1); return Qnil; }
static VALUE _wrap_FXTGAImage_destroy(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1); FXTGAImage_destroy(arg1); return Qnil; }
static VALUE _wrap_FXTGAImage_resize(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXTGAImage_resize(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXTGAImage_restore(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1); FXTGAImage_restore(arg1); return Qnil; }
static VALUE _wrap_FXTGAImage_render(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1); FXTGAImage_render(arg1); return Qnil; }
static VALUE _wrap_FXTGAImage_scale(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXTGAImage_scale(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXTGAImage_mirror(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ; FXbool arg2 ;
    FXbool arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1); arg2 = to_FXbool(argv[0]); arg3 = to_FXbool(argv[1]);
    FXTGAImage_mirror(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXTGAImage_rotate(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ; FXint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1); arg2 = NUM2INT(argv[0]); FXTGAImage_rotate(arg1,arg2);
    return Qnil; }
static VALUE _wrap_FXTGAImage_crop(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ; FXint arg2 ;
    FXint arg3 ; FXint arg4 ; FXint arg5 ; if ((argc < 4) || (argc > 4))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    arg4 = NUM2INT(argv[2]); arg5 = NUM2INT(argv[3]); FXTGAImage_crop(arg1,arg2,arg3,arg4,arg5); return Qnil; }
static VALUE _wrap_FXTGAImage_savePixels(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXTGAImage_savePixels((FXTGAImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXTGAImage_loadPixels(int argc, VALUE *argv, VALUE self) { FXTGAImage *arg1 = (FXTGAImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTGAImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXTGAImage_loadPixels(arg1,*arg2); return Qnil; }
static VALUE _wrap_fxloadTGA(int argc, VALUE *argv, VALUE self) { FXStream *arg1 = 0 ; VALUE result; VALUE vresult = Qnil;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXStream, 1); if (arg1 == NULL) rb_raise(rb_eTypeError, "null reference");
    result = (VALUE)fxloadTGA(*arg1); vresult = result; return vresult; }
static VALUE _wrap_fxsaveTGA(int argc, VALUE *argv, VALUE self) { FXStream *arg1 = 0 ; FXuchar *arg2 = (FXuchar *) 0 ;
    FXuint arg3 ; FXint arg4 ; FXint arg5 ; FXbool result; VALUE vresult = Qnil; if ((argc < 5) || (argc > 5))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 5)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXStream, 1); if (arg1 == NULL) rb_raise(rb_eTypeError, "null reference");
    { if (argv[1] != Qnil) { Check_Type(argv[1], T_STRING); arg2 = reinterpret_cast<FXuchar *>(RSTRING(argv[1])->ptr); }  else {
            arg2 = NULL; }  }  arg3 = NUM2UINT(argv[2]); arg4 = NUM2INT(argv[3]); arg5 = NUM2INT(argv[4]);
    result = (FXbool)fxsaveTGA(*arg1,(FXuchar const *)arg2,arg3,arg4,arg5); vresult = result ? Qtrue : Qfalse; return vresult; }
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
static VALUE _wrap_FXTIFImage_allocate(VALUE self) {
#else
     static VALUE _wrap_FXTIFImage_allocate(int argc, VALUE *argv, VALUE self) {
#endif
         VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_FXTIFImage);
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
        rb_obj_call_init(vresult, argc, argv);
#endif
         return vresult; }
static VALUE _wrap_new_FXTIFImage(int argc, VALUE *argv, VALUE self) { FXApp *arg1 = (FXApp *) 0 ; void *arg2 = (void *) 0 ;
    FXuint arg3 = (FXuint) 0 ; FXint arg4 = (FXint) 1 ; FXint arg5 = (FXint) 1 ; FXTIFImage *result;
    if ((argc < 1) || (argc > 5)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXApp, 1); if (argc > 1) { { if (argv[1] != Qnil) {
                Check_Type(argv[1], T_STRING); arg2 = reinterpret_cast<void *>(RSTRING(argv[1])->ptr); }  else { arg2 = NULL; }
             }  }  if (argc > 2) { arg3 = NUM2UINT(argv[2]); }  if (argc > 3) { arg4 = NUM2INT(argv[3]); }  if (argc > 4) {
        arg5 = NUM2INT(argv[4]); }  { result = (FXTIFImage *)new_FXTIFImage(arg1,(void const *)arg2,arg3,arg4,arg5);
        DATA_PTR(self) = (void *) result; FXRbRegisterRubyObj(self, result); if(rb_block_given_p()){ rb_yield(self); }  } 
    return self; }
static VALUE _wrap_FXTIFImage_setCodec(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ; FXuint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1); arg2 = NUM2UINT(argv[0]); (arg1)->setCodec(arg2);
    return Qnil; }
static VALUE _wrap_FXTIFImage_getCodec(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ; FXuint result;
    VALUE vresult = Qnil; if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1); result = (FXuint)((FXTIFImage const *)arg1)->getCodec();
    vresult = UINT2NUM(result); return vresult; }
static void
free_FXTIFImage(FXTIFImage *arg1) {
    delete arg1;
}
static VALUE _wrap_FXTIFImage_save(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXTIFImage_save((FXTIFImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXTIFImage_load(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXTIFImage_load(arg1,*arg2); return Qnil; }
static VALUE _wrap_FXTIFImage_create(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1); FXTIFImage_create(arg1); return Qnil; }
static VALUE _wrap_FXTIFImage_detach(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1); FXTIFImage_detach(arg1); return Qnil; }
static VALUE _wrap_FXTIFImage_destroy(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1); FXTIFImage_destroy(arg1); return Qnil; }
static VALUE _wrap_FXTIFImage_resize(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXTIFImage_resize(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXTIFImage_restore(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1); FXTIFImage_restore(arg1); return Qnil; }
static VALUE _wrap_FXTIFImage_render(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1); FXTIFImage_render(arg1); return Qnil; }
static VALUE _wrap_FXTIFImage_scale(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXTIFImage_scale(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXTIFImage_mirror(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ; FXbool arg2 ;
    FXbool arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1); arg2 = to_FXbool(argv[0]); arg3 = to_FXbool(argv[1]);
    FXTIFImage_mirror(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXTIFImage_rotate(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ; FXint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1); arg2 = NUM2INT(argv[0]); FXTIFImage_rotate(arg1,arg2);
    return Qnil; }
static VALUE _wrap_FXTIFImage_crop(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ; FXint arg2 ;
    FXint arg3 ; FXint arg4 ; FXint arg5 ; if ((argc < 4) || (argc > 4))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    arg4 = NUM2INT(argv[2]); arg5 = NUM2INT(argv[3]); FXTIFImage_crop(arg1,arg2,arg3,arg4,arg5); return Qnil; }
static VALUE _wrap_FXTIFImage_savePixels(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXTIFImage_savePixels((FXTIFImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXTIFImage_loadPixels(int argc, VALUE *argv, VALUE self) { FXTIFImage *arg1 = (FXTIFImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXTIFImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXTIFImage_loadPixels(arg1,*arg2); return Qnil; }
static VALUE _wrap_fxloadTIF(int argc, VALUE *argv, VALUE self) { FXStream *arg1 = 0 ; VALUE result; VALUE vresult = Qnil;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXStream, 1); if (arg1 == NULL) rb_raise(rb_eTypeError, "null reference");
    result = (VALUE)fxloadTIF(*arg1); vresult = result; return vresult; }
static VALUE _wrap_fxsaveTIF(int argc, VALUE *argv, VALUE self) { FXStream *arg1 = 0 ; FXuchar *arg2 = (FXuchar *) 0 ;
    FXColor arg3 ; FXint arg4 ; FXint arg5 ; FXushort arg6 ; FXbool result; VALUE vresult = Qnil; if ((argc < 6) || (argc > 6))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 6)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXStream, 1); if (arg1 == NULL) rb_raise(rb_eTypeError, "null reference");
    { if (argv[1] != Qnil) { Check_Type(argv[1], T_STRING); arg2 = reinterpret_cast<FXuchar *>(RSTRING(argv[1])->ptr); }  else {
            arg2 = NULL; }  }  arg3 = to_FXColor(argv[2]); arg4 = NUM2INT(argv[3]); arg5 = NUM2INT(argv[4]);
    arg6 = NUM2USHRT(argv[5]); result = (FXbool)fxsaveTIF(*arg1,(FXuchar const *)arg2,arg3,arg4,arg5,arg6);
    vresult = result ? Qtrue : Qfalse; return vresult; }
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
static VALUE _wrap_FXXPMImage_allocate(VALUE self) {
#else
     static VALUE _wrap_FXXPMImage_allocate(int argc, VALUE *argv, VALUE self) {
#endif
         VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_FXXPMImage);
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
        rb_obj_call_init(vresult, argc, argv);
#endif
         return vresult; }
static VALUE _wrap_new_FXXPMImage(int argc, VALUE *argv, VALUE self) { FXApp *arg1 = (FXApp *) 0 ;
    FXchar **arg2 = (FXchar **) 0 ; FXuint arg3 = (FXuint) 0 ; FXint arg4 = (FXint) 1 ; FXint arg5 = (FXint) 1 ;
    FXXPMImage *result; if ((argc < 1) || (argc > 5)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(argv[0], (void **) &arg1, SWIGTYPE_p_FXApp, 1); if (argc > 1) { { arg2 = NULL; if (argv[1] != Qnil) {
                Check_Type(argv[1], T_ARRAY); if (FXMALLOC(&arg2, FXchar *, RARRAY(argv[1])->len)) {
                    for (long i = 0; i < RARRAY(argv[1])->len; i++) { arg2[i] = (FXchar *) STR2CSTR(rb_ary_entry(argv[1], i)); }
                     }  }  }  }  if (argc > 2) { arg3 = NUM2UINT(argv[2]); }  if (argc > 3) { arg4 = NUM2INT(argv[3]); } 
    if (argc > 4) { arg5 = NUM2INT(argv[4]); }  {
        result = (FXXPMImage *)new_FXXPMImage(arg1,(FXchar const **)arg2,arg3,arg4,arg5);
        DATA_PTR(self) = (void *) result; FXRbRegisterRubyObj(self, result); if(rb_block_given_p()){ rb_yield(self); }  } 
    FXFREE(&arg2); return self; }
static void
free_FXXPMImage(FXXPMImage *arg1) {
    delete arg1;
}
static VALUE _wrap_FXXPMImage_save(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXXPMImage_save((FXXPMImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXXPMImage_load(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXXPMImage_load(arg1,*arg2); return Qnil; }
static VALUE _wrap_FXXPMImage_create(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1); FXXPMImage_create(arg1); return Qnil; }
static VALUE _wrap_FXXPMImage_detach(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1); FXXPMImage_detach(arg1); return Qnil; }
static VALUE _wrap_FXXPMImage_destroy(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1); FXXPMImage_destroy(arg1); return Qnil; }
static VALUE _wrap_FXXPMImage_resize(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXXPMImage_resize(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXXPMImage_restore(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1); FXXPMImage_restore(arg1); return Qnil; }
static VALUE _wrap_FXXPMImage_render(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ;
    if ((argc < 0) || (argc > 0)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1); FXXPMImage_render(arg1); return Qnil; }
static VALUE _wrap_FXXPMImage_scale(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ; FXint arg2 ;
    FXint arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    FXXPMImage_scale(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXXPMImage_mirror(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ; FXbool arg2 ;
    FXbool arg3 ; if ((argc < 2) || (argc > 2)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1); arg2 = to_FXbool(argv[0]); arg3 = to_FXbool(argv[1]);
    FXXPMImage_mirror(arg1,arg2,arg3); return Qnil; }
static VALUE _wrap_FXXPMImage_rotate(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ; FXint arg2 ;
    if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1); arg2 = NUM2INT(argv[0]); FXXPMImage_rotate(arg1,arg2);
    return Qnil; }
static VALUE _wrap_FXXPMImage_crop(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ; FXint arg2 ;
    FXint arg3 ; FXint arg4 ; FXint arg5 ; if ((argc < 4) || (argc > 4))
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1); arg2 = NUM2INT(argv[0]); arg3 = NUM2INT(argv[1]);
    arg4 = NUM2INT(argv[2]); arg5 = NUM2INT(argv[3]); FXXPMImage_crop(arg1,arg2,arg3,arg4,arg5); return Qnil; }
static VALUE _wrap_FXXPMImage_savePixels(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXXPMImage_savePixels((FXXPMImage const *)arg1,*arg2); return Qnil; }
static VALUE _wrap_FXXPMImage_loadPixels(int argc, VALUE *argv, VALUE self) { FXXPMImage *arg1 = (FXXPMImage *) 0 ;
    FXStream *arg2 = 0 ; if ((argc < 1) || (argc > 1)) rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc);
    SWIG_ConvertPtr(self, (void **) &arg1, SWIGTYPE_p_FXXPMImage, 1);
    SWIG_ConvertPtr(argv[0], (void **) &arg2, SWIGTYPE_p_FXStream, 1); if (arg2 == NULL) rb_raise(rb_eTypeError, "null reference");
    FXXPMImage_loadPixels(arg1,*arg2); return Qnil; }

/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */

static void *_p_FXJPGImageTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXImage *) ((FXJPGImage *) x));
}
static void *_p_FXPNGImageTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXImage *) ((FXPNGImage *) x));
}
static void *_p_FXDriveBoxTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *)(FXListBox *) ((FXDriveBox *) x));
}
static void *_p_FXToolbarTabTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXFrame *) ((FXToolbarTab *) x));
}
static void *_p_FXScrollbarTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *) ((FXScrollbar *) x));
}
static void *_p_FXTGAImageTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXImage *) ((FXTGAImage *) x));
}
static void *_p_FXCompositeTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *) ((FXComposite *) x));
}
static void *_p_FXStatuslineTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXFrame *) ((FXStatusline *) x));
}
static void *_p_FXTextFieldTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXFrame *) ((FXTextField *) x));
}
static void *_p_FXTabBookTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *)(FXTabBar *) ((FXTabBook *) x));
}
static void *_p_FXBMPImageTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXImage *) ((FXBMPImage *) x));
}
static void *_p_FXArrowButtonTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXFrame *) ((FXArrowButton *) x));
}
static void *_p_FXImageTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *) ((FXImage *) x));
}
static void *_p_FXGroupBoxTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXGroupBox *) x));
}
static void *_p_FXShellTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *) ((FXShell *) x));
}
static void *_p_FXScrollAreaTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *) ((FXScrollArea *) x));
}
static void *_p_FXPopupTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXShell *) ((FXPopup *) x));
}
static void *_p_FXScrollWindowTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXScrollArea *) ((FXScrollWindow *) x));
}
static void *_p_FXWindowTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *) ((FXWindow *) x));
}
static void *_p_FXRootWindowTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *) ((FXRootWindow *) x));
}
static void *_p_FXTopWindowTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXShell *) ((FXTopWindow *) x));
}
static void *_p_FXMainWindowTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXShell *)(FXTopWindow *) ((FXMainWindow *) x));
}
static void *_p_FXCanvasTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *) ((FXCanvas *) x));
}
static void *_p_FXScrollCornerTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *) ((FXScrollCorner *) x));
}
static void *_p_FXXPMImageTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXImage *) ((FXXPMImage *) x));
}
static void *_p_FXHorizontalSeparatorTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXFrame *) ((FXHorizontalSeparator *) x));
}
static void *_p_FXVerticalSeparatorTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXFrame *) ((FXVerticalSeparator *) x));
}
static void *_p_FXComboBoxTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXComboBox *) x));
}
static void *_p_FXVerticalFrameTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXVerticalFrame *) x));
}
static void *_p_FXHorizontalFrameTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXHorizontalFrame *) x));
}
static void *_p_FX4SplitterTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *) ((FX4Splitter *) x));
}
static void *_p_FXSplitterTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *) ((FXSplitter *) x));
}
static void *_p_FXBitmapTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *) ((FXBitmap *) x));
}
static void *_p_FXPackerTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *) ((FXPacker *) x));
}
static void *_p_FXSpinnerTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXSpinner *) x));
}
static void *_p_FXColorWheelTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXFrame *) ((FXColorWheel *) x));
}
static void *_p_FXPCXImageTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXImage *) ((FXPCXImage *) x));
}
static void *_p_FXFontTo_p_FXId(void *x) {
    return (void *)((FXId *)  ((FXFont *) x));
}
static void *_p_FXDirBoxTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *)(FXTreeListBox *) ((FXDirBox *) x));
}
static void *_p_FXToolbarGripTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *) ((FXToolbarGrip *) x));
}
static void *_p_FXDragCornerTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *) ((FXDragCorner *) x));
}
static void *_p_FXSwitcherTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXSwitcher *) x));
}
static void *_p_FXDirSelectorTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXDirSelector *) x));
}
static void *_p_FXFileSelectorTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXFileSelector *) x));
}
static void *_p_FXColorSelectorTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXColorSelector *) x));
}
static void *_p_FXFontSelectorTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXFontSelector *) x));
}
static void *_p_FXShutterTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *)(FXVerticalFrame *) ((FXShutter *) x));
}
static void *_p_FXRGBImageTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXImage *) ((FXRGBImage *) x));
}
static void *_p_FXDrawableTo_p_FXId(void *x) {
    return (void *)((FXId *)  ((FXDrawable *) x));
}
static void *_p_FXCursorTo_p_FXId(void *x) {
    return (void *)((FXId *)  ((FXCursor *) x));
}
static void *_p_FXCURCursorTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXCursor *) ((FXCURCursor *) x));
}
static void *_p_FXGIFCursorTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXCursor *) ((FXGIFCursor *) x));
}
static void *_p_FXProgressBarTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXFrame *) ((FXProgressBar *) x));
}
static void *_p_FXICOImageTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXImage *) ((FXICOImage *) x));
}
static void *_p_FXListBoxTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXListBox *) x));
}
static void *_p_FXTreeListBoxTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXTreeListBox *) x));
}
static void *_p_FXHeaderTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXFrame *) ((FXHeader *) x));
}
static void *_p_FXMatrixTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXMatrix *) x));
}
static void *_p_FXColorWellTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXFrame *) ((FXColorWell *) x));
}
static void *_p_FXShutterItemTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *)(FXVerticalFrame *) ((FXShutterItem *) x));
}
static void *_p_FXToolbarTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXToolbar *) x));
}
static void *_p_FXDialTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXFrame *) ((FXDial *) x));
}
static void *_p_FXTooltipTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXShell *) ((FXTooltip *) x));
}
static void *_p_FXGIFImageTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXImage *) ((FXGIFImage *) x));
}
static void *_p_FXTIFImageTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXImage *) ((FXTIFImage *) x));
}
static void *_p_FXFrameTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *) ((FXFrame *) x));
}
static void *_p_FXTabBarTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXTabBar *) x));
}
static void *_p_FXStatusbarTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *)(FXHorizontalFrame *) ((FXStatusbar *) x));
}
static void *_p_FXImageViewTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXScrollArea *) ((FXImageView *) x));
}
static void *_p_FXSliderTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXFrame *) ((FXSlider *) x));
}
static void *_p_FXVisualTo_p_FXId(void *x) {
    return (void *)((FXId *)  ((FXVisual *) x));
}
static void *_p_FXColorBarTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXFrame *) ((FXColorBar *) x));
}
static void *_p_FXToolbarShellTo_p_FXId(void *x) {
    return (void *)((FXId *) (FXDrawable *)(FXWindow *)(FXComposite *)(FXShell *)(FXTopWindow *) ((FXToolbarShell *) x));
}
static void *_p_FXDocumentTo_p_FXObject(void *x) {
    return (void *)((FXObject *)  ((FXDocument *) x));
}
static void *_p_FXRegistryTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXDict *)(FXSettings *) ((FXRegistry *) x));
}
static void *_p_FXHeaderItemTo_p_FXObject(void *x) {
    return (void *)((FXObject *)  ((FXHeaderItem *) x));
}
static void *_p_FXShutterItemTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *)(FXVerticalFrame *) ((FXShutterItem *) x));
}
static void *_p_FXColorBarTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXFrame *) ((FXColorBar *) x));
}
static void *_p_FXTabBarTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXTabBar *) x));
}
static void *_p_FXSwitcherTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXSwitcher *) x));
}
static void *_p_FXTextFieldTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXFrame *) ((FXTextField *) x));
}
static void *_p_FXRGBImageTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXImage *) ((FXRGBImage *) x));
}
static void *_p_FXDriveBoxTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *)(FXListBox *) ((FXDriveBox *) x));
}
static void *_p_FXIconDictTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXDict *) ((FXIconDict *) x));
}
static void *_p_FXBMPImageTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXImage *) ((FXBMPImage *) x));
}
static void *_p_FXMatrixTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXMatrix *) x));
}
static void *_p_FXFileDictTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXDict *) ((FXFileDict *) x));
}
static void *_p_FXRecentFilesTo_p_FXObject(void *x) {
    return (void *)((FXObject *)  ((FXRecentFiles *) x));
}
static void *_p_FXScrollCornerTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *) ((FXScrollCorner *) x));
}
static void *_p_FXArrowButtonTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXFrame *) ((FXArrowButton *) x));
}
static void *_p_FXPopupTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXShell *) ((FXPopup *) x));
}
static void *_p_FXTooltipTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXShell *) ((FXTooltip *) x));
}
static void *_p_FXDrawableTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *) ((FXDrawable *) x));
}
static void *_p_FXPCXImageTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXImage *) ((FXPCXImage *) x));
}
static void *_p_FXAppTo_p_FXObject(void *x) {
    return (void *)((FXObject *)  ((FXApp *) x));
}
static void *_p_FXHeaderTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXFrame *) ((FXHeader *) x));
}
static void *_p_FX4SplitterTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *) ((FX4Splitter *) x));
}
static void *_p_FXSplitterTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *) ((FXSplitter *) x));
}
static void *_p_FXPackerTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *) ((FXPacker *) x));
}
static void *_p_FXTabBookTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *)(FXTabBar *) ((FXTabBook *) x));
}
static void *_p_FXVerticalSeparatorTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXFrame *) ((FXVerticalSeparator *) x));
}
static void *_p_FXHorizontalSeparatorTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXFrame *) ((FXHorizontalSeparator *) x));
}
static void *_p_FXScrollbarTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *) ((FXScrollbar *) x));
}
static void *_p_FXIdTo_p_FXObject(void *x) {
    return (void *)((FXObject *)  ((FXId *) x));
}
static void *_p_FXProgressBarTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXFrame *) ((FXProgressBar *) x));
}
static void *_p_FXShutterTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *)(FXVerticalFrame *) ((FXShutter *) x));
}
static void *_p_FXTGAImageTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXImage *) ((FXTGAImage *) x));
}
static void *_p_FXStatusbarTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *)(FXHorizontalFrame *) ((FXStatusbar *) x));
}
static void *_p_FXCompositeTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *) ((FXComposite *) x));
}
static void *_p_FXICOImageTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXImage *) ((FXICOImage *) x));
}
static void *_p_FXSliderTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXFrame *) ((FXSlider *) x));
}
static void *_p_FXSettingsTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXDict *) ((FXSettings *) x));
}
static void *_p_FXGroupBoxTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXGroupBox *) x));
}
static void *_p_FXDebugTargetTo_p_FXObject(void *x) {
    return (void *)((FXObject *)  ((FXDebugTarget *) x));
}
static void *_p_FXDataTargetTo_p_FXObject(void *x) {
    return (void *)((FXObject *)  ((FXDataTarget *) x));
}
static void *_p_FXXPMImageTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXImage *) ((FXXPMImage *) x));
}
static void *_p_FXTreeListBoxTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXTreeListBox *) x));
}
static void *_p_FXListBoxTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXListBox *) x));
}
static void *_p_FXCanvasTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *) ((FXCanvas *) x));
}
static void *_p_FXColorWheelTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXFrame *) ((FXColorWheel *) x));
}
static void *_p_FXVisualTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *) ((FXVisual *) x));
}
static void *_p_FXToolbarGripTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *) ((FXToolbarGrip *) x));
}
static void *_p_FXFontTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *) ((FXFont *) x));
}
static void *_p_FXComboBoxTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXComboBox *) x));
}
static void *_p_FXImageTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *) ((FXImage *) x));
}
static void *_p_FXFrameTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *) ((FXFrame *) x));
}
static void *_p_FXJPGImageTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXImage *) ((FXJPGImage *) x));
}
static void *_p_FXPNGImageTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXImage *) ((FXPNGImage *) x));
}
static void *_p_FXGIFImageTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXImage *) ((FXGIFImage *) x));
}
static void *_p_FXTIFImageTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXImage *) ((FXTIFImage *) x));
}
static void *_p_FXStringDictTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXDict *) ((FXStringDict *) x));
}
static void *_p_FXDelegatorTo_p_FXObject(void *x) {
    return (void *)((FXObject *)  ((FXDelegator *) x));
}
static void *_p_FXAccelTableTo_p_FXObject(void *x) {
    return (void *)((FXObject *)  ((FXAccelTable *) x));
}
static void *_p_FXToolbarTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXToolbar *) x));
}
static void *_p_FXCursorTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *) ((FXCursor *) x));
}
static void *_p_FXCURCursorTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXCursor *) ((FXCURCursor *) x));
}
static void *_p_FXGIFCursorTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXCursor *) ((FXGIFCursor *) x));
}
static void *_p_FXSpinnerTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXSpinner *) x));
}
static void *_p_FXScrollWindowTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXScrollArea *) ((FXScrollWindow *) x));
}
static void *_p_FXWindowTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *) ((FXWindow *) x));
}
static void *_p_FXRootWindowTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *) ((FXRootWindow *) x));
}
static void *_p_FXTopWindowTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXShell *) ((FXTopWindow *) x));
}
static void *_p_FXMainWindowTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXShell *)(FXTopWindow *) ((FXMainWindow *) x));
}
static void *_p_FXToolbarTabTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXFrame *) ((FXToolbarTab *) x));
}
static void *_p_FXDictTo_p_FXObject(void *x) {
    return (void *)((FXObject *)  ((FXDict *) x));
}
static void *_p_FXShellTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *) ((FXShell *) x));
}
static void *_p_FXBitmapTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *) ((FXBitmap *) x));
}
static void *_p_FXScrollAreaTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *) ((FXScrollArea *) x));
}
static void *_p_FXColorWellTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXFrame *) ((FXColorWell *) x));
}
static void *_p_FXDragCornerTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *) ((FXDragCorner *) x));
}
static void *_p_FXStatuslineTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXFrame *) ((FXStatusline *) x));
}
static void *_p_FXDialTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXFrame *) ((FXDial *) x));
}
static void *_p_FXHorizontalFrameTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXHorizontalFrame *) x));
}
static void *_p_FXVerticalFrameTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXVerticalFrame *) x));
}
static void *_p_FXImageViewTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXScrollArea *) ((FXImageView *) x));
}
static void *_p_FXFontSelectorTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXFontSelector *) x));
}
static void *_p_FXColorSelectorTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXColorSelector *) x));
}
static void *_p_FXFileSelectorTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXFileSelector *) x));
}
static void *_p_FXDirSelectorTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *) ((FXDirSelector *) x));
}
static void *_p_FXToolbarShellTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXShell *)(FXTopWindow *) ((FXToolbarShell *) x));
}
static void *_p_FXDirBoxTo_p_FXObject(void *x) {
    return (void *)((FXObject *) (FXId *)(FXDrawable *)(FXWindow *)(FXComposite *)(FXPacker *)(FXTreeListBox *) ((FXDirBox *) x));
}
static void *_p_FXFileStreamTo_p_FXStream(void *x) {
    return (void *)((FXStream *)  ((FXFileStream *) x));
}
static void *_p_FXMemoryStreamTo_p_FXStream(void *x) {
    return (void *)((FXStream *)  ((FXMemoryStream *) x));
}
static void *_p_FXJPGImageTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXImage *) ((FXJPGImage *) x));
}
static void *_p_FXPNGImageTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXImage *) ((FXPNGImage *) x));
}
static void *_p_FXDriveBoxTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *)(FXListBox *) ((FXDriveBox *) x));
}
static void *_p_FXToolbarTabTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXFrame *) ((FXToolbarTab *) x));
}
static void *_p_FXScrollbarTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *) ((FXScrollbar *) x));
}
static void *_p_FXTGAImageTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXImage *) ((FXTGAImage *) x));
}
static void *_p_FXCompositeTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *) ((FXComposite *) x));
}
static void *_p_FXTextFieldTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXFrame *) ((FXTextField *) x));
}
static void *_p_FXStatuslineTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXFrame *) ((FXStatusline *) x));
}
static void *_p_FXTabBookTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *)(FXTabBar *) ((FXTabBook *) x));
}
static void *_p_FXBMPImageTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXImage *) ((FXBMPImage *) x));
}
static void *_p_FXArrowButtonTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXFrame *) ((FXArrowButton *) x));
}
static void *_p_FXImageTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *)  ((FXImage *) x));
}
static void *_p_FXGroupBoxTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXGroupBox *) x));
}
static void *_p_FXShellTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *) ((FXShell *) x));
}
static void *_p_FXScrollAreaTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *) ((FXScrollArea *) x));
}
static void *_p_FXPopupTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXShell *) ((FXPopup *) x));
}
static void *_p_FXScrollWindowTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXScrollArea *) ((FXScrollWindow *) x));
}
static void *_p_FXWindowTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *)  ((FXWindow *) x));
}
static void *_p_FXRootWindowTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *) ((FXRootWindow *) x));
}
static void *_p_FXTopWindowTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXShell *) ((FXTopWindow *) x));
}
static void *_p_FXMainWindowTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXShell *)(FXTopWindow *) ((FXMainWindow *) x));
}
static void *_p_FXCanvasTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *) ((FXCanvas *) x));
}
static void *_p_FXScrollCornerTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *) ((FXScrollCorner *) x));
}
static void *_p_FXXPMImageTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXImage *) ((FXXPMImage *) x));
}
static void *_p_FXVerticalSeparatorTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXFrame *) ((FXVerticalSeparator *) x));
}
static void *_p_FXHorizontalSeparatorTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXFrame *) ((FXHorizontalSeparator *) x));
}
static void *_p_FXComboBoxTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXComboBox *) x));
}
static void *_p_FXHorizontalFrameTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXHorizontalFrame *) x));
}
static void *_p_FXVerticalFrameTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXVerticalFrame *) x));
}
static void *_p_FX4SplitterTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *) ((FX4Splitter *) x));
}
static void *_p_FXSplitterTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *) ((FXSplitter *) x));
}
static void *_p_FXBitmapTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *)  ((FXBitmap *) x));
}
static void *_p_FXPackerTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *) ((FXPacker *) x));
}
static void *_p_FXSpinnerTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXSpinner *) x));
}
static void *_p_FXColorWheelTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXFrame *) ((FXColorWheel *) x));
}
static void *_p_FXPCXImageTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXImage *) ((FXPCXImage *) x));
}
static void *_p_FXDirBoxTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *)(FXTreeListBox *) ((FXDirBox *) x));
}
static void *_p_FXToolbarGripTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *) ((FXToolbarGrip *) x));
}
static void *_p_FXDragCornerTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *) ((FXDragCorner *) x));
}
static void *_p_FXSwitcherTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXSwitcher *) x));
}
static void *_p_FXDirSelectorTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXDirSelector *) x));
}
static void *_p_FXFileSelectorTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXFileSelector *) x));
}
static void *_p_FXColorSelectorTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXColorSelector *) x));
}
static void *_p_FXFontSelectorTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXFontSelector *) x));
}
static void *_p_FXShutterTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *)(FXVerticalFrame *) ((FXShutter *) x));
}
static void *_p_FXRGBImageTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXImage *) ((FXRGBImage *) x));
}
static void *_p_FXProgressBarTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXFrame *) ((FXProgressBar *) x));
}
static void *_p_FXICOImageTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXImage *) ((FXICOImage *) x));
}
static void *_p_FXListBoxTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXListBox *) x));
}
static void *_p_FXTreeListBoxTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXTreeListBox *) x));
}
static void *_p_FXHeaderTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXFrame *) ((FXHeader *) x));
}
static void *_p_FXMatrixTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXMatrix *) x));
}
static void *_p_FXColorWellTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXFrame *) ((FXColorWell *) x));
}
static void *_p_FXShutterItemTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *)(FXVerticalFrame *) ((FXShutterItem *) x));
}
static void *_p_FXToolbarTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXToolbar *) x));
}
static void *_p_FXDialTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXFrame *) ((FXDial *) x));
}
static void *_p_FXTooltipTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXShell *) ((FXTooltip *) x));
}
static void *_p_FXGIFImageTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXImage *) ((FXGIFImage *) x));
}
static void *_p_FXTIFImageTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXImage *) ((FXTIFImage *) x));
}
static void *_p_FXFrameTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *) ((FXFrame *) x));
}
static void *_p_FXTabBarTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *) ((FXTabBar *) x));
}
static void *_p_FXStatusbarTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXPacker *)(FXHorizontalFrame *) ((FXStatusbar *) x));
}
static void *_p_FXImageViewTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXScrollArea *) ((FXImageView *) x));
}
static void *_p_FXSliderTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXFrame *) ((FXSlider *) x));
}
static void *_p_FXColorBarTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXFrame *) ((FXColorBar *) x));
}
static void *_p_FXToolbarShellTo_p_FXDrawable(void *x) {
    return (void *)((FXDrawable *) (FXWindow *)(FXComposite *)(FXShell *)(FXTopWindow *) ((FXToolbarShell *) x));
}
static void *_p_FXBMPImageTo_p_FXImage(void *x) {
    return (void *)((FXImage *)  ((FXBMPImage *) x));
}
static void *_p_FXRGBImageTo_p_FXImage(void *x) {
    return (void *)((FXImage *)  ((FXRGBImage *) x));
}
static void *_p_FXXPMImageTo_p_FXImage(void *x) {
    return (void *)((FXImage *)  ((FXXPMImage *) x));
}
static void *_p_FXGIFImageTo_p_FXImage(void *x) {
    return (void *)((FXImage *)  ((FXGIFImage *) x));
}
static void *_p_FXTIFImageTo_p_FXImage(void *x) {
    return (void *)((FXImage *)  ((FXTIFImage *) x));
}
static void *_p_FXJPGImageTo_p_FXImage(void *x) {
    return (void *)((FXImage *)  ((FXJPGImage *) x));
}
static void *_p_FXPCXImageTo_p_FXImage(void *x) {
    return (void *)((FXImage *)  ((FXPCXImage *) x));
}
static void *_p_FXPNGImageTo_p_FXImage(void *x) {
    return (void *)((FXImage *)  ((FXPNGImage *) x));
}
static void *_p_FXICOImageTo_p_FXImage(void *x) {
    return (void *)((FXImage *)  ((FXICOImage *) x));
}
static void *_p_FXTGAImageTo_p_FXImage(void *x) {
    return (void *)((FXImage *)  ((FXTGAImage *) x));
}
static swig_type_info _swigt__p_FXObject[] = {{"_p_FXObject", 0, "FXObject *", 0},{"_p_FXDocument", _p_FXDocumentTo_p_FXObject},{"_p_FXRegistry", _p_FXRegistryTo_p_FXObject},{"_p_FXHeaderItem", _p_FXHeaderItemTo_p_FXObject},{"_p_FXShutterItem", _p_FXShutterItemTo_p_FXObject},{"_p_FXColorBar", _p_FXColorBarTo_p_FXObject},{"_p_FXTabBar", _p_FXTabBarTo_p_FXObject},{"_p_FXRGBImage", _p_FXRGBImageTo_p_FXObject},{"_p_FXSwitcher", _p_FXSwitcherTo_p_FXObject},{"_p_FXTextField", _p_FXTextFieldTo_p_FXObject},{"_p_FXDriveBox", _p_FXDriveBoxTo_p_FXObject},{"_p_FXIconDict", _p_FXIconDictTo_p_FXObject},{"_p_FXBMPImage", _p_FXBMPImageTo_p_FXObject},{"_p_FXMatrix", _p_FXMatrixTo_p_FXObject},{"_p_FXFileDict", _p_FXFileDictTo_p_FXObject},{"_p_FXRecentFiles", _p_FXRecentFilesTo_p_FXObject},{"_p_FXScrollCorner", _p_FXScrollCornerTo_p_FXObject},{"_p_FXArrowButton", _p_FXArrowButtonTo_p_FXObject},{"_p_FXPopup", _p_FXPopupTo_p_FXObject},{"_p_FXTooltip", _p_FXTooltipTo_p_FXObject},{"_p_FXDrawable", _p_FXDrawableTo_p_FXObject},{"_p_FXFont", _p_FXFontTo_p_FXObject},{"_p_FXPCXImage", _p_FXPCXImageTo_p_FXObject},{"_p_FXHeader", _p_FXHeaderTo_p_FXObject},{"_p_FX4Splitter", _p_FX4SplitterTo_p_FXObject},{"_p_FXSplitter", _p_FXSplitterTo_p_FXObject},{"_p_FXPacker", _p_FXPackerTo_p_FXObject},{"_p_FXTabBook", _p_FXTabBookTo_p_FXObject},{"_p_FXApp", _p_FXAppTo_p_FXObject},{"_p_FXVerticalSeparator", _p_FXVerticalSeparatorTo_p_FXObject},{"_p_FXHorizontalSeparator", _p_FXHorizontalSeparatorTo_p_FXObject},{"_p_FXScrollbar", _p_FXScrollbarTo_p_FXObject},{"_p_FXProgressBar", _p_FXProgressBarTo_p_FXObject},{"_p_FXShutter", _p_FXShutterTo_p_FXObject},{"_p_FXTGAImage", _p_FXTGAImageTo_p_FXObject},{"_p_FXStatusbar", _p_FXStatusbarTo_p_FXObject},{"_p_FXComposite", _p_FXCompositeTo_p_FXObject},{"_p_FXDict", _p_FXDictTo_p_FXObject},{"_p_FXICOImage", _p_FXICOImageTo_p_FXObject},{"_p_FXSlider", _p_FXSliderTo_p_FXObject},{"_p_FXSettings", _p_FXSettingsTo_p_FXObject},{"_p_FXGroupBox", _p_FXGroupBoxTo_p_FXObject},{"_p_FXDataTarget", _p_FXDataTargetTo_p_FXObject},{"_p_FXDebugTarget", _p_FXDebugTargetTo_p_FXObject},{"_p_FXXPMImage", _p_FXXPMImageTo_p_FXObject},{"_p_FXTreeListBox", _p_FXTreeListBoxTo_p_FXObject},{"_p_FXListBox", _p_FXListBoxTo_p_FXObject},{"_p_FXCanvas", _p_FXCanvasTo_p_FXObject},{"_p_FXId", _p_FXIdTo_p_FXObject},{"_p_FXColorWheel", _p_FXColorWheelTo_p_FXObject},{"_p_FXDial", _p_FXDialTo_p_FXObject},{"_p_FXToolbarGrip", _p_FXToolbarGripTo_p_FXObject},{"_p_FXVisual", _p_FXVisualTo_p_FXObject},{"_p_FXComboBox", _p_FXComboBoxTo_p_FXObject},{"_p_FXImage", _p_FXImageTo_p_FXObject},{"_p_FXFrame", _p_FXFrameTo_p_FXObject},{"_p_FXJPGImage", _p_FXJPGImageTo_p_FXObject},{"_p_FXPNGImage", _p_FXPNGImageTo_p_FXObject},{"_p_FXGIFImage", _p_FXGIFImageTo_p_FXObject},{"_p_FXTIFImage", _p_FXTIFImageTo_p_FXObject},{"_p_FXStringDict", _p_FXStringDictTo_p_FXObject},{"_p_FXDelegator", _p_FXDelegatorTo_p_FXObject},{"_p_FXAccelTable", _p_FXAccelTableTo_p_FXObject},{"_p_FXToolbar", _p_FXToolbarTo_p_FXObject},{"_p_FXObject"},{"_p_FXGIFCursor", _p_FXGIFCursorTo_p_FXObject},{"_p_FXCURCursor", _p_FXCURCursorTo_p_FXObject},{"_p_FXCursor", _p_FXCursorTo_p_FXObject},{"_p_FXSpinner", _p_FXSpinnerTo_p_FXObject},{"_p_FXScrollWindow", _p_FXScrollWindowTo_p_FXObject},{"_p_FXWindow", _p_FXWindowTo_p_FXObject},{"_p_FXRootWindow", _p_FXRootWindowTo_p_FXObject},{"_p_FXTopWindow", _p_FXTopWindowTo_p_FXObject},{"_p_FXMainWindow", _p_FXMainWindowTo_p_FXObject},{"_p_FXToolbarTab", _p_FXToolbarTabTo_p_FXObject},{"_p_FXShell", _p_FXShellTo_p_FXObject},{"_p_FXBitmap", _p_FXBitmapTo_p_FXObject},{"_p_FXScrollArea", _p_FXScrollAreaTo_p_FXObject},{"_p_FXColorWell", _p_FXColorWellTo_p_FXObject},{"_p_FXDragCorner", _p_FXDragCornerTo_p_FXObject},{"_p_FXStatusline", _p_FXStatuslineTo_p_FXObject},{"_p_FXHorizontalFrame", _p_FXHorizontalFrameTo_p_FXObject},{"_p_FXVerticalFrame", _p_FXVerticalFrameTo_p_FXObject},{"_p_FXImageView", _p_FXImageViewTo_p_FXObject},{"_p_FXFontSelector", _p_FXFontSelectorTo_p_FXObject},{"_p_FXColorSelector", _p_FXColorSelectorTo_p_FXObject},{"_p_FXFileSelector", _p_FXFileSelectorTo_p_FXObject},{"_p_FXDirSelector", _p_FXDirSelectorTo_p_FXObject},{"_p_FXToolbarShell", _p_FXToolbarShellTo_p_FXObject},{"_p_FXDirBox", _p_FXDirBoxTo_p_FXObject},{0}};
static swig_type_info _swigt__p_FXRGBImage[] = {{"_p_FXRGBImage", 0, "FXRGBImage *", 0},{"_p_FXRGBImage"},{0}};
static swig_type_info _swigt__p_FXuchar[] = {{"_p_FXuchar", 0, "FXuchar const *", 0},{"_p_FXuchar"},{0}};
static swig_type_info _swigt__p_FXBitmap[] = {{"_p_FXBitmap", 0, "FXBitmap *", 0},{"_p_FXBitmap"},{0}};
static swig_type_info _swigt__p_FXId[] = {{"_p_FXId", 0, "FXId *", 0},{"_p_FXShutterItem", _p_FXShutterItemTo_p_FXId},{"_p_FXColorBar", _p_FXColorBarTo_p_FXId},{"_p_FXTabBar", _p_FXTabBarTo_p_FXId},{"_p_FXRGBImage", _p_FXRGBImageTo_p_FXId},{"_p_FXSwitcher", _p_FXSwitcherTo_p_FXId},{"_p_FXTextField", _p_FXTextFieldTo_p_FXId},{"_p_FXDriveBox", _p_FXDriveBoxTo_p_FXId},{"_p_FXBMPImage", _p_FXBMPImageTo_p_FXId},{"_p_FXMatrix", _p_FXMatrixTo_p_FXId},{"_p_FXScrollCorner", _p_FXScrollCornerTo_p_FXId},{"_p_FXArrowButton", _p_FXArrowButtonTo_p_FXId},{"_p_FXPopup", _p_FXPopupTo_p_FXId},{"_p_FXTooltip", _p_FXTooltipTo_p_FXId},{"_p_FXDrawable", _p_FXDrawableTo_p_FXId},{"_p_FXFont", _p_FXFontTo_p_FXId},{"_p_FXPCXImage", _p_FXPCXImageTo_p_FXId},{"_p_FXHeader", _p_FXHeaderTo_p_FXId},{"_p_FX4Splitter", _p_FX4SplitterTo_p_FXId},{"_p_FXSplitter", _p_FXSplitterTo_p_FXId},{"_p_FXPacker", _p_FXPackerTo_p_FXId},{"_p_FXTabBook", _p_FXTabBookTo_p_FXId},{"_p_FXVerticalSeparator", _p_FXVerticalSeparatorTo_p_FXId},{"_p_FXHorizontalSeparator", _p_FXHorizontalSeparatorTo_p_FXId},{"_p_FXScrollbar", _p_FXScrollbarTo_p_FXId},{"_p_FXProgressBar", _p_FXProgressBarTo_p_FXId},{"_p_FXShutter", _p_FXShutterTo_p_FXId},{"_p_FXTGAImage", _p_FXTGAImageTo_p_FXId},{"_p_FXStatusbar", _p_FXStatusbarTo_p_FXId},{"_p_FXComposite", _p_FXCompositeTo_p_FXId},{"_p_FXICOImage", _p_FXICOImageTo_p_FXId},{"_p_FXSlider", _p_FXSliderTo_p_FXId},{"_p_FXGroupBox", _p_FXGroupBoxTo_p_FXId},{"_p_FXXPMImage", _p_FXXPMImageTo_p_FXId},{"_p_FXTreeListBox", _p_FXTreeListBoxTo_p_FXId},{"_p_FXListBox", _p_FXListBoxTo_p_FXId},{"_p_FXCanvas", _p_FXCanvasTo_p_FXId},{"_p_FXId"},{"_p_FXColorWheel", _p_FXColorWheelTo_p_FXId},{"_p_FXDial", _p_FXDialTo_p_FXId},{"_p_FXVisual", _p_FXVisualTo_p_FXId},{"_p_FXToolbarGrip", _p_FXToolbarGripTo_p_FXId},{"_p_FXComboBox", _p_FXComboBoxTo_p_FXId},{"_p_FXImage", _p_FXImageTo_p_FXId},{"_p_FXFrame", _p_FXFrameTo_p_FXId},{"_p_FXJPGImage", _p_FXJPGImageTo_p_FXId},{"_p_FXPNGImage", _p_FXPNGImageTo_p_FXId},{"_p_FXGIFImage", _p_FXGIFImageTo_p_FXId},{"_p_FXTIFImage", _p_FXTIFImageTo_p_FXId},{"_p_FXToolbar", _p_FXToolbarTo_p_FXId},{"_p_FXCursor", _p_FXCursorTo_p_FXId},{"_p_FXCURCursor", _p_FXCURCursorTo_p_FXId},{"_p_FXGIFCursor", _p_FXGIFCursorTo_p_FXId},{"_p_FXSpinner", _p_FXSpinnerTo_p_FXId},{"_p_FXScrollWindow", _p_FXScrollWindowTo_p_FXId},{"_p_FXWindow", _p_FXWindowTo_p_FXId},{"_p_FXRootWindow", _p_FXRootWindowTo_p_FXId},{"_p_FXTopWindow", _p_FXTopWindowTo_p_FXId},{"_p_FXMainWindow", _p_FXMainWindowTo_p_FXId},{"_p_FXToolbarTab", _p_FXToolbarTabTo_p_FXId},{"_p_FXShell", _p_FXShellTo_p_FXId},{"_p_FXBitmap", _p_FXBitmapTo_p_FXId},{"_p_FXScrollArea", _p_FXScrollAreaTo_p_FXId},{"_p_FXColorWell", _p_FXColorWellTo_p_FXId},{"_p_FXDragCorner", _p_FXDragCornerTo_p_FXId},{"_p_FXStatusline", _p_FXStatuslineTo_p_FXId},{"_p_FXHorizontalFrame", _p_FXHorizontalFrameTo_p_FXId},{"_p_FXVerticalFrame", _p_FXVerticalFrameTo_p_FXId},{"_p_FXImageView", _p_FXImageViewTo_p_FXId},{"_p_FXFontSelector", _p_FXFontSelectorTo_p_FXId},{"_p_FXColorSelector", _p_FXColorSelectorTo_p_FXId},{"_p_FXFileSelector", _p_FXFileSelectorTo_p_FXId},{"_p_FXDirSelector", _p_FXDirSelectorTo_p_FXId},{"_p_FXToolbarShell", _p_FXToolbarShellTo_p_FXId},{"_p_FXDirBox", _p_FXDirBoxTo_p_FXId},{0}};
static swig_type_info _swigt__p_p_FXchar[] = {{"_p_p_FXchar", 0, "FXchar const **", 0},{"_p_p_FXchar"},{0}};
static swig_type_info _swigt__p_FXStream[] = {{"_p_FXStream", 0, "FXStream *", 0},{"_p_FXFileStream", _p_FXFileStreamTo_p_FXStream},{"_p_FXMemoryStream", _p_FXMemoryStreamTo_p_FXStream},{"_p_FXStream"},{0}};
static swig_type_info _swigt__p_FXDrawable[] = {{"_p_FXDrawable", 0, "FXDrawable *", 0},{"_p_FXJPGImage", _p_FXJPGImageTo_p_FXDrawable},{"_p_FXPNGImage", _p_FXPNGImageTo_p_FXDrawable},{"_p_FXDriveBox", _p_FXDriveBoxTo_p_FXDrawable},{"_p_FXTGAImage", _p_FXTGAImageTo_p_FXDrawable},{"_p_FXDial", _p_FXDialTo_p_FXDrawable},{"_p_FXToolbarTab", _p_FXToolbarTabTo_p_FXDrawable},{"_p_FXScrollbar", _p_FXScrollbarTo_p_FXDrawable},{"_p_FXComposite", _p_FXCompositeTo_p_FXDrawable},{"_p_FXBMPImage", _p_FXBMPImageTo_p_FXDrawable},{"_p_FXTextField", _p_FXTextFieldTo_p_FXDrawable},{"_p_FXTabBook", _p_FXTabBookTo_p_FXDrawable},{"_p_FXStatusline", _p_FXStatuslineTo_p_FXDrawable},{"_p_FXImage", _p_FXImageTo_p_FXDrawable},{"_p_FXArrowButton", _p_FXArrowButtonTo_p_FXDrawable},{"_p_FXGroupBox", _p_FXGroupBoxTo_p_FXDrawable},{"_p_FXShell", _p_FXShellTo_p_FXDrawable},{"_p_FXScrollArea", _p_FXScrollAreaTo_p_FXDrawable},{"_p_FXPopup", _p_FXPopupTo_p_FXDrawable},{"_p_FXScrollCorner", _p_FXScrollCornerTo_p_FXDrawable},{"_p_FXXPMImage", _p_FXXPMImageTo_p_FXDrawable},{"_p_FXScrollWindow", _p_FXScrollWindowTo_p_FXDrawable},{"_p_FXWindow", _p_FXWindowTo_p_FXDrawable},{"_p_FXRootWindow", _p_FXRootWindowTo_p_FXDrawable},{"_p_FXTopWindow", _p_FXTopWindowTo_p_FXDrawable},{"_p_FXMainWindow", _p_FXMainWindowTo_p_FXDrawable},{"_p_FXCanvas", _p_FXCanvasTo_p_FXDrawable},{"_p_FXVerticalSeparator", _p_FXVerticalSeparatorTo_p_FXDrawable},{"_p_FXHorizontalSeparator", _p_FXHorizontalSeparatorTo_p_FXDrawable},{"_p_FXComboBox", _p_FXComboBoxTo_p_FXDrawable},{"_p_FXVerticalFrame", _p_FXVerticalFrameTo_p_FXDrawable},{"_p_FXHorizontalFrame", _p_FXHorizontalFrameTo_p_FXDrawable},{"_p_FXSplitter", _p_FXSplitterTo_p_FXDrawable},{"_p_FX4Splitter", _p_FX4SplitterTo_p_FXDrawable},{"_p_FXBitmap", _p_FXBitmapTo_p_FXDrawable},{"_p_FXPacker", _p_FXPackerTo_p_FXDrawable},{"_p_FXSpinner", _p_FXSpinnerTo_p_FXDrawable},{"_p_FXPCXImage", _p_FXPCXImageTo_p_FXDrawable},{"_p_FXColorWheel", _p_FXColorWheelTo_p_FXDrawable},{"_p_FXDirBox", _p_FXDirBoxTo_p_FXDrawable},{"_p_FXToolbarGrip", _p_FXToolbarGripTo_p_FXDrawable},{"_p_FXDragCorner", _p_FXDragCornerTo_p_FXDrawable},{"_p_FXSwitcher", _p_FXSwitcherTo_p_FXDrawable},{"_p_FXDirSelector", _p_FXDirSelectorTo_p_FXDrawable},{"_p_FXFileSelector", _p_FXFileSelectorTo_p_FXDrawable},{"_p_FXColorSelector", _p_FXColorSelectorTo_p_FXDrawable},{"_p_FXFontSelector", _p_FXFontSelectorTo_p_FXDrawable},{"_p_FXRGBImage", _p_FXRGBImageTo_p_FXDrawable},{"_p_FXShutter", _p_FXShutterTo_p_FXDrawable},{"_p_FXICOImage", _p_FXICOImageTo_p_FXDrawable},{"_p_FXDrawable"},{"_p_FXProgressBar", _p_FXProgressBarTo_p_FXDrawable},{"_p_FXListBox", _p_FXListBoxTo_p_FXDrawable},{"_p_FXTreeListBox", _p_FXTreeListBoxTo_p_FXDrawable},{"_p_FXHeader", _p_FXHeaderTo_p_FXDrawable},{"_p_FXMatrix", _p_FXMatrixTo_p_FXDrawable},{"_p_FXColorWell", _p_FXColorWellTo_p_FXDrawable},{"_p_FXShutterItem", _p_FXShutterItemTo_p_FXDrawable},{"_p_FXToolbar", _p_FXToolbarTo_p_FXDrawable},{"_p_FXTIFImage", _p_FXTIFImageTo_p_FXDrawable},{"_p_FXGIFImage", _p_FXGIFImageTo_p_FXDrawable},{"_p_FXTooltip", _p_FXTooltipTo_p_FXDrawable},{"_p_FXFrame", _p_FXFrameTo_p_FXDrawable},{"_p_FXTabBar", _p_FXTabBarTo_p_FXDrawable},{"_p_FXStatusbar", _p_FXStatusbarTo_p_FXDrawable},{"_p_FXImageView", _p_FXImageViewTo_p_FXDrawable},{"_p_FXSlider", _p_FXSliderTo_p_FXDrawable},{"_p_FXColorBar", _p_FXColorBarTo_p_FXDrawable},{"_p_FXToolbarShell", _p_FXToolbarShellTo_p_FXDrawable},{0}};
static swig_type_info _swigt__p_FXGIFImage[] = {{"_p_FXGIFImage", 0, "FXGIFImage *", 0},{"_p_FXGIFImage"},{0}};
static swig_type_info _swigt__p_FXTIFImage[] = {{"_p_FXTIFImage", 0, "FXTIFImage *", 0},{"_p_FXTIFImage"},{0}};
static swig_type_info _swigt__p_FXICOImage[] = {{"_p_FXICOImage", 0, "FXICOImage *", 0},{"_p_FXICOImage"},{0}};
static swig_type_info _swigt__p_FXXPMImage[] = {{"_p_FXXPMImage", 0, "FXXPMImage *", 0},{"_p_FXXPMImage"},{0}};
static swig_type_info _swigt__p_FXPCXImage[] = {{"_p_FXPCXImage", 0, "FXPCXImage *", 0},{"_p_FXPCXImage"},{0}};
static swig_type_info _swigt__p_FXBMPImage[] = {{"_p_FXBMPImage", 0, "FXBMPImage *", 0},{"_p_FXBMPImage"},{0}};
static swig_type_info _swigt__p_FXApp[] = {{"_p_FXApp", 0, "FXApp *", 0},{"_p_FXApp"},{0}};
static swig_type_info _swigt__p_FXPNGImage[] = {{"_p_FXPNGImage", 0, "FXPNGImage *", 0},{"_p_FXPNGImage"},{0}};
static swig_type_info _swigt__p_FXJPGImage[] = {{"_p_FXJPGImage", 0, "FXJPGImage *", 0},{"_p_FXJPGImage"},{0}};
static swig_type_info _swigt__p_FXImage[] = {{"_p_FXImage", 0, "FXImage *", 0},{"_p_FXBMPImage", _p_FXBMPImageTo_p_FXImage},{"_p_FXRGBImage", _p_FXRGBImageTo_p_FXImage},{"_p_FXXPMImage", _p_FXXPMImageTo_p_FXImage},{"_p_FXImage"},{"_p_FXGIFImage", _p_FXGIFImageTo_p_FXImage},{"_p_FXTIFImage", _p_FXTIFImageTo_p_FXImage},{"_p_FXJPGImage", _p_FXJPGImageTo_p_FXImage},{"_p_FXPCXImage", _p_FXPCXImageTo_p_FXImage},{"_p_FXPNGImage", _p_FXPNGImageTo_p_FXImage},{"_p_FXICOImage", _p_FXICOImageTo_p_FXImage},{"_p_FXTGAImage", _p_FXTGAImageTo_p_FXImage},{0}};
static swig_type_info _swigt__p_FXMemoryBuffer[] = {{"_p_FXMemoryBuffer", 0, "FXMemoryBuffer *", 0},{"_p_FXMemoryBuffer"},{0}};
static swig_type_info _swigt__p_FXTGAImage[] = {{"_p_FXTGAImage", 0, "FXTGAImage *", 0},{"_p_FXTGAImage"},{0}};

static swig_type_info *swig_types_initial[] = {
_swigt__p_FXObject, 
_swigt__p_FXRGBImage, 
_swigt__p_FXuchar, 
_swigt__p_FXBitmap, 
_swigt__p_FXId, 
_swigt__p_p_FXchar, 
_swigt__p_FXStream, 
_swigt__p_FXDrawable, 
_swigt__p_FXGIFImage, 
_swigt__p_FXTIFImage, 
_swigt__p_FXICOImage, 
_swigt__p_FXXPMImage, 
_swigt__p_FXPCXImage, 
_swigt__p_FXBMPImage, 
_swigt__p_FXApp, 
_swigt__p_FXPNGImage, 
_swigt__p_FXJPGImage, 
_swigt__p_FXImage, 
_swigt__p_FXMemoryBuffer, 
_swigt__p_FXTGAImage, 
0
};


/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */


#ifdef __cplusplus
extern "C"
#endif
SWIGEXPORT(void) Init_image(void) {
    int i;
    
    SWIG_InitRuntime();
    
    for (i = 0; swig_types_initial[i]; i++) {
        swig_types[i] = SWIG_TypeRegister(swig_types_initial[i]);
        SWIG_define_class(swig_types[i]);
    }
    
    rb_define_const(mFox,"BITMAP_KEEP", INT2NUM(BITMAP_KEEP));
    rb_define_const(mFox,"BITMAP_OWNED", INT2NUM(BITMAP_OWNED));
    rb_define_const(mFox,"BITMAP_SHMI", INT2NUM(BITMAP_SHMI));
    rb_define_const(mFox,"BITMAP_SHMP", INT2NUM(BITMAP_SHMP));
    
    cFXBitmap.klass = rb_define_class_under(mFox, "FXBitmap", ((swig_class *) SWIGTYPE_p_FXDrawable->clientdata)->klass);
    SWIG_TypeClientData(SWIGTYPE_p_FXBitmap, (void *) &cFXBitmap);
    rb_define_alloc_func(cFXBitmap.klass, _wrap_FXBitmap_allocate);
    rb_define_method(cFXBitmap.klass, "initialize", VALUEFUNC(_wrap_new_FXBitmap), -1);
    rb_define_method(cFXBitmap.klass, "getPixel", VALUEFUNC(_wrap_FXBitmap_getPixel), -1);
    rb_define_method(cFXBitmap.klass, "setPixel", VALUEFUNC(_wrap_FXBitmap_setPixel), -1);
    rb_define_method(cFXBitmap.klass, "save", VALUEFUNC(_wrap_FXBitmap_save), -1);
    rb_define_method(cFXBitmap.klass, "load", VALUEFUNC(_wrap_FXBitmap_load), -1);
    rb_define_method(cFXBitmap.klass, "create", VALUEFUNC(_wrap_FXBitmap_create), -1);
    rb_define_method(cFXBitmap.klass, "detach", VALUEFUNC(_wrap_FXBitmap_detach), -1);
    rb_define_method(cFXBitmap.klass, "destroy", VALUEFUNC(_wrap_FXBitmap_destroy), -1);
    rb_define_method(cFXBitmap.klass, "resize", VALUEFUNC(_wrap_FXBitmap_resize), -1);
    rb_define_method(cFXBitmap.klass, "render", VALUEFUNC(_wrap_FXBitmap_render), -1);
    rb_define_method(cFXBitmap.klass, "savePixels", VALUEFUNC(_wrap_FXBitmap_savePixels), -1);
    rb_define_method(cFXBitmap.klass, "loadPixels", VALUEFUNC(_wrap_FXBitmap_loadPixels), -1);
    cFXBitmap.mark = (void (*)(void *)) FXRbBitmap::markfunc;
    cFXBitmap.destroy = (void (*)(void *)) FXRbObject::freefunc;
    
    cFXMemoryBuffer.klass = rb_define_class_under(mFox, "FXMemoryBuffer", rb_cObject);
    SWIG_TypeClientData(SWIGTYPE_p_FXMemoryBuffer, (void *) &cFXMemoryBuffer);
    rb_undef_alloc_func(cFXMemoryBuffer.klass);
    rb_define_method(cFXMemoryBuffer.klass, "getSize", VALUEFUNC(_wrap_FXMemoryBuffer_getSize), -1);
    rb_define_method(cFXMemoryBuffer.klass, "[]", VALUEFUNC(_wrap_FXMemoryBuffer___getitem__), -1);
    rb_define_method(cFXMemoryBuffer.klass, "[]=", VALUEFUNC(_wrap_FXMemoryBuffer___setitem__), -1);
    rb_define_method(cFXMemoryBuffer.klass, "to_s", VALUEFUNC(_wrap_FXMemoryBuffer_to_s), -1);
    cFXMemoryBuffer.mark = 0;
    cFXMemoryBuffer.destroy = (void (*)(void *)) free_FXMemoryBuffer;
    rb_define_const(mFox,"IMAGE_KEEP", INT2NUM(IMAGE_KEEP));
    rb_define_const(mFox,"IMAGE_OWNED", INT2NUM(IMAGE_OWNED));
    rb_define_const(mFox,"IMAGE_DITHER", INT2NUM(IMAGE_DITHER));
    rb_define_const(mFox,"IMAGE_NEAREST", INT2NUM(IMAGE_NEAREST));
    rb_define_const(mFox,"IMAGE_ALPHA", INT2NUM(IMAGE_ALPHA));
    rb_define_const(mFox,"IMAGE_OPAQUE", INT2NUM(IMAGE_OPAQUE));
    rb_define_const(mFox,"IMAGE_ALPHACOLOR", INT2NUM(IMAGE_ALPHACOLOR));
    rb_define_const(mFox,"IMAGE_SHMI", INT2NUM(IMAGE_SHMI));
    rb_define_const(mFox,"IMAGE_SHMP", INT2NUM(IMAGE_SHMP));
    rb_define_const(mFox,"IMAGE_ALPHAGUESS", INT2NUM(IMAGE_ALPHAGUESS));
    
    cFXImage.klass = rb_define_class_under(mFox, "FXImage", ((swig_class *) SWIGTYPE_p_FXDrawable->clientdata)->klass);
    SWIG_TypeClientData(SWIGTYPE_p_FXImage, (void *) &cFXImage);
    rb_define_alloc_func(cFXImage.klass, _wrap_FXImage_allocate);
    rb_define_method(cFXImage.klass, "initialize", VALUEFUNC(_wrap_new_FXImage), -1);
    rb_define_method(cFXImage.klass, "getData", VALUEFUNC(_wrap_FXImage_getData), -1);
    rb_define_method(cFXImage.klass, "getOptions", VALUEFUNC(_wrap_FXImage_getOptions), -1);
    rb_define_method(cFXImage.klass, "setOptions", VALUEFUNC(_wrap_FXImage_setOptions), -1);
    rb_define_method(cFXImage.klass, "getChannels", VALUEFUNC(_wrap_FXImage_getChannels), -1);
    rb_define_method(cFXImage.klass, "getPixel", VALUEFUNC(_wrap_FXImage_getPixel), -1);
    rb_define_method(cFXImage.klass, "setPixel", VALUEFUNC(_wrap_FXImage_setPixel), -1);
    rb_define_method(cFXImage.klass, "save", VALUEFUNC(_wrap_FXImage_save), -1);
    rb_define_method(cFXImage.klass, "load", VALUEFUNC(_wrap_FXImage_load), -1);
    rb_define_method(cFXImage.klass, "create", VALUEFUNC(_wrap_FXImage_create), -1);
    rb_define_method(cFXImage.klass, "detach", VALUEFUNC(_wrap_FXImage_detach), -1);
    rb_define_method(cFXImage.klass, "destroy", VALUEFUNC(_wrap_FXImage_destroy), -1);
    rb_define_method(cFXImage.klass, "resize", VALUEFUNC(_wrap_FXImage_resize), -1);
    rb_define_method(cFXImage.klass, "restore", VALUEFUNC(_wrap_FXImage_restore), -1);
    rb_define_method(cFXImage.klass, "render", VALUEFUNC(_wrap_FXImage_render), -1);
    rb_define_method(cFXImage.klass, "scale", VALUEFUNC(_wrap_FXImage_scale), -1);
    rb_define_method(cFXImage.klass, "mirror", VALUEFUNC(_wrap_FXImage_mirror), -1);
    rb_define_method(cFXImage.klass, "rotate", VALUEFUNC(_wrap_FXImage_rotate), -1);
    rb_define_method(cFXImage.klass, "crop", VALUEFUNC(_wrap_FXImage_crop), -1);
    rb_define_method(cFXImage.klass, "savePixels", VALUEFUNC(_wrap_FXImage_savePixels), -1);
    rb_define_method(cFXImage.klass, "loadPixels", VALUEFUNC(_wrap_FXImage_loadPixels), -1);
    cFXImage.mark = (void (*)(void *)) FXRbImage::markfunc;
    cFXImage.destroy = (void (*)(void *)) FXRbObject::freefunc;
    
    SWIGTYPE_p_FXImage->dcast = (swig_dycast_func) FXImage_dynamic_cast;
    
    
    cFXBMPImage.klass = rb_define_class_under(mFox, "FXBMPImage", ((swig_class *) SWIGTYPE_p_FXImage->clientdata)->klass);
    SWIG_TypeClientData(SWIGTYPE_p_FXBMPImage, (void *) &cFXBMPImage);
    rb_define_alloc_func(cFXBMPImage.klass, _wrap_FXBMPImage_allocate);
    rb_define_method(cFXBMPImage.klass, "initialize", VALUEFUNC(_wrap_new_FXBMPImage), -1);
    rb_define_method(cFXBMPImage.klass, "save", VALUEFUNC(_wrap_FXBMPImage_save), -1);
    rb_define_method(cFXBMPImage.klass, "load", VALUEFUNC(_wrap_FXBMPImage_load), -1);
    rb_define_method(cFXBMPImage.klass, "create", VALUEFUNC(_wrap_FXBMPImage_create), -1);
    rb_define_method(cFXBMPImage.klass, "detach", VALUEFUNC(_wrap_FXBMPImage_detach), -1);
    rb_define_method(cFXBMPImage.klass, "destroy", VALUEFUNC(_wrap_FXBMPImage_destroy), -1);
    rb_define_method(cFXBMPImage.klass, "resize", VALUEFUNC(_wrap_FXBMPImage_resize), -1);
    rb_define_method(cFXBMPImage.klass, "restore", VALUEFUNC(_wrap_FXBMPImage_restore), -1);
    rb_define_method(cFXBMPImage.klass, "render", VALUEFUNC(_wrap_FXBMPImage_render), -1);
    rb_define_method(cFXBMPImage.klass, "scale", VALUEFUNC(_wrap_FXBMPImage_scale), -1);
    rb_define_method(cFXBMPImage.klass, "mirror", VALUEFUNC(_wrap_FXBMPImage_mirror), -1);
    rb_define_method(cFXBMPImage.klass, "rotate", VALUEFUNC(_wrap_FXBMPImage_rotate), -1);
    rb_define_method(cFXBMPImage.klass, "crop", VALUEFUNC(_wrap_FXBMPImage_crop), -1);
    rb_define_method(cFXBMPImage.klass, "savePixels", VALUEFUNC(_wrap_FXBMPImage_savePixels), -1);
    rb_define_method(cFXBMPImage.klass, "loadPixels", VALUEFUNC(_wrap_FXBMPImage_loadPixels), -1);
    cFXBMPImage.mark = (void (*)(void *)) FXRbBMPImage::markfunc;
    cFXBMPImage.destroy = (void (*)(void *)) FXRbObject::freefunc;
    
    cFXGIFImage.klass = rb_define_class_under(mFox, "FXGIFImage", ((swig_class *) SWIGTYPE_p_FXImage->clientdata)->klass);
    SWIG_TypeClientData(SWIGTYPE_p_FXGIFImage, (void *) &cFXGIFImage);
    rb_define_alloc_func(cFXGIFImage.klass, _wrap_FXGIFImage_allocate);
    rb_define_method(cFXGIFImage.klass, "initialize", VALUEFUNC(_wrap_new_FXGIFImage), -1);
    rb_define_method(cFXGIFImage.klass, "save", VALUEFUNC(_wrap_FXGIFImage_save), -1);
    rb_define_method(cFXGIFImage.klass, "load", VALUEFUNC(_wrap_FXGIFImage_load), -1);
    rb_define_method(cFXGIFImage.klass, "create", VALUEFUNC(_wrap_FXGIFImage_create), -1);
    rb_define_method(cFXGIFImage.klass, "detach", VALUEFUNC(_wrap_FXGIFImage_detach), -1);
    rb_define_method(cFXGIFImage.klass, "destroy", VALUEFUNC(_wrap_FXGIFImage_destroy), -1);
    rb_define_method(cFXGIFImage.klass, "resize", VALUEFUNC(_wrap_FXGIFImage_resize), -1);
    rb_define_method(cFXGIFImage.klass, "restore", VALUEFUNC(_wrap_FXGIFImage_restore), -1);
    rb_define_method(cFXGIFImage.klass, "render", VALUEFUNC(_wrap_FXGIFImage_render), -1);
    rb_define_method(cFXGIFImage.klass, "scale", VALUEFUNC(_wrap_FXGIFImage_scale), -1);
    rb_define_method(cFXGIFImage.klass, "mirror", VALUEFUNC(_wrap_FXGIFImage_mirror), -1);
    rb_define_method(cFXGIFImage.klass, "rotate", VALUEFUNC(_wrap_FXGIFImage_rotate), -1);
    rb_define_method(cFXGIFImage.klass, "crop", VALUEFUNC(_wrap_FXGIFImage_crop), -1);
    rb_define_method(cFXGIFImage.klass, "savePixels", VALUEFUNC(_wrap_FXGIFImage_savePixels), -1);
    rb_define_method(cFXGIFImage.klass, "loadPixels", VALUEFUNC(_wrap_FXGIFImage_loadPixels), -1);
    cFXGIFImage.mark = (void (*)(void *)) FXRbGIFImage::markfunc;
    cFXGIFImage.destroy = (void (*)(void *)) FXRbObject::freefunc;
    
    cFXICOImage.klass = rb_define_class_under(mFox, "FXICOImage", ((swig_class *) SWIGTYPE_p_FXImage->clientdata)->klass);
    SWIG_TypeClientData(SWIGTYPE_p_FXICOImage, (void *) &cFXICOImage);
    rb_define_alloc_func(cFXICOImage.klass, _wrap_FXICOImage_allocate);
    rb_define_method(cFXICOImage.klass, "initialize", VALUEFUNC(_wrap_new_FXICOImage), -1);
    rb_define_method(cFXICOImage.klass, "save", VALUEFUNC(_wrap_FXICOImage_save), -1);
    rb_define_method(cFXICOImage.klass, "load", VALUEFUNC(_wrap_FXICOImage_load), -1);
    rb_define_method(cFXICOImage.klass, "create", VALUEFUNC(_wrap_FXICOImage_create), -1);
    rb_define_method(cFXICOImage.klass, "detach", VALUEFUNC(_wrap_FXICOImage_detach), -1);
    rb_define_method(cFXICOImage.klass, "destroy", VALUEFUNC(_wrap_FXICOImage_destroy), -1);
    rb_define_method(cFXICOImage.klass, "resize", VALUEFUNC(_wrap_FXICOImage_resize), -1);
    rb_define_method(cFXICOImage.klass, "restore", VALUEFUNC(_wrap_FXICOImage_restore), -1);
    rb_define_method(cFXICOImage.klass, "render", VALUEFUNC(_wrap_FXICOImage_render), -1);
    rb_define_method(cFXICOImage.klass, "scale", VALUEFUNC(_wrap_FXICOImage_scale), -1);
    rb_define_method(cFXICOImage.klass, "mirror", VALUEFUNC(_wrap_FXICOImage_mirror), -1);
    rb_define_method(cFXICOImage.klass, "rotate", VALUEFUNC(_wrap_FXICOImage_rotate), -1);
    rb_define_method(cFXICOImage.klass, "crop", VALUEFUNC(_wrap_FXICOImage_crop), -1);
    rb_define_method(cFXICOImage.klass, "savePixels", VALUEFUNC(_wrap_FXICOImage_savePixels), -1);
    rb_define_method(cFXICOImage.klass, "loadPixels", VALUEFUNC(_wrap_FXICOImage_loadPixels), -1);
    cFXICOImage.mark = (void (*)(void *)) FXRbICOImage::markfunc;
    cFXICOImage.destroy = (void (*)(void *)) FXRbObject::freefunc;
    
    cFXJPGImage.klass = rb_define_class_under(mFox, "FXJPGImage", ((swig_class *) SWIGTYPE_p_FXImage->clientdata)->klass);
    SWIG_TypeClientData(SWIGTYPE_p_FXJPGImage, (void *) &cFXJPGImage);
    rb_define_alloc_func(cFXJPGImage.klass, _wrap_FXJPGImage_allocate);
    rb_define_method(cFXJPGImage.klass, "initialize", VALUEFUNC(_wrap_new_FXJPGImage), -1);
    rb_define_method(cFXJPGImage.klass, "setQuality", VALUEFUNC(_wrap_FXJPGImage_setQuality), -1);
    rb_define_method(cFXJPGImage.klass, "getQuality", VALUEFUNC(_wrap_FXJPGImage_getQuality), -1);
    rb_define_method(cFXJPGImage.klass, "save", VALUEFUNC(_wrap_FXJPGImage_save), -1);
    rb_define_method(cFXJPGImage.klass, "load", VALUEFUNC(_wrap_FXJPGImage_load), -1);
    rb_define_method(cFXJPGImage.klass, "create", VALUEFUNC(_wrap_FXJPGImage_create), -1);
    rb_define_method(cFXJPGImage.klass, "detach", VALUEFUNC(_wrap_FXJPGImage_detach), -1);
    rb_define_method(cFXJPGImage.klass, "destroy", VALUEFUNC(_wrap_FXJPGImage_destroy), -1);
    rb_define_method(cFXJPGImage.klass, "resize", VALUEFUNC(_wrap_FXJPGImage_resize), -1);
    rb_define_method(cFXJPGImage.klass, "restore", VALUEFUNC(_wrap_FXJPGImage_restore), -1);
    rb_define_method(cFXJPGImage.klass, "render", VALUEFUNC(_wrap_FXJPGImage_render), -1);
    rb_define_method(cFXJPGImage.klass, "scale", VALUEFUNC(_wrap_FXJPGImage_scale), -1);
    rb_define_method(cFXJPGImage.klass, "mirror", VALUEFUNC(_wrap_FXJPGImage_mirror), -1);
    rb_define_method(cFXJPGImage.klass, "rotate", VALUEFUNC(_wrap_FXJPGImage_rotate), -1);
    rb_define_method(cFXJPGImage.klass, "crop", VALUEFUNC(_wrap_FXJPGImage_crop), -1);
    rb_define_method(cFXJPGImage.klass, "savePixels", VALUEFUNC(_wrap_FXJPGImage_savePixels), -1);
    rb_define_method(cFXJPGImage.klass, "loadPixels", VALUEFUNC(_wrap_FXJPGImage_loadPixels), -1);
    cFXJPGImage.mark = (void (*)(void *)) FXRbJPGImage::markfunc;
    cFXJPGImage.destroy = (void (*)(void *)) FXRbObject::freefunc;
    rb_define_module_function(mFox, "fxloadJPG", VALUEFUNC(_wrap_fxloadJPG), -1);
    rb_define_module_function(mFox, "fxsaveJPG", VALUEFUNC(_wrap_fxsaveJPG), -1);
    
    cFXPCXImage.klass = rb_define_class_under(mFox, "FXPCXImage", ((swig_class *) SWIGTYPE_p_FXImage->clientdata)->klass);
    SWIG_TypeClientData(SWIGTYPE_p_FXPCXImage, (void *) &cFXPCXImage);
    rb_define_alloc_func(cFXPCXImage.klass, _wrap_FXPCXImage_allocate);
    rb_define_method(cFXPCXImage.klass, "initialize", VALUEFUNC(_wrap_new_FXPCXImage), -1);
    rb_define_method(cFXPCXImage.klass, "save", VALUEFUNC(_wrap_FXPCXImage_save), -1);
    rb_define_method(cFXPCXImage.klass, "load", VALUEFUNC(_wrap_FXPCXImage_load), -1);
    rb_define_method(cFXPCXImage.klass, "create", VALUEFUNC(_wrap_FXPCXImage_create), -1);
    rb_define_method(cFXPCXImage.klass, "detach", VALUEFUNC(_wrap_FXPCXImage_detach), -1);
    rb_define_method(cFXPCXImage.klass, "destroy", VALUEFUNC(_wrap_FXPCXImage_destroy), -1);
    rb_define_method(cFXPCXImage.klass, "resize", VALUEFUNC(_wrap_FXPCXImage_resize), -1);
    rb_define_method(cFXPCXImage.klass, "restore", VALUEFUNC(_wrap_FXPCXImage_restore), -1);
    rb_define_method(cFXPCXImage.klass, "render", VALUEFUNC(_wrap_FXPCXImage_render), -1);
    rb_define_method(cFXPCXImage.klass, "scale", VALUEFUNC(_wrap_FXPCXImage_scale), -1);
    rb_define_method(cFXPCXImage.klass, "mirror", VALUEFUNC(_wrap_FXPCXImage_mirror), -1);
    rb_define_method(cFXPCXImage.klass, "rotate", VALUEFUNC(_wrap_FXPCXImage_rotate), -1);
    rb_define_method(cFXPCXImage.klass, "crop", VALUEFUNC(_wrap_FXPCXImage_crop), -1);
    rb_define_method(cFXPCXImage.klass, "savePixels", VALUEFUNC(_wrap_FXPCXImage_savePixels), -1);
    rb_define_method(cFXPCXImage.klass, "loadPixels", VALUEFUNC(_wrap_FXPCXImage_loadPixels), -1);
    cFXPCXImage.mark = (void (*)(void *)) FXRbPCXImage::markfunc;
    cFXPCXImage.destroy = (void (*)(void *)) FXRbObject::freefunc;
    
    cFXPNGImage.klass = rb_define_class_under(mFox, "FXPNGImage", ((swig_class *) SWIGTYPE_p_FXImage->clientdata)->klass);
    SWIG_TypeClientData(SWIGTYPE_p_FXPNGImage, (void *) &cFXPNGImage);
    rb_define_alloc_func(cFXPNGImage.klass, _wrap_FXPNGImage_allocate);
    rb_define_method(cFXPNGImage.klass, "initialize", VALUEFUNC(_wrap_new_FXPNGImage), -1);
    rb_define_method(cFXPNGImage.klass, "save", VALUEFUNC(_wrap_FXPNGImage_save), -1);
    rb_define_method(cFXPNGImage.klass, "load", VALUEFUNC(_wrap_FXPNGImage_load), -1);
    rb_define_method(cFXPNGImage.klass, "create", VALUEFUNC(_wrap_FXPNGImage_create), -1);
    rb_define_method(cFXPNGImage.klass, "detach", VALUEFUNC(_wrap_FXPNGImage_detach), -1);
    rb_define_method(cFXPNGImage.klass, "destroy", VALUEFUNC(_wrap_FXPNGImage_destroy), -1);
    rb_define_method(cFXPNGImage.klass, "resize", VALUEFUNC(_wrap_FXPNGImage_resize), -1);
    rb_define_method(cFXPNGImage.klass, "restore", VALUEFUNC(_wrap_FXPNGImage_restore), -1);
    rb_define_method(cFXPNGImage.klass, "render", VALUEFUNC(_wrap_FXPNGImage_render), -1);
    rb_define_method(cFXPNGImage.klass, "scale", VALUEFUNC(_wrap_FXPNGImage_scale), -1);
    rb_define_method(cFXPNGImage.klass, "mirror", VALUEFUNC(_wrap_FXPNGImage_mirror), -1);
    rb_define_method(cFXPNGImage.klass, "rotate", VALUEFUNC(_wrap_FXPNGImage_rotate), -1);
    rb_define_method(cFXPNGImage.klass, "crop", VALUEFUNC(_wrap_FXPNGImage_crop), -1);
    rb_define_method(cFXPNGImage.klass, "savePixels", VALUEFUNC(_wrap_FXPNGImage_savePixels), -1);
    rb_define_method(cFXPNGImage.klass, "loadPixels", VALUEFUNC(_wrap_FXPNGImage_loadPixels), -1);
    cFXPNGImage.mark = (void (*)(void *)) FXRbPNGImage::markfunc;
    cFXPNGImage.destroy = (void (*)(void *)) FXRbObject::freefunc;
    
    cFXRGBImage.klass = rb_define_class_under(mFox, "FXRGBImage", ((swig_class *) SWIGTYPE_p_FXImage->clientdata)->klass);
    SWIG_TypeClientData(SWIGTYPE_p_FXRGBImage, (void *) &cFXRGBImage);
    rb_define_alloc_func(cFXRGBImage.klass, _wrap_FXRGBImage_allocate);
    rb_define_method(cFXRGBImage.klass, "initialize", VALUEFUNC(_wrap_new_FXRGBImage), -1);
    rb_define_method(cFXRGBImage.klass, "save", VALUEFUNC(_wrap_FXRGBImage_save), -1);
    rb_define_method(cFXRGBImage.klass, "load", VALUEFUNC(_wrap_FXRGBImage_load), -1);
    rb_define_method(cFXRGBImage.klass, "create", VALUEFUNC(_wrap_FXRGBImage_create), -1);
    rb_define_method(cFXRGBImage.klass, "detach", VALUEFUNC(_wrap_FXRGBImage_detach), -1);
    rb_define_method(cFXRGBImage.klass, "destroy", VALUEFUNC(_wrap_FXRGBImage_destroy), -1);
    rb_define_method(cFXRGBImage.klass, "resize", VALUEFUNC(_wrap_FXRGBImage_resize), -1);
    rb_define_method(cFXRGBImage.klass, "restore", VALUEFUNC(_wrap_FXRGBImage_restore), -1);
    rb_define_method(cFXRGBImage.klass, "render", VALUEFUNC(_wrap_FXRGBImage_render), -1);
    rb_define_method(cFXRGBImage.klass, "scale", VALUEFUNC(_wrap_FXRGBImage_scale), -1);
    rb_define_method(cFXRGBImage.klass, "mirror", VALUEFUNC(_wrap_FXRGBImage_mirror), -1);
    rb_define_method(cFXRGBImage.klass, "rotate", VALUEFUNC(_wrap_FXRGBImage_rotate), -1);
    rb_define_method(cFXRGBImage.klass, "crop", VALUEFUNC(_wrap_FXRGBImage_crop), -1);
    rb_define_method(cFXRGBImage.klass, "savePixels", VALUEFUNC(_wrap_FXRGBImage_savePixels), -1);
    rb_define_method(cFXRGBImage.klass, "loadPixels", VALUEFUNC(_wrap_FXRGBImage_loadPixels), -1);
    cFXRGBImage.mark = (void (*)(void *)) FXRbRGBImage::markfunc;
    cFXRGBImage.destroy = (void (*)(void *)) FXRbObject::freefunc;
    rb_define_module_function(mFox, "fxloadRGB", VALUEFUNC(_wrap_fxloadRGB), -1);
    rb_define_module_function(mFox, "fxsaveRGB", VALUEFUNC(_wrap_fxsaveRGB), -1);
    
    cFXTGAImage.klass = rb_define_class_under(mFox, "FXTGAImage", ((swig_class *) SWIGTYPE_p_FXImage->clientdata)->klass);
    SWIG_TypeClientData(SWIGTYPE_p_FXTGAImage, (void *) &cFXTGAImage);
    rb_define_alloc_func(cFXTGAImage.klass, _wrap_FXTGAImage_allocate);
    rb_define_method(cFXTGAImage.klass, "initialize", VALUEFUNC(_wrap_new_FXTGAImage), -1);
    rb_define_method(cFXTGAImage.klass, "save", VALUEFUNC(_wrap_FXTGAImage_save), -1);
    rb_define_method(cFXTGAImage.klass, "load", VALUEFUNC(_wrap_FXTGAImage_load), -1);
    rb_define_method(cFXTGAImage.klass, "create", VALUEFUNC(_wrap_FXTGAImage_create), -1);
    rb_define_method(cFXTGAImage.klass, "detach", VALUEFUNC(_wrap_FXTGAImage_detach), -1);
    rb_define_method(cFXTGAImage.klass, "destroy", VALUEFUNC(_wrap_FXTGAImage_destroy), -1);
    rb_define_method(cFXTGAImage.klass, "resize", VALUEFUNC(_wrap_FXTGAImage_resize), -1);
    rb_define_method(cFXTGAImage.klass, "restore", VALUEFUNC(_wrap_FXTGAImage_restore), -1);
    rb_define_method(cFXTGAImage.klass, "render", VALUEFUNC(_wrap_FXTGAImage_render), -1);
    rb_define_method(cFXTGAImage.klass, "scale", VALUEFUNC(_wrap_FXTGAImage_scale), -1);
    rb_define_method(cFXTGAImage.klass, "mirror", VALUEFUNC(_wrap_FXTGAImage_mirror), -1);
    rb_define_method(cFXTGAImage.klass, "rotate", VALUEFUNC(_wrap_FXTGAImage_rotate), -1);
    rb_define_method(cFXTGAImage.klass, "crop", VALUEFUNC(_wrap_FXTGAImage_crop), -1);
    rb_define_method(cFXTGAImage.klass, "savePixels", VALUEFUNC(_wrap_FXTGAImage_savePixels), -1);
    rb_define_method(cFXTGAImage.klass, "loadPixels", VALUEFUNC(_wrap_FXTGAImage_loadPixels), -1);
    cFXTGAImage.mark = (void (*)(void *)) FXRbTGAImage::markfunc;
    cFXTGAImage.destroy = (void (*)(void *)) FXRbObject::freefunc;
    rb_define_module_function(mFox, "fxloadTGA", VALUEFUNC(_wrap_fxloadTGA), -1);
    rb_define_module_function(mFox, "fxsaveTGA", VALUEFUNC(_wrap_fxsaveTGA), -1);
    
    cFXTIFImage.klass = rb_define_class_under(mFox, "FXTIFImage", ((swig_class *) SWIGTYPE_p_FXImage->clientdata)->klass);
    SWIG_TypeClientData(SWIGTYPE_p_FXTIFImage, (void *) &cFXTIFImage);
    rb_define_alloc_func(cFXTIFImage.klass, _wrap_FXTIFImage_allocate);
    rb_define_method(cFXTIFImage.klass, "initialize", VALUEFUNC(_wrap_new_FXTIFImage), -1);
    rb_define_method(cFXTIFImage.klass, "setCodec", VALUEFUNC(_wrap_FXTIFImage_setCodec), -1);
    rb_define_method(cFXTIFImage.klass, "getCodec", VALUEFUNC(_wrap_FXTIFImage_getCodec), -1);
    rb_define_method(cFXTIFImage.klass, "save", VALUEFUNC(_wrap_FXTIFImage_save), -1);
    rb_define_method(cFXTIFImage.klass, "load", VALUEFUNC(_wrap_FXTIFImage_load), -1);
    rb_define_method(cFXTIFImage.klass, "create", VALUEFUNC(_wrap_FXTIFImage_create), -1);
    rb_define_method(cFXTIFImage.klass, "detach", VALUEFUNC(_wrap_FXTIFImage_detach), -1);
    rb_define_method(cFXTIFImage.klass, "destroy", VALUEFUNC(_wrap_FXTIFImage_destroy), -1);
    rb_define_method(cFXTIFImage.klass, "resize", VALUEFUNC(_wrap_FXTIFImage_resize), -1);
    rb_define_method(cFXTIFImage.klass, "restore", VALUEFUNC(_wrap_FXTIFImage_restore), -1);
    rb_define_method(cFXTIFImage.klass, "render", VALUEFUNC(_wrap_FXTIFImage_render), -1);
    rb_define_method(cFXTIFImage.klass, "scale", VALUEFUNC(_wrap_FXTIFImage_scale), -1);
    rb_define_method(cFXTIFImage.klass, "mirror", VALUEFUNC(_wrap_FXTIFImage_mirror), -1);
    rb_define_method(cFXTIFImage.klass, "rotate", VALUEFUNC(_wrap_FXTIFImage_rotate), -1);
    rb_define_method(cFXTIFImage.klass, "crop", VALUEFUNC(_wrap_FXTIFImage_crop), -1);
    rb_define_method(cFXTIFImage.klass, "savePixels", VALUEFUNC(_wrap_FXTIFImage_savePixels), -1);
    rb_define_method(cFXTIFImage.klass, "loadPixels", VALUEFUNC(_wrap_FXTIFImage_loadPixels), -1);
    cFXTIFImage.mark = (void (*)(void *)) FXRbTIFImage::markfunc;
    cFXTIFImage.destroy = (void (*)(void *)) FXRbObject::freefunc;
    rb_define_module_function(mFox, "fxloadTIF", VALUEFUNC(_wrap_fxloadTIF), -1);
    rb_define_module_function(mFox, "fxsaveTIF", VALUEFUNC(_wrap_fxsaveTIF), -1);
    
    cFXXPMImage.klass = rb_define_class_under(mFox, "FXXPMImage", ((swig_class *) SWIGTYPE_p_FXImage->clientdata)->klass);
    SWIG_TypeClientData(SWIGTYPE_p_FXXPMImage, (void *) &cFXXPMImage);
    rb_define_alloc_func(cFXXPMImage.klass, _wrap_FXXPMImage_allocate);
    rb_define_method(cFXXPMImage.klass, "initialize", VALUEFUNC(_wrap_new_FXXPMImage), -1);
    rb_define_method(cFXXPMImage.klass, "save", VALUEFUNC(_wrap_FXXPMImage_save), -1);
    rb_define_method(cFXXPMImage.klass, "load", VALUEFUNC(_wrap_FXXPMImage_load), -1);
    rb_define_method(cFXXPMImage.klass, "create", VALUEFUNC(_wrap_FXXPMImage_create), -1);
    rb_define_method(cFXXPMImage.klass, "detach", VALUEFUNC(_wrap_FXXPMImage_detach), -1);
    rb_define_method(cFXXPMImage.klass, "destroy", VALUEFUNC(_wrap_FXXPMImage_destroy), -1);
    rb_define_method(cFXXPMImage.klass, "resize", VALUEFUNC(_wrap_FXXPMImage_resize), -1);
    rb_define_method(cFXXPMImage.klass, "restore", VALUEFUNC(_wrap_FXXPMImage_restore), -1);
    rb_define_method(cFXXPMImage.klass, "render", VALUEFUNC(_wrap_FXXPMImage_render), -1);
    rb_define_method(cFXXPMImage.klass, "scale", VALUEFUNC(_wrap_FXXPMImage_scale), -1);
    rb_define_method(cFXXPMImage.klass, "mirror", VALUEFUNC(_wrap_FXXPMImage_mirror), -1);
    rb_define_method(cFXXPMImage.klass, "rotate", VALUEFUNC(_wrap_FXXPMImage_rotate), -1);
    rb_define_method(cFXXPMImage.klass, "crop", VALUEFUNC(_wrap_FXXPMImage_crop), -1);
    rb_define_method(cFXXPMImage.klass, "savePixels", VALUEFUNC(_wrap_FXXPMImage_savePixels), -1);
    rb_define_method(cFXXPMImage.klass, "loadPixels", VALUEFUNC(_wrap_FXXPMImage_loadPixels), -1);
    cFXXPMImage.mark = (void (*)(void *)) FXRbXPMImage::markfunc;
    cFXXPMImage.destroy = (void (*)(void *)) FXRbObject::freefunc;
}

