Символическое имя | Значение | Примечания | Файл |
MAXSHORT | 0x7FFF | - | u_typedef.hpp |
MINSHORT | 0x8000 | - | u_typedef.hpp |
MAXLONG | 0x7FFFFFFF | - | u_typedef.hpp |
MINLONG | 0x80000000 | - | u_typedef.hpp |
FLOAT_ZERO_EPSILON | 1e-6 | u_typedef.hpp | |
FLOAT_ZERO_EPSILON_SQUARE | 1e-12 | u_typedef.hpp | |
#ifndef U_ASSERT
#ifdef DEBUG
#define U_ASSERT(exp) assert(exp)
#else
#define U_ASSERT(exp)
#endif
#endif
#ifndef U_UNASSIGN
#ifdef DEBUG
#define U_UNASSIGN(ptr) ptr=NULL
#else
#define U_UNASSIGN(ptr)
#endif
#endif
typedef unsigned char u_8;
typedef char i_8;
typedef unsigned short u_16;
typedef short i_16;
typedef unsigned long u_32;
typedef long i_32;
typedef unsigned __int64 u_64;
typedef __int64 i_64;
/* Удобные типы - гарантированная
длина */
typedef u_8 byte;
typedef byte *pbyte;
typedef i_8 *pchar;
typedef i_16 word;
typedef word *pword;
typedef u_32 dword;
typedef dword *pdword;
/* Булевский тип - длина НЕ
гарантирована ! */
#if !defined(__cplusplus) && defined(__WATCOMC__)
typedef enum { false, true } uboolean;
#else
typedef int uboolean;
#define false 0
#define true (!false)
#endif
/* Базовый скалярный тип */
#ifdef DOUBLEVEC
typedef double scalar_t,*scalar_p;
#else /* !DOUBLEVEC */
typedef float scalar_t,*scalar_p;
#endif /* DOUBLEVEC */
typedef scalar_t vec_t,*vec_p;
#define size_vec sizeof(vec_t)
/* Векторные типы */
typedef vec_t vec2_t[2];
typedef vec2_t tex_t;
typedef vec_t vec3_t[3];
typedef vec_t vec4_t[4];
typedef vec3_t rgb_t;
typedef vec4_t rgba_t;
typedef vec_t matrix2_t[2][2];
typedef vec_t matrix3_t[3][3];
typedef vec_t matrix4_t[4][4];
typedef vec_t matrix3x4_t[3][4];
typedef matrix3x4_t transform_t;
/* Байтовые цвета RGB и с альфа -
составляющей */
typedef struct { byte b,g,r;} bytebgr_t;
typedef struct { byte a,b,g,r;} byteabgr_t;
typedef struct { byte r,g,b;} bytergb_t;
typedef struct { byte r,g,b,a;} bytergba_t;
/* Макрос для экспортируемых
функций */
#ifdef WIN32
#define UEXPORT __declspec(dllexport) __stdcall
#else
#define UEXPORT __stdcall
#endif