ESYS13
Revision_
|
00001 00002 /******************************************************* 00003 * 00004 * Copyright (c) 2003-2012 by University of Queensland 00005 * Earth Systems Science Computational Center (ESSCC) 00006 * http://www.uq.edu.au/esscc 00007 * 00008 * Primary Business: Queensland, Australia 00009 * Licensed under the Open Software License version 3.0 00010 * http://www.opensource.org/licenses/osl-3.0.php 00011 * 00012 *******************************************************/ 00013 00014 00015 #ifndef ESYSTYPES_H 00016 #define ESYSTYPES_H 00017 #include "system_dep.h" 00018 /* 00019 * Use the integer types defined in the 1999 ISO C Standard 00020 * To specify a suitable Esys integer type 00021 */ 00022 #include <stdint.h> 00023 00024 #if ESYS_INT_BITS==64 00025 typedef int64_t EsysIntType; 00026 #else 00027 typedef int32_t EsysIntType; 00028 #endif 00029 00030 /* 00031 * A primitive test to ensure the array index type is at least as large 00032 * as requested. Could put in another test if it is larger. 00033 * An obscure compile error will result if the array index type isn't large 00034 * enough 00035 */ 00036 static char EsysIntType_Too_Small[sizeof(EsysIntType)*8-ESYS_INT_BITS]; 00037 00038 #endif