SHOGUN
v3.2.0
|
00001 /* 00002 * This program is free software; you can redistribute it and/or modify 00003 * it under the terms of the GNU General Public License as published by 00004 * the Free Software Foundation; either version 3 of the License, or 00005 * (at your option) any later version. 00006 * 00007 * Written (W) 1999-2009 Soeren Sonnenburg 00008 * Written (W) 1999-2008 Gunnar Raetsch 00009 * Written (W) 2006 Fabio De Bona 00010 * Written (W) 2006 Konrad Rieck 00011 * Written (W) 2006-2008 Christian Gehl 00012 * Copyright (C) 1999-2009 Fraunhofer Institute FIRST and Max-Planck-Society 00013 */ 00014 00015 #ifndef __COMMON_H__ 00016 #define __COMMON_H__ 00017 00018 #include <stdlib.h> 00019 #include <stdio.h> 00020 #include <shogun/lib/config.h> 00021 00026 00027 #include <stdint.h> 00028 00029 /* No feature test: 00030 * ISO C99: 7.8 Format conversion of integer types <inttypes.h> 00031 * 00032 * If not supported make sure that your development environment is 00033 * supporting ISO C99! 00034 */ 00035 #ifdef __STDC_FORMAT_MACROS 00036 #include <inttypes.h> 00037 #else 00038 #define __STDC_FORMAT_MACROS 1 00039 #include <inttypes.h> 00040 #undef __STDC_FORMAT_MACROS 00041 #endif 00042 00047 typedef float float32_t; 00048 typedef double float64_t; 00049 typedef long double floatmax_t; 00050 00052 00053 #define STRING_LEN 256 00054 #define STRING_LEN_STR "256" 00055 typedef char string_t[STRING_LEN]; 00056 00057 typedef int machine_int_t; 00058 00060 typedef int32_t index_t; 00061 00063 #include <complex> 00064 00065 typedef std::complex<float64_t> complex128_t; 00066 00067 #include <shogun/lib/memory.h> 00068 #endif //__COMMON_H__