nmpp
nmdef.h
1
2#ifndef __NMDEF_H
3#define __NMDEF_H
4
5#ifdef __NM__
6 #ifndef NMDEF
7 #define NMDEF
8 #endif
9#endif
10
11#ifdef NM6403
12 #ifndef NMDEF
13 #define NMDEF
14 #endif
15#endif
16
17
18#ifndef NULL
19 #define NULL 0
20#endif
21/*
22#ifndef ADDR
23 #ifdef __NM__
24 #define ADDR(base,disp) \
25 ( sizeof(*(base)) == 1 ? nmppsAddr_((base),(disp)): \
26 ((base)+(disp)) \
27 )
28 #else
29 #define ADDR(base,disp) ((base)+(disp))
30 #endif //NMDEF
31#endif //ADDR
32*/
33#ifndef MIN
34#define MIN(a,b) ((a) > (b) ? (b) : (a))
35#endif
36
37#ifndef MAX
38#define MAX(a,b) ((a) < (b) ? (b) : (a))
39#endif
40
41#ifndef ABS
42#define ABS(a) ((a) < (0) ? -(a): (a))
43#endif
44
45#ifndef ROUND2INT
46#define ROUND2INT(a) ((a) >= 0 ? (int((a)+0.5)) : (int((a)-0.5)))
47#endif
48
49#ifdef __NM__
50#define GET_CHAR(pArray,Index,val) (nmppsGetVal_((pArray),(Index),(val)))
51#define GET_SHORT(pArray,Index,val) (nmppsGetVal_((pArray),(Index),(val)))
52#define SET_CHAR(pArray,Index,Char) (nmppsPut_((pArray),(Index),(Char)))
53#define SET_SHORT(pArray,Index,Short) (nmppsPut_((pArray),(Index),(Short)))
54#else
55#define GET_CHAR(pArray,Index,val) ((val)=(pArray)[(Index)])
56#define GET_SHORT(pArray,Index,val) ((val)=(pArray)[(Index)])
57#define SET_CHAR(pArray,Index,Char) ((pArray)[(Index)]=(Char))
58#define SET_SHORT(pArray,Index,Short) ((pArray)[(Index)]=(Short))
59#endif
60
61#define LONG2INT(size) ((size)<<1)
62
63#define long2INT(size) ((size)<<1)
64#define int2INT(size) ((size))
65#define short2INT(size) ((size)>>1)
66#define char2INT(size) ((size)>>2)
67
68
69#define LONG2long(size) ((size))
70#define LONG2int(size) ((size)<<1)
71#define LONG2short(size) ((size)<<2)
72#define LONG2char(size) ((size)<<3)
73
74#define long2long(size) ((size))
75#define long2int(size) ((size)<<1)
76#define long2short(size) ((size)<<2)
77#define long2char(size) ((size)<<3)
78
79#define int2long(size) ((size)>>1)
80#define int2int(size) ((size))
81#define int2short(size) ((size)<<1)
82#define int2char(size) ((size)<<2)
83
84#define short2long(size) ((size)>>2)
85#define short2int(size) ((size)>>1)
86#define short2short(size) ((size))
87#define short2char(size) ((size)<<1)
88
89#define char2long(size) ((size)>>3)
90#define char2int(size) ((size)>>2)
91#define char2short(size) ((size)>>1)
92#define char2char(size) ((size))
93
94
95#endif