123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205 |
- #ifndef WRAPPER_H
- #define WRAPPER_H
- /*#include <il/il.h>
- #include <il/ilu.h>*/
- #include <IL/ilut.h> // Probably only have to #include this one
- #ifdef _MSC_VER
- #ifndef _IL_WRAP_BUILD_LIB
- #pragma comment(lib, "il_wrap.lib")
- #endif
- #endif
- class ilImage
- {
- public:
- ilImage();
- ilImage(char *);
- ilImage(const ilImage &);
- virtual ~ilImage();
- ILboolean Load(char *);
- ILboolean Load(char *, ILenum);
- ILboolean Save(char *);
- ILboolean Save(char *, ILenum);
- // ImageLib functions
- ILboolean ActiveImage(ILuint);
- ILboolean ActiveLayer(ILuint);
- ILboolean ActiveMipmap(ILuint);
- ILboolean Clear(void);
- ILvoid ClearColour(ILclampf, ILclampf, ILclampf, ILclampf);
- ILboolean Convert(ILenum);
- ILboolean Copy(ILuint);
- ILboolean Default(void);
- ILboolean Flip(void);
- ILboolean SwapColours(void);
- ILboolean Resize(ILuint, ILuint, ILuint);
- ILboolean TexImage(ILuint, ILuint, ILuint, ILubyte, ILenum, ILenum, ILvoid*);
-
- // Image handling
- ILvoid Bind(void) const;
- ILvoid Bind(ILuint);
- ILvoid Close(void) { this->Delete(); }
- ILvoid Delete(void);
- ILvoid iGenBind();
- ILenum PaletteAlphaIndex();
- // Image characteristics
- ILuint Width(void);
- ILuint Height(void);
- ILuint Depth(void);
- ILubyte Bpp(void);
- ILubyte Bitpp(void);
- ILenum PaletteType(void);
- ILenum Format(void);
- ILenum Type(void);
- ILuint NumImages(void);
- ILuint NumMipmaps(void);
- ILuint GetId(void) const;
- ILenum GetOrigin(void);
- ILubyte *GetData(void);
- ILubyte *GetPalette(void);
- // Rendering
- ILuint BindImage(void);
- ILuint BindImage(ILenum);
- // Operators
- ilImage& operator = (ILuint);
- ilImage& operator = (const ilImage &);
- protected:
- ILuint Id;
- private:
- ILvoid iStartUp();
- };
- class ilFilters
- {
- public:
- static ILboolean Alienify(ilImage &);
- static ILboolean BlurAvg(ilImage &, ILuint Iter);
- static ILboolean BlurGaussian(ilImage &, ILuint Iter);
- static ILboolean Contrast(ilImage &, ILfloat Contrast);
- static ILboolean EdgeDetectE(ilImage &);
- static ILboolean EdgeDetectP(ilImage &);
- static ILboolean EdgeDetectS(ilImage &);
- static ILboolean Emboss(ilImage &);
- static ILboolean Gamma(ilImage &, ILfloat Gamma);
- static ILboolean Negative(ilImage &);
- static ILboolean Noisify(ilImage &, ILubyte Factor);
- static ILboolean Pixelize(ilImage &, ILuint PixSize);
- static ILboolean Saturate(ilImage &, ILfloat Saturation);
- static ILboolean Saturate(ilImage &, ILfloat r, ILfloat g, ILfloat b, ILfloat Saturation);
- static ILboolean ScaleColours(ilImage &, ILfloat r, ILfloat g, ILfloat b);
- static ILboolean Sharpen(ilImage &, ILfloat Factor, ILuint Iter);
- };
- #ifdef ILUT_USE_OPENGL
- class ilOgl
- {
- public:
- static ILvoid Init(void);
- static GLuint BindTex(ilImage &);
- static ILboolean Upload(ilImage &, ILuint);
- static GLuint Mipmap(ilImage &);
- static ILboolean Screen(void);
- static ILboolean Screenie(void);
- };
- #endif//ILUT_USE_OPENGL
- #ifdef ILUT_USE_ALLEGRO
- class ilAlleg
- {
- public:
- static ILvoid Init(void);
- static BITMAP *Convert(ilImage &);
- };
- #endif//ILUT_USE_ALLEGRO
- #ifdef ILUT_USE_WIN32
- class ilWin32
- {
- public:
- static ILvoid Init(void);
- static HBITMAP Convert(ilImage &);
- static ILboolean GetClipboard(ilImage &);
- static ILvoid GetInfo(ilImage &, BITMAPINFO *Info);
- static ILubyte *GetPadData(ilImage &);
- static HPALETTE GetPal(ilImage &);
- static ILboolean GetResource(ilImage &, HINSTANCE hInst, ILint ID, char *ResourceType);
- static ILboolean GetResource(ilImage &, HINSTANCE hInst, ILint ID, char *ResourceType, ILenum Type);
- static ILboolean SetClipboard(ilImage &);
- };
- #endif//ILUT_USE_WIN32
- class ilValidate
- {
- public:
- static ILboolean Valid(ILenum, char *);
- static ILboolean Valid(ILenum, FILE *);
- static ILboolean Valid(ILenum, ILvoid *, ILuint);
- protected:
- private:
- };
- class ilState
- {
- public:
- static ILboolean Disable(ILenum);
- static ILboolean Enable(ILenum);
- static ILvoid Get(ILenum, ILboolean &);
- static ILvoid Get(ILenum, ILint &);
- static ILboolean GetBool(ILenum);
- static ILint GetInt(ILenum);
- static const char *GetString(ILenum);
- static ILboolean IsDisabled(ILenum);
- static ILboolean IsEnabled(ILenum);
- static ILboolean Origin(ILenum);
- static ILvoid Pop(void);
- static ILvoid Push(ILuint);
- protected:
- private:
- };
- class ilError
- {
- public:
- static ILvoid Check(ILvoid (*Callback)(const char*));
- static ILvoid Check(ILvoid (*Callback)(ILenum));
- static ILenum Get(void);
- static const char *String(void);
- static const char *String(ILenum);
- protected:
- private:
- };
- #endif//WRAPPER_H
|