Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

ab.h

Go to the documentation of this file.
00001 // ab.h 00002 00003 // Input: 00004 // A1: A or W: Ansi, Wide 00005 // A2: A or W 00006 00007 // macros: (where x is 1 or 2) 00008 // IFx(ansi,wide) 00009 // AWx: adds suffix (A or W) 00010 // Lx(a) makes widechar 00011 00012 #if !defined(A1) || !defined(A2) 00013 #error A1 and A2 must be defined as A or W 00014 #endif 00015 00016 #ifdef AW1 00017 00018 #undef AW1 00019 #undef AW2 00020 #undef IF1 00021 #undef IF2 00022 #undef L1 00023 #undef L2 00024 #undef FAW 00025 00026 #endif 00027 00028 #ifndef CONCAT 00029 #define CONCAT(a,b) a##b 00030 #endif 00031 00032 #if A1 00033 00034 #define IF1(a,w) w 00035 #define AW1(x) x##W 00036 #define L1(x) CONCAT(L, x) 00037 00038 #else 00039 00040 #define IF1(a,w) a 00041 #define AW1(x) x##A 00042 #define L1(x) x 00043 00044 #endif 00045 00046 #if A2 00047 00048 #define IF2(a,w) w 00049 #define AW2(x) x##W 00050 #define L2(x) CONCAT(L, x) 00051 00052 #else 00053 00054 #define IF2(a,w) a 00055 #define AW2(x) x##A 00056 #define L2(x) x 00057 00058 #endif 00059 00060 #if A1 00061 #if A2 00062 #define FAW(x) x##WW 00063 #else 00064 #define FAW(x) x##WA 00065 #endif 00066 #else 00067 #if A2 00068 #define FAW(x) x##AW 00069 #else 00070 #define FAW(x) x##AA 00071 #endif 00072 #endif

Generated on Sat May 15 19:39:12 2004 for test by doxygen 1.3.7