00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef __COMMON_H__
00016 #define __COMMON_H__
00017
00018 #include <stdlib.h>
00019 #include <stdio.h>
00020 #include "lib/config.h"
00021 #include "lib/memory.h"
00022
00023 #ifdef SUNOS
00024 #define bool int
00025 #define false 0
00026 #define true 1
00027 #endif
00028
00029 #ifndef LINUX
00030 #define RANDOM_MAX 2147483647
00031 #else
00032 #define RANDOM_MAX RAND_MAX
00033 #endif
00034
00039
00041 typedef char CHAR;
00042 typedef CHAR* P_CHAR;
00043
00045 typedef unsigned char BYTE;
00046 typedef BYTE* P_BYTE;
00047
00049 typedef short int SHORT;
00050 typedef SHORT* P_SHORT;
00051
00053 typedef unsigned short int WORD;
00054 typedef WORD* P_WORD;
00055
00057 typedef int INT;
00058 typedef INT* P_INT;
00059
00061 typedef unsigned int UINT;
00062 typedef UINT* P_UINT;
00063
00065 #ifndef SUNOS
00066 #include <stdint.h>
00067 typedef int64_t LONG;
00068 #else
00069 typedef long LONG;
00070 #endif
00071 typedef LONG* P_LONG;
00072
00074 #ifndef SUNOS
00075 #include <stdint.h>
00076 typedef uint64_t ULONG;
00077 #else
00078 typedef unsigned long ULONG;
00079 #endif
00080 typedef ULONG* P_ULONG;
00081
00083 typedef float SHORTREAL;
00084 typedef SHORTREAL* P_SHORTREAL;
00085
00087 typedef double DREAL;
00088 typedef DREAL* P_DREAL;
00089
00091 typedef long double LONGREAL;
00092 typedef LONGREAL* P_LONGREAL;
00093
00094 #ifdef USE_SHORTREAL_KERNELCACHE
00095 typedef SHORTREAL KERNELCACHE_ELEM;
00096 #else
00097 typedef DREAL KERNELCACHE_ELEM;
00098 #endif
00099
00100 typedef LONG KERNELCACHE_IDX;
00101
00105 enum EMessageType
00106 {
00107 M_DEBUG,
00108 M_INFO,
00109 M_NOTICE,
00110 M_WARN,
00111 M_ERROR,
00112 M_CRITICAL,
00113 M_ALERT,
00114 M_EMERGENCY,
00115 M_MESSAGEONLY
00116 };
00117
00118 enum EOptimizationType
00119 {
00120 FASTBUTMEMHUNGRY,
00121 SLOWBUTMEMEFFICIENT
00122 };
00123
00124 enum ENormalizationType
00125 {
00126 NO_NORMALIZATION,
00127 SQRT_NORMALIZATION,
00128 FULL_NORMALIZATION,
00129 SQRTLEN_NORMALIZATION,
00130 LEN_NORMALIZATION,
00131 SQLEN_NORMALIZATION
00132 };
00133
00134 enum EWDKernType
00135 {
00136 E_WD=0,
00137 E_EXTERNAL=1,
00138
00139 E_BLOCK_CONST=2,
00140 E_BLOCK_LINEAR=3,
00141 E_BLOCK_SQPOLY=4,
00142 E_BLOCK_CUBICPOLY=5,
00143 E_BLOCK_EXP=6,
00144 E_BLOCK_LOG=7,
00145 E_BLOCK_EXTERNAL=8
00146 };
00147
00148 enum EKernelType
00149 {
00150 K_UNKNOWN = 0,
00151 K_LINEAR = 10,
00152 K_SPARSELINEAR = 11,
00153 K_POLY = 20,
00154 K_GAUSSIAN = 30,
00155 K_SPARSEGAUSSIAN = 31,
00156 K_GAUSSIANSHIFT = 32,
00157 K_HISTOGRAM = 40,
00158 K_SALZBERG = 41,
00159 K_LOCALITYIMPROVED = 50,
00160 K_SIMPLELOCALITYIMPROVED = 60,
00161 K_FIXEDDEGREE = 70,
00162 K_WEIGHTEDDEGREE = 80,
00163 K_WEIGHTEDDEGREEPOS = 81,
00164 K_WEIGHTEDCOMMWORDSTRING = 90,
00165 K_POLYMATCH = 100,
00166 K_ALIGNMENT = 110,
00167 K_COMMWORDSTRING = 120,
00168 K_COMMULONGSTRING = 121,
00169 K_COMBINED = 140,
00170 K_AUC = 150,
00171 K_CUSTOM = 160,
00172 K_SIGMOID = 170,
00173 K_CHI2 = 180,
00174 K_DIAG = 190,
00175 K_CONST = 200,
00176 K_MINDYGRAM = 210,
00177 K_DISTANCE = 220,
00178 K_LOCALALIGNMENT= 230,
00179 K_PYRAMIDCHI2= 240,
00180 };
00181
00182 enum EClassifierType
00183 {
00184 CT_NONE = 0,
00185 CT_LIGHT = 10,
00186 CT_LIBSVM = 20,
00187 CT_LIBSVMONECLASS=30,
00188 CT_LIBSVMMULTICLASS=40,
00189 CT_MPD = 50,
00190 CT_GPBT = 60,
00191 CT_CPLEXSVM = 70,
00192 CT_PERCEPTRON = 80,
00193 CT_KERNELPERCEPTRON = 90,
00194 CT_LDA = 100,
00195 CT_LPM = 110,
00196 CT_LPBOOST = 120,
00197 CT_KNN = 130,
00198 CT_SVMLIN=140,
00199 CT_KRR = 150,
00200 CT_GNPPSVM = 160,
00201 CT_GMNPSVM = 170,
00202 CT_SUBGRADIENTSVM = 180,
00203 CT_SUBGRADIENTLPM = 190,
00204 CT_SVMPERF = 200,
00205 CT_LIBSVR = 210,
00206 CT_SVRLIGHT = 220,
00207 CT_LIBLINEAR = 230,
00208 CT_KMEANS = 240,
00209 CT_HIERARCHICAL = 250,
00210 CT_SVMOCAS = 260,
00211 CT_WDSVMOCAS = 270,
00212 CT_SVMSGD = 280,
00213 };
00214
00215 enum EDistanceType
00216 {
00217 D_UNKNOWN = 0,
00218 D_MINKOWSKI = 10,
00219 D_MANHATTAN = 20,
00220 D_CANBERRA = 30,
00221 D_CHEBYSHEW = 40,
00222 D_GEODESIC = 50,
00223 D_JENSEN = 60,
00224 D_MANHATTANWORD = 70,
00225 D_HAMMINGWORD = 80 ,
00226 D_CANBERRAWORD = 90,
00227 D_SPARSEEUCLIDIAN = 100,
00228 D_EUCLIDIAN = 110
00229 };
00230
00231 enum ERegressionType
00232 {
00233 RT_NONE = 0,
00234 RT_LIGHT = 10,
00235 RT_LIBSVM = 20
00236 };
00237
00238 enum EPreProcType
00239 {
00240 P_UNKNOWN=0,
00241 P_NORMONE=10,
00242 P_LOGPLUSONE=20,
00243 P_SORTWORDSTRING=30,
00244 P_SORTULONGSTRING=40,
00245 P_SORTWORD=50,
00246 P_PRUNEVARSUBMEAN=60
00247 };
00248
00249 enum EKernelProperty
00250 {
00251 KP_NONE = 0,
00252 KP_LINADD = 1,
00253 KP_KERNCOMBINATION = 2,
00254 KP_BATCHEVALUATION = 4
00255 };
00256
00257 enum EFeatureType
00258 {
00259 F_UNKNOWN = 0,
00260 F_CHAR = 10,
00261 F_BYTE = 20,
00262 F_SHORT = 30,
00263 F_WORD = 40,
00264 F_INT = 50,
00265 F_UINT = 60,
00266 F_LONG = 70,
00267 F_ULONG = 80,
00268 F_SHORTREAL = 90,
00269 F_DREAL = 100,
00270 F_LONGREAL = 110,
00271 F_ANY = 1000
00272 };
00273
00274 enum EFeatureClass
00275 {
00276 C_UNKNOWN = 0,
00277 C_SIMPLE = 10,
00278 C_SPARSE = 20,
00279 C_STRING = 30,
00280 C_COMBINED = 40,
00281 C_ANY = 50,
00282 C_MINDYGRAM = 60
00283 };
00284
00286 enum E_ALPHABET
00287 {
00289 DNA=0,
00290
00292 RAWDNA=1,
00293
00295 RNA=2,
00296
00298 PROTEIN=3,
00299
00301 ALPHANUM=5,
00302
00304 CUBE=6,
00305
00307 RAWBYTE=7,
00308
00310 IUPAC_NUCLEIC_ACID=8,
00311
00313 IUPAC_AMINO_ACID=9,
00314
00316 NONE=10,
00317
00319 UNKNOWN=11,
00320 };
00321
00323
00324
00325
00326 #endif