www.pudn.com > EZW_.rar > GLOBAL.H


#ifndef __GLOBAL_H_ 
#define __GLOBAL_H_ 
 
/*---------------------------------------------------------------------------*/ 
/*---------------------------------------------------------------------------*/ 
/*  
 * Mow-Song, Ng 2/9/2002 
 * msng@mmu.edu.my 
 * http://www.pesona.mmu.edu.my/~msng 
 * 
 * I do not claim copyright to the code, but if you use them or modify them, 
 * please drop me a mail. 
 * 
 */ 
/*---------------------------------------------------------------------------*/ 
/*---------------------------------------------------------------------------*/ 
 
/* disable unused variabled warning */ 
#pragma warning (disable : 4101) 
 
#include  
#include  
#include  
#include  
#include  
#include  
#include "memchk.h" 
 
typedef enum {FALSE, TRUE} Boolean; 
typedef unsigned long ULONG; 
 
typedef double Real; 
 
#define eps			1.e-12 
#define MaxReal	1.0e+100 
#define MaxDouble MaxReal 
//#define MaxReal	1.7976931348623157e+308 
 
#define MIN(x,y) (((x)<(y))?(x):(y)) 
#define MAX(x,y) (((x)>(y))?(x):(y)) 
#define ROUND(a)	(((a)<0)?(int)((a)-0.5):(int)((a)+0.5)) 
#define BOUND(a)	((a)<0.0? 0 : ((a)>255.0? 255 : a)) 
#define RINT(x)	(int)floor(x+0.5)	// same as ROUND 
 
/* GCC - math.h */ 
#define M_E          2.7182818284590452354 
#define M_LOG2E		1.4426950408889634074 
#define M_LOG10E	   0.43429448190325182765 
#define M_LN2		   0.69314718055994530942 
#define M_LN10		   2.30258509299404568402 
#define M_PI		   3.14159265358979323846 
#define M_PI_2		   1.57079632679489661923 
#define M_PI_4		   0.78539816339744830962 
#define M_1_PI		   0.31830988618379067154 
#define M_2_PI		   0.63661977236758134308 
#define M_2_SQRTPI	1.12837916709551257390 
#define M_SQRT2		1.41421356237309504880 
#define M_SQRT1_2	   0.70710678118654752440 
#define PI	         M_PI 
#define PI2		      M_PI_2 
#define SQRT2			M_SQRT2 
#define ONELOG2		M_LOG2E 
 
Real MOD (Real x, Real N); 
Real square (Real x); 
int isquare (int x); 
int sign(Real x); 
int log2 (int x); 
Real FindMax(Real *input, int size); 
Real FindMin(Real *input, int size); 
void FindMaxMin(Real *input, int size, Real *Max, Real *Min); 
Real Sum(Real *input, int size); 
void AddValue(Real *input, int size, double value); 
void WaitKey(void); 
int GetFileLength (char *FileName); 
void Error(char *fmt, ...); 
void Warning(char *fmt, ...); 
#endif