os.h

Go to the documentation of this file.
00001 /*****************************************************************************/
00002 /*!
00003  * \file os.h
00004  * \brief Abstraction over different operating systems.
00005  * 
00006  * Author: Alexander Fuchs
00007  * 
00008  * Created: Fri Feb 16 12:00:00 2007
00009  *
00010  * <hr>
00011  *
00012  * License to use, copy, modify, sell and/or distribute this software
00013  * and its documentation for any purpose is hereby granted without
00014  * royalty, subject to the terms and conditions defined in the \ref
00015  * LICENSE file provided with this distribution.
00016  * 
00017  * <hr>
00018  * 
00019  */
00020 /*****************************************************************************/
00021 
00022 #ifndef _cvc3__windows_h_
00023 #define _cvc3__windows_h_
00024 
00025 
00026 // define if cvc3lib built as a dll, comment if cvc3lib is linked statically
00027 // #define CVC_DLL_LINKAGE
00028 // library export of C++ symbols for C++ windows interface
00029 
00030 // for dynamic binding dll export needed
00031 #ifdef CVC_DLL_LINKAGE
00032  #ifdef CVC_DLL_EXPORT
00033  #define CVC_DLL __declspec(dllexport)
00034  #elif CVC_DLL_IMPORT
00035  #define CVC_DLL __declspec(dllimport)
00036  #else
00037  #define CVC_DLL
00038  #endif
00039 
00040 // for static binding dll export not needed
00041 #else
00042 #define CVC_DLL
00043 
00044 #endif
00045 
00046 
00047 /// MS C++ specific settings
00048 #ifdef _MSC_VER
00049 // CLR specific settings
00050 //  #ifdef _MANAGED
00051 
00052 // C99 stdint data types
00053 typedef unsigned int         uint;
00054 typedef signed __int8        int8_t;
00055 typedef signed __int16       int16_t;
00056 typedef signed __int32       int32_t;
00057 typedef signed __int64       int64_t;
00058 typedef unsigned __int8      uint8_t;
00059 typedef unsigned __int16     uint16_t;
00060 typedef unsigned __int32     uint32_t;
00061 typedef unsigned __int64     uint64_t;
00062 
00063 // unix specific settings
00064 #else
00065 
00066 // C99 data types
00067 // (should) provide:
00068 // int8_t, int16_t, int32_t, int64_t, uint8_t, uint16_t, uint32_t, uint64_tm
00069 // intptr_t, uintptr_t
00070 #include <stdint.h>
00071 
00072 #endif
00073 
00074 
00075 
00076 #endif

Generated on Tue Jul 3 14:33:38 2007 for CVC3 by  doxygen 1.5.1