4BEGIN_MOOTOOLS_NAMESPACE
10 #define XASSERT(f) assert(f)
12 #define XASSERT(...) (__noop)
18#define XVERIFY(f) assert(f)
20#define XVERIFY(f) ((void)(f))
25 #define XIFDEBUG(a) { a }
27 #define XIFDEBUG(a) (__noop)
31 #define __max(a,b) (((a) > (b)) ? (a) : (b))
32 #define __min(a,b) (((a) < (b)) ? (a) : (b))
35#define SIZEOF_WCHAR32 4
36#define SIZEOF_WCHAR16 2
39#define XEnumType(a) : a
50#define Pair2LUint(a, b) ((longuint)(((longuint)a << 32)|((longuint)b)))
51#define Pair2LInt(a, b) ((longint)(((longint)a << 32)|((longint)b)))
53#define IntPtr2Int(a) ((int)(varint)(a))
54#define IntPtr2UInt(a) ((unsigned int)(varint)(a))
55#define Int2VoidPtr(a) ((void *)(longint)(a))
56#define LInt2VoidPtr(a) ((void *)(longint)(a))
57#define LUInt2VoidPtr(a) ((void *)(longuint)(a))
58#define VoidPtr2UInt(a) ((unsigned int)(longint)(void *)(a))
59#define VoidPtr2Int(a) ((int)(longint)(void *)(a))
60#define VoidPtr2LUInt(a) ((longuint)(void *)(a))
61#define VoidPtr2LInt(a) ((longint)(void *)(a))
63#define Int2Void(ptrvalue) ((void *)(longint)(ptrvalue))
64#define LUInt2UInt(a) ((unsigned int)(a))
65#define LInt2Int(a) ((int)(a))
66#define B2bool(a) (!!(a))
71#ifndef MAKE_CUSTOM_ID2
72# define MAKE_CUSTOM_ID2(a) ((const unsigned int) (a))
76#define MAKE_CUSTOM_ID(a, b, c, d) ((const unsigned int) \
77((const unsigned int) (a) << 24) | \
78((const unsigned int) (b) << 16) | \
79((const unsigned int) (c) << 8) | \
80((const unsigned int) (d)))
82#define QSORT_PROTO int(*)(const void *, const void *)
86#define CREATE_ID(a, b, c, d) ((unsigned int)(((unsigned char)a << 24)|((unsigned char)b << 16)|((unsigned char)c << 8)|(unsigned char)d))
88#define F_PI (3.1415926535f)
89#define D_PI (3.1415926535897932384626433832795028841968)
90#define DEG2RAD(angle) (((angle)*D_PI)/180.0)
91#define RAD2DEG(angle) (((angle)*180.0)/D_PI)
92#define DEG2RADF(angle) ((float)DEG2RAD(angle))
93#define RAD2DEGF(angle) ((float)RAD2DEG(angle))
95#define FLOAT_EPSILON (0.005)
96#define FLOAT_EPSILON2 (1e-6)
97#define FLOAT_EPSILON3 (1e-9)
98#define PRECISION_LIMIT (1.0e-15)
99#define ABS_MACRO(a) (((a)<0) ? -(a) : (a))
100#define FOUR_ROOT3 (6.928203230275509)
102#define INCH_VALUE_IN_MM 25.4f
104#define COMMANDVIEW_DEFAULT_BACKGROUND_COLOR1 RGB(128, 128, 128)
105#define COMMANDVIEW_DEFAULT_BACKGROUND_COLOR2 RGB(192, 192, 192)
107typedef enum _UNIT_MODE
XEnumType(
unsigned int)
124#define MAKEDWORD(a, b) ((DWORD)(((WORD)(a)) | ((DWORD)((WORD)(b))) << 16))
125#define MAKE_CUSTOM_ID2(a) ((const unsigned int) (a))
128typedef enum _DeiDllInit
XEnumType(
unsigned int)
130 DLL_INIT_DEFAULT = 0x00,
131 DLL_NO_COMMAND_MGR = 0x01,
132 DLL_NO_IO_PLUGIN = 0x02,
133 DLL_MINIMUM_INIT = 0xFF,
134 DLL_MINIMUM_WITH_IO_PLUGIN = (DLL_MINIMUM_INIT&(~DLL_NO_IO_PLUGIN)),
135 DLL_CALL_FROM_REGULAR_DLL = 0x100,
138typedef enum KeyAccess
XEnumType(
unsigned int)
140 KEY_NO_MODIFIER = 0x00,
149typedef enum DOCUMENT_POSITION
XEnumType(
unsigned int)
151 DOCUMENT_POS_NONE = 0x00,
152 DOCUMENT_HORIZONTAL_INFO = 0x07,
153 DOCUMENT_POS_LEFT = 0x01,
154 DOCUMENT_POS_HCENTER = 0x02,
155 DOCUMENT_POS_RIGHT = 0x04,
156 DOCUMENT_VERTICAL_POSITION_SHIFT = 3,
157 DOCUMENT_VERTICAL_INFO = 0x38,
158 DOCUMENT_POS_TOP = 0x08,
159 DOCUMENT_POS_VCENTER = 0x10,
160 DOCUMENT_POS_BOTTOM = 0x20,
163typedef enum DOCUMENT_ALIGN
XEnumType(
unsigned int)
165 DOCUMENT_ALIGN_NONE = 0x00,
166 DOCUMENT_HORIZONTAL_ALIGN = 0x07,
167 DOCUMENT_ALIGN_LEFT = 0x01,
168 DOCUMENT_ALIGN_HCENTER = 0x02,
169 DOCUMENT_ALIGN_RIGHT = 0x04,
170 DOCUMENT_VERTICAL_ALIGN_SHIFT = 3,
171 DOCUMENT_VERTICAL_ALIGN = 0x38,
172 DOCUMENT_ALIGN_TOP = 0x08,
173 DOCUMENT_ALIGN_VCENTER = 0x10,
174 DOCUMENT_ALIGN_BOTTOM = 0x20,
177END_MOOTOOLS_NAMESPACE
The class defines an x, y, z 3D point which can use int, float or double.
Definition 3DPoint.h:27