SNAP Library 2.1, Developer Reference  2013-09-25 10:47:25
SNAP, a general purpose, high performance system for analysis and manipulation of large networks
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
base.h
Go to the documentation of this file.
00001 #ifndef base_h
00002 #define base_h
00003 
00005 // Environment defines
00006 #if defined (_WIN32)
00007   #define GLib_WIN
00008   #define GLib_WIN32
00009 #elif defined (__WIN64)
00010 #define GLib_WIN
00011   #define GLib_WIN64
00012 #elif defined(__linux__)
00013   #define GLib_UNIX
00014   #define GLib_LINUX __linux__
00015 #elif defined(__sun__)
00016   #define GLib_UNIX
00017   #define GLib_SOLARIS __sun__
00018   // !bn: defined in ctype_iso.h but apears as a parameter in GLib
00019   #undef _C
00020 #elif defined(__FreeBSD__)
00021   #define GLib_UNIX
00022   #define GLib_BSD __FreeBSD__
00023 #elif defined(__CYGWIN__)
00024   #define GLib_UNIX
00025   #define GLib_CYGWIN
00026 #elif (defined(__APPLE__) && defined(__MACH__))
00027   #define GLib_UNIX
00028   #define GLib_MACOSX
00029 #endif
00030 
00031 #define _CMPWARN
00032 // compiler
00033 #if defined (_MSC_VER)
00034   #define GLib_MSC _MSC_VER
00035 #endif
00036 #if defined (__BCPLUSPLUS__)
00037   #define GLib_BCB __BCPLUSPLUS__
00038 #endif
00039 #if defined (__GNUC__)
00040   #define GLib_GCC __GNUC__
00041 // !bn: to bo not samo dokler ne ugotovim kje so primerjave problematicne
00042   #ifdef FLTWARN
00043     #undef _CMPWARN
00044     #define _CMPWARN __attribute__ ((deprecated))
00045   #endif
00046 #endif
00047 
00048 // includes
00049 #if defined (GLib_WIN32)
00050   #define WIN32_LEAN_AND_MEAN
00051   #include <windows.h>
00052   #if !defined(_WINSOCKAPI_) && !defined(_WINSOCK2API_)
00053     #include <winsock2.h>
00054   #endif
00055   #include <oleauto.h>
00056   #include <shellapi.h>
00057 #endif
00058 
00059 #if defined(GLib_UNIX)
00060   #undef __STDC_LIMIT_MACROS
00061   #define __STDC_LIMIT_MACROS
00062   #include <stdint.h>
00063   #include <stdarg.h>
00064   #include <errno.h>
00065   #include <fcntl.h>
00066   #include <dirent.h>
00067   #include <unistd.h>
00068   #include <signal.h>
00069   #include <sys/poll.h>
00070   #include <sys/socket.h>
00071   #include <sys/stat.h>
00072   #include <sys/time.h>
00073   #include <sys/types.h>
00074   #include <sys/wait.h>
00075   #include <sys/resource.h>
00076   #include <netdb.h>
00077   #include <arpa/inet.h>
00078   #include <netinet/in.h>
00079 #endif
00080 
00081 // word size
00082 #if __WORDSIZE == 32 || defined(GLib_WIN32) || defined(__CYGWIN32__)
00083   #define GLib_32Bit
00084 #elif __WORDSIZE == 64 || defined(GLib_WIN64) || defined(__CYGWIN64__)
00085   #define GLib_64Bit
00086 #else
00087   #error "Undefined word size"
00088 #endif
00089 
00090 #if defined(GLib_UNIX)
00091   #ifndef _environ
00092     #if defined(GLib_MACOSX)
00093      #include <crt_externs.h>
00094      #define _environ (*_NSGetEnviron())
00095     #elif !defined(GLib_CYGWIN)
00096      #define _environ __environ
00097      extern int _daylight;
00098     #else
00099      #define _environ environ
00100     #endif
00101   #endif
00102   #ifndef __stdcall
00103     #define __stdcall
00104   #endif
00105 #endif
00106 
00107 #if defined(GLib_LINUX)
00108   #include <sys/epoll.h>
00109 #endif
00110 
00111 #if defined(GLib_SOLARIS)
00112   #include <ieeefp.h>
00113 #endif
00114 
00115 #if defined (__GLIBC__)
00116   #define GLib_GLIBC __GLIBC__
00117 #endif
00118 
00119 #if defined (__USE_XOPEN2K)
00120   #define GLib_POSIX_1j "1003.1j"
00121 #endif
00122 
00123 #include <ctype.h>
00124 #include <float.h>
00125 #include <limits.h>
00126 #include <math.h>
00127 #include <stdio.h>
00128 #include <stdlib.h>
00129 #include <string.h>
00130 #include <time.h>
00131 #include <typeinfo>
00132 #include <stdexcept>
00133 
00134 #ifdef GLib_CYGWIN
00135   #define timezone _timezone
00136 #endif
00137 
00138 //#ifdef GLib_MACOSX
00139 //  #undef _POSIX_MONOTONIC_CLOCK
00140 //#endif
00141 
00142 #include "bd.h"
00143 #include "fl.h"
00144 #include "dt.h"
00145 #include "ut.h"
00146 #include "ds.h"
00147 #include "bits.h"
00148 #include "hash.h"
00149 #include "xml.h"
00150 
00151 #include "xmath.h"
00152 #include "xmlser.h"
00153 
00154 #include "unicode.h"
00155 #include "unicodestring.h"
00156 #include "tm.h"
00157 #include "shash.h"
00158 #include "os.h"
00159 #include "console.h"
00160 
00161 #include "app.h"
00162 #include "env.h"
00163 #include "wch.h"
00164 #include "xdt.h"
00165 #include "xfl.h"
00166 
00167 #include "blobbs.h"
00168 #include "fds.h"
00169 #include "lx.h"
00170 #include "macro.h"
00171 #include "pp.h"
00172 #include "url.h"
00173 
00174 #include "exp.h"
00175 #include "http.h"
00176 #include "html.h"
00177 #include "md5.h"
00178 #include "ss.h"
00179 #include "json.h"
00180 //#include "prolog.h"
00181 
00182 #include "zipfl.h"
00183 
00184 void BaseTralala();
00185 
00186 #endif