Cbc  2.9.9
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CoinTypes.hpp
Go to the documentation of this file.
1 /* $Id: CoinTypes.hpp 1762 2014-12-29 20:37:12Z tkr $ */
2 // Copyright (C) 2004, International Business Machines
3 // Corporation and others. All Rights Reserved.
4 // This code is licensed under the terms of the Eclipse Public License (EPL).
5 
6 #ifndef _CoinTypes_hpp
7 #define _CoinTypes_hpp
8 
9 #include "CoinUtilsConfig.h"
10 /* On some systems, we require stdint.h to have the 64bit integer type defined. */
11 #ifdef COINUTILS_HAS_STDINT_H
12 #include <stdint.h>
13 #endif
14 #ifdef COINUTILS_HAS_CSTDINT
15 #include <cstdint>
16 #endif
17 
18 #define CoinInt64 COIN_INT64_T
19 #define CoinUInt64 COIN_UINT64_T
20 #define CoinIntPtr COIN_INTPTR_T
21 
22 //=============================================================================
23 #ifndef COIN_BIG_INDEX
24 #define COIN_BIG_INDEX 0
25 #endif
26 
27 #if COIN_BIG_INDEX==0
28 typedef int CoinBigIndex;
29 #elif COIN_BIG_INDEX==1
30 typedef long CoinBigIndex;
31 #else
32 typedef long long CoinBigIndex;
33 #endif
34 
35 //=============================================================================
36 #ifndef COIN_BIG_DOUBLE
37 #define COIN_BIG_DOUBLE 0
38 #endif
39 
40 // See if we want the ability to have long double work arrays
41 #if COIN_BIG_DOUBLE==2
42 #undef COIN_BIG_DOUBLE
43 #define COIN_BIG_DOUBLE 0
44 #define COIN_LONG_WORK 1
45 typedef long double CoinWorkDouble;
46 #elif COIN_BIG_DOUBLE==3
47 #undef COIN_BIG_DOUBLE
48 #define COIN_BIG_DOUBLE 1
49 #define COIN_LONG_WORK 1
50 typedef long double CoinWorkDouble;
51 #else
52 #define COIN_LONG_WORK 0
53 typedef double CoinWorkDouble;
54 #endif
55 
56 #if COIN_BIG_DOUBLE==0
57 typedef double CoinFactorizationDouble;
58 #elif COIN_BIG_DOUBLE==1
59 typedef long double CoinFactorizationDouble;
60 #else
61 typedef double CoinFactorizationDouble;
62 #endif
63 
64 #endif
double CoinFactorizationDouble
Definition: CoinTypes.hpp:57
int CoinBigIndex
double CoinWorkDouble
Definition: CoinTypes.hpp:53