00001 /*************************************************************************** 00002 $RCSfile$ 00003 ------------------- 00004 cvs : $Id: types.h.in 975 2006-01-31 10:39:34Z cstim $ 00005 begin : Sun Jan 04 2004 00006 copyright : (C) 2004 by Martin Preuss 00007 email : martin@libchipcard.de 00008 00009 *************************************************************************** 00010 * * 00011 * This library is free software; you can redistribute it and/or * 00012 * modify it under the terms of the GNU Lesser General Public * 00013 * License as published by the Free Software Foundation; either * 00014 * version 2.1 of the License, or (at your option) any later version. * 00015 * * 00016 * This library is distributed in the hope that it will be useful, * 00017 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00018 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 00019 * Lesser General Public License for more details. * 00020 * * 00021 * You should have received a copy of the GNU Lesser General Public * 00022 * License along with this library; if not, write to the Free Software * 00023 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, * 00024 * MA 02111-1307 USA * 00025 * * 00026 ***************************************************************************/ 00027 00028 #ifndef GWENHYWFAR_TYPES_H 00029 #define GWENHYWFAR_TYPES_H 00030 00032 #define GWEN_TYPE_TMPL_UINT32 "%u" 00033 #define GWEN_TYPE_TMPL_UINT64 "%llu" 00034 00035 00037 typedef unsigned int GWEN_TYPE_UINT32; 00038 00039 /* Here we provide G_GNUC_EXTENSION as an alias for __extension__, 00040 * where this is valid. This allows for warningless compilation of 00041 * "long long" types even in the presence of '-ansi -pedantic'. Copied 00042 * from glib-2.0's gmacros.h. 00043 */ 00044 #if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 8) 00045 # define GWEN_GNUC_EXTENSION __extension__ 00046 #else 00047 # define GWEN_GNUC_EXTENSION 00048 #endif 00049 00055 #ifdef __GNUC__ 00056 GWEN_GNUC_EXTENSION 00057 typedef unsigned long long GWEN_TYPE_UINT64; 00058 #else /* __GNUC__ */ 00059 # include <windows.h> 00060 /* Workaround for Microsoft Visual Studio Compiler (MSVC) which does 00061 * not have "long long" but ULONG64 instead. */ 00062 typedef ULONG64 GWEN_TYPE_UINT64; 00063 #endif /* __GNUC__ */ 00064 00065 00066 #define GWENHYWFAR_SYS_IS_WINDOWS 0 00067 00068 /* Watch out: This include *must* come after the definition of 00069 GWENHYWFAR_SYS_IS_WINDOWS or else the dllimport/export attributes 00070 will easily be messed up! */ 00071 #include <gwenhywfar/gwenhywfarapi.h> 00072 00073 00074 #endif 00075