⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 il_wrap.h

📁 SiftGPU is an implementation of SIFT [1] for GPU. SiftGPU processes pixels parallely to build Gaussi
💻 H
字号:
#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#endifclass 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_OPENGLclass 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_ALLEGROclass ilAlleg{public:	static ILvoid	Init(void);	static BITMAP	*Convert(ilImage &);};#endif//ILUT_USE_ALLEGRO#ifdef ILUT_USE_WIN32class 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_WIN32class 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

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -