/***************************************************************************
                            qt_QImage.cpp -  description
                             -------------------
    begin                : Tue Nov 20 20:51:20 2001
    copyright            : (C) 2000-2001 Lost Highway Ltd. All rights reserved.
    email                : Lost_Highway@tipitina.demon.co.uk
    generated by         : duke@tipitina on Tue Nov 20 20:51:20 2001, using kalyptus 0.9.
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This library is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU Library General Public License as       *
 *   published by the Free Software Foundation; either version 2 of the    *
 *   License, or (at your option) any later version.                       *
 *                                                                         *
 ***************************************************************************/

extern "C" {
#include "qt_QImage.h"
}

#include <qimage.h>

class QImageBridge : public QImage
{
public:
	QImageBridge() : QImage() {}
	QImageBridge(int width, int height, int depth, int numColors, Endian bitOrder) : QImage(width, height, depth, numColors, bitOrder) {}
	QImageBridge(const QSize& arg1, int depth, int numColors, Endian bitOrder) : QImage(arg1, depth, numColors, bitOrder) {}
	QImageBridge(const QString& fileName, const char* format) : QImage(fileName, format) {}
	QImageBridge(const char* const xpm[]) : QImage(xpm) {}
	QImageBridge(const QByteArray& data) : QImage(data) {}
	QImageBridge(uchar* data, int w, int h, int depth, QRgb* colortable, int numColors, Endian bitOrder) : QImage(data, w, h, depth, colortable, numColors, bitOrder) {}
//	QImageBridge(uchar* data, int w, int h, int depth, int pbl, QRgb* colortable, int numColors, Endian bitOrder) : QImage(data, w, h, depth, pbl, colortable, numColors, bitOrder) {}
	QImageBridge(const QImage& arg1) : QImage(arg1) {}
	~QImageBridge() {}
};

qt_QImage * qt_new_QImage(){
	return (qt_QImage *) new QImageBridge();
}
qt_QImage * qt_new_QImage1(int width, int height, int depth, int numColors, int bitOrder){
	return (qt_QImage *) new QImageBridge((int)width, (int)height, (int)depth, (int)numColors, (QImage::Endian)bitOrder);
}
qt_QImage * qt_new_QImage2(qt_QSize * arg1, int depth, int numColors, int bitOrder){
	return (qt_QImage *) new QImageBridge((QSize&)* (QSize*)arg1, (int)depth, (int)numColors, (QImage::Endian)bitOrder);
}
qt_QImage * qt_new_QImage3(qt_QString * fileName, char* format){
	return (qt_QImage *) new QImageBridge((QString&)* (QString*)fileName, (char*)format);
}
qt_QImage * qt_new_QImage4(char** xpm){
	return (qt_QImage *) new QImageBridge((const char**)xpm);
}
qt_QImage * qt_new_QImage5(qt_QByteArray* data){
	return (qt_QImage *) new QImageBridge((QByteArray&)* (QByteArray*)data);
}
qt_QImage * qt_new_QImage6(unsigned char* data, int w, int h, int depth, int * colortable, int numColors, int bitOrder){
	return (qt_QImage *) new QImageBridge((uchar*)data, (int)w, (int)h, (int)depth, (QRgb*)colortable, (int)numColors, (QImage::Endian)bitOrder);
}
//qt_QImage * qt_new_QImage7(unsigned char* data, int w, int h, int depth, int pbl, int * colortable, int numColors, int bitOrder){
//	return (qt_QImage *) new QImageBridge((uchar*)data, (int)w, (int)h, (int)depth, (int)pbl, (QRgb*)colortable, (int)numColors, (QImage::Endian)bitOrder);
//}
qt_QImage * qt_new_QImage8(qt_QImage * arg1){
	return (qt_QImage *) new QImageBridge((QImage&)* (QImage*)arg1);
}
void qt_del_QImage( qt_QImage* p ){
	delete (QImageBridge*) p;
}
void qt_QImage_detach( qt_QImage* instPointer){
	((QImageBridge*)instPointer)->detach();
	return;
}
qt_QImage * qt_QImage_copy( qt_QImage* instPointer){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->copy());
}
qt_QImage * qt_QImage_copy1( qt_QImage* instPointer,int x, int y, int w, int h, int conversion_flags){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->copy((int)x, (int)y, (int)w, (int)h, (int)conversion_flags));
}
qt_QImage * qt_QImage_copy2( qt_QImage* instPointer,qt_QRect* arg1){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->copy((QRect&)* (QRect*)arg1));
}
int qt_QImage_isNull( qt_QImage* instPointer){
	return (int) ((QImageBridge*)instPointer)->isNull();
}
int qt_QImage_width( qt_QImage* instPointer){
	return (int) ((QImageBridge*)instPointer)->width();
}
int qt_QImage_height( qt_QImage* instPointer){
	return (int) ((QImageBridge*)instPointer)->height();
}
qt_QSize * qt_QImage_size( qt_QImage* instPointer){
	QSize _s= ((QImageBridge*)instPointer)->size();
	return (qt_QSize *)new QSize(_s.width(),_s.height());
}
qt_QRect* qt_QImage_rect( qt_QImage* instPointer){
	QRect _r= ((QImageBridge*)instPointer)->rect();
	return (qt_QRect*)new QRect(_r.left(),_r.top(),_r.width(),_r.height());
}
int qt_QImage_depth( qt_QImage* instPointer){
	return (int) ((QImageBridge*)instPointer)->depth();
}
int qt_QImage_numColors( qt_QImage* instPointer){
	return (int) ((QImageBridge*)instPointer)->numColors();
}
int qt_QImage_bitOrder( qt_QImage* instPointer){
	return (int) ((QImageBridge*)instPointer)->bitOrder();
}
unsigned int qt_QImage_color( qt_QImage* instPointer,int i){
	return (unsigned int) ((QImageBridge*)instPointer)->color((int)i);
}
void qt_QImage_setColor( qt_QImage* instPointer,int i, unsigned int c){
	((QImageBridge*)instPointer)->setColor((int)i, (QRgb)c);
	return;
}
void qt_QImage_setNumColors( qt_QImage* instPointer,int arg1){
	((QImageBridge*)instPointer)->setNumColors((int)arg1);
	return;
}
int qt_QImage_hasAlphaBuffer( qt_QImage* instPointer){
	return (int) ((QImageBridge*)instPointer)->hasAlphaBuffer();
}
void qt_QImage_setAlphaBuffer( qt_QImage* instPointer,int arg1){
	((QImageBridge*)instPointer)->setAlphaBuffer((bool)arg1);
	return;
}
int qt_QImage_allGray( qt_QImage* instPointer){
	return (int) ((QImageBridge*)instPointer)->allGray();
}
int qt_QImage_isGrayscale( qt_QImage* instPointer){
	return (int) ((QImageBridge*)instPointer)->isGrayscale();
}
unsigned char* qt_QImage_bits( qt_QImage* instPointer){
	return (unsigned char*) ((QImageBridge*)instPointer)->bits();
}
unsigned char* qt_QImage_scanLine( qt_QImage* instPointer,int arg1){
	return (unsigned char*) ((QImageBridge*)instPointer)->scanLine((int)arg1);
}
unsigned char** qt_QImage_jumpTable( qt_QImage* instPointer){
	return (unsigned char**) ((QImageBridge*)instPointer)->jumpTable();
}
int * qt_QImage_colorTable( qt_QImage* instPointer){
	return (int *) ((QImageBridge*)instPointer)->colorTable();
}
int qt_QImage_numBytes( qt_QImage* instPointer){
	return (int) ((QImageBridge*)instPointer)->numBytes();
}
int qt_QImage_bytesPerLine( qt_QImage* instPointer){
	return (int) ((QImageBridge*)instPointer)->bytesPerLine();
}
//qt_QGfx* qt_QImage_graphicsContext( qt_QImage* instPointer){
//	return (qt_QGfx*) ((QImageBridge*)instPointer)->graphicsContext();
//}
int qt_QImage_create( qt_QImage* instPointer,int width, int height, int depth, int numColors, int bitOrder){
	return (int) ((QImageBridge*)instPointer)->create((int)width, (int)height, (int)depth, (int)numColors, (QImage::Endian)bitOrder);
}
int qt_QImage_create1( qt_QImage* instPointer,qt_QSize * arg1, int depth, int numColors, int bitOrder){
	return (int) ((QImageBridge*)instPointer)->create((QSize&)* (QSize*)arg1, (int)depth, (int)numColors, (QImage::Endian)bitOrder);
}
void qt_QImage_reset( qt_QImage* instPointer){
	((QImageBridge*)instPointer)->reset();
	return;
}
void qt_QImage_fill( qt_QImage* instPointer,unsigned int pixel){
	((QImageBridge*)instPointer)->fill((uint)pixel);
	return;
}
void qt_QImage_invertPixels( qt_QImage* instPointer,int invertAlpha){
	((QImageBridge*)instPointer)->invertPixels((bool)invertAlpha);
	return;
}
qt_QImage * qt_QImage_convertDepth( qt_QImage* instPointer,int arg1){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->convertDepth((int)arg1));
}
qt_QImage * qt_QImage_convertDepthWithPalette( qt_QImage* instPointer,int arg1, int * p, int pc, int cf){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->convertDepthWithPalette((int)arg1, (QRgb*)p, (int)pc, (int)cf));
}
qt_QImage * qt_QImage_convertDepth1( qt_QImage* instPointer,int arg1, int conversion_flags){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->convertDepth((int)arg1, (int)conversion_flags));
}
qt_QImage * qt_QImage_convertBitOrder( qt_QImage* instPointer,int arg1){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->convertBitOrder((QImage::Endian)arg1));
}
qt_QImage * qt_QImage_smoothScale( qt_QImage* instPointer,int w, int h, int mode){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->smoothScale((int)w, (int)h, (QImage::ScaleMode)mode));
}
qt_QImage * qt_QImage_smoothScale1( qt_QImage* instPointer,qt_QSize * s, int mode){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->smoothScale((QSize&)* (QSize*)s, (QImage::ScaleMode)mode));
}
qt_QImage * qt_QImage_scale( qt_QImage* instPointer,int w, int h, int mode){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->scale((int)w, (int)h, (QImage::ScaleMode)mode));
}
qt_QImage * qt_QImage_scale1( qt_QImage* instPointer,qt_QSize * s, int mode){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->scale((QSize&)* (QSize*)s, (QImage::ScaleMode)mode));
}
qt_QImage * qt_QImage_scaleWidth( qt_QImage* instPointer,int w){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->scaleWidth((int)w));
}
qt_QImage * qt_QImage_scaleHeight( qt_QImage* instPointer,int h){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->scaleHeight((int)h));
}
qt_QImage * qt_QImage_xForm( qt_QImage* instPointer,qt_QWMatrix * matrix){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->xForm((QWMatrix&)* (QWMatrix*)matrix));
}
qt_QImage * qt_QImage_createAlphaMask( qt_QImage* instPointer,int conversion_flags){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->createAlphaMask((int)conversion_flags));
}
qt_QImage * qt_QImage_createHeuristicMask( qt_QImage* instPointer,int clipTight){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->createHeuristicMask((bool)clipTight));
}
qt_QImage * qt_QImage_mirror( qt_QImage* instPointer){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->mirror());
}
qt_QImage * qt_QImage_mirror1( qt_QImage* instPointer,int horizontally, int vertically){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->mirror((bool)horizontally, (bool)vertically));
}
qt_QImage * qt_QImage_swapRGB( qt_QImage* instPointer){
	return (qt_QImage *)new QImage(((QImageBridge*)instPointer)->swapRGB());
}
int qt_QImage_load( qt_QImage* instPointer,qt_QString * fileName, char* format){
	return (int) ((QImageBridge*)instPointer)->load((QString&)* (QString*)fileName, (char*)format);
}
int qt_QImage_loadFromData( qt_QImage* instPointer,unsigned char* buf, unsigned int len, char* format){
	return (int) ((QImageBridge*)instPointer)->loadFromData((uchar*)buf, (uint)len, (char*)format);
}
int qt_QImage_loadFromData1( qt_QImage* instPointer,qt_QByteArray* data, char* format){
	return (int) ((QImageBridge*)instPointer)->loadFromData((QByteArray)* (QByteArray*)data, (char*)format);
}
int qt_QImage_save( qt_QImage* instPointer,qt_QString * fileName, char* format, int quality){
	return (int) ((QImageBridge*)instPointer)->save((QString&)* (QString*)fileName, (char*)format, (int)quality);
}
int qt_QImage_valid( qt_QImage* instPointer,int x, int y){
	return (int) ((QImageBridge*)instPointer)->valid((int)x, (int)y);
}
int qt_QImage_pixelIndex( qt_QImage* instPointer,int x, int y){
	return (int) ((QImageBridge*)instPointer)->pixelIndex((int)x, (int)y);
}
unsigned int qt_QImage_pixel( qt_QImage* instPointer,int x, int y){
	return (unsigned int) ((QImageBridge*)instPointer)->pixel((int)x, (int)y);
}
void qt_QImage_setPixel( qt_QImage* instPointer,int x, int y, unsigned int index_or_rgb){
	((QImageBridge*)instPointer)->setPixel((int)x, (int)y, (uint)index_or_rgb);
	return;
}
int qt_QImage_dotsPerMeterX( qt_QImage* instPointer){
	return (int) ((QImageBridge*)instPointer)->dotsPerMeterX();
}
int qt_QImage_dotsPerMeterY( qt_QImage* instPointer){
	return (int) ((QImageBridge*)instPointer)->dotsPerMeterY();
}
void qt_QImage_setDotsPerMeterX( qt_QImage* instPointer,int arg1){
	((QImageBridge*)instPointer)->setDotsPerMeterX((int)arg1);
	return;
}
void qt_QImage_setDotsPerMeterY( qt_QImage* instPointer,int arg1){
	((QImageBridge*)instPointer)->setDotsPerMeterY((int)arg1);
	return;
}
qt_QPoint* qt_QImage_offset( qt_QImage* instPointer){
	QPoint _p= ((QImageBridge*)instPointer)->offset();
	return (qt_QPoint*)new QPoint(_p.x(),_p.y());
}
void qt_QImage_setOffset( qt_QImage* instPointer,qt_QPoint* arg1){
	((QImageBridge*)instPointer)->setOffset((QPoint&)* (QPoint*)arg1);
	return;
}
qt_QStringList* qt_QImage_textLanguages( qt_QImage* instPointer){
	return (qt_QStringList*)new QStringList(((QImageBridge*)instPointer)->textLanguages());
}
qt_QStringList* qt_QImage_textKeys( qt_QImage* instPointer){
	return (qt_QStringList*)new QStringList(((QImageBridge*)instPointer)->textKeys());
}
qt_QString * qt_QImage_text( qt_QImage* instPointer,char* key, char* lang){
	return (qt_QString *)new QString(((QImageBridge*)instPointer)->text((char*)key, (char*)lang));
}
qt_QString * qt_QImage_text1( qt_QImage* instPointer,qt_QImageTextKeyLang* arg1){
	return (qt_QString *)new QString(((QImageBridge*)instPointer)->text((QImageTextKeyLang&)* (QImageTextKeyLang*)arg1));
}
void qt_QImage_setText( qt_QImage* instPointer,char* key, char* lang, qt_QString * arg1){
	((QImageBridge*)instPointer)->setText((char*)key, (char*)lang, (QString&)* (QString*)arg1);
	return;
}
int qt_QImage_systemBitOrder( ){
	return (int) QImageBridge::systemBitOrder();
}
int qt_QImage_systemByteOrder( ){
	return (int) QImageBridge::systemByteOrder();
}
char* qt_QImage_imageFormat( qt_QString * fileName){
	return (char*) QImageBridge::imageFormat((QString&)* (QString*)fileName);
}
qt_QStrList * qt_QImage_inputFormats( ){
	return (qt_QStrList *)new QStrList(QImageBridge::inputFormats());
}
qt_QStrList * qt_QImage_outputFormats( ){
	return (qt_QStrList *)new QStrList(QImageBridge::outputFormats());
}
qt_QStringList* qt_QImage_inputFormatList( ){
	return (qt_QStringList*)new QStringList(QImageBridge::inputFormatList());
}
qt_QStringList* qt_QImage_outputFormatList( ){
	return (qt_QStringList*)new QStringList(QImageBridge::outputFormatList());
}
