blob: 71b5b658013b0ea422dfb13767c745bc116e1200 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
/* $Id: CoinFinite.hpp 1762 2014-12-29 20:37:12Z tkr $ */
// Copyright (C) 2002, International Business Machines
// Corporation and others. All Rights Reserved.
// This code is licensed under the terms of the Eclipse Public License (EPL).
/* Defines COIN_DBL_MAX and relatives and provides CoinFinite and CoinIsnan. */
#ifndef CoinFinite_H
#define CoinFinite_H
#include <limits>
//=============================================================================
// Smallest positive double value and Plus infinity (double and int)
#if 1
const double COIN_DBL_MIN = (std::numeric_limits<double>::min)();
const double COIN_DBL_MAX = (std::numeric_limits<double>::max)();
const int COIN_INT_MAX = (std::numeric_limits<int>::max)();
const double COIN_INT_MAX_AS_DOUBLE = (std::numeric_limits<int>::max)();
#else
#define COIN_DBL_MIN (std::numeric_limits<double>::min())
#define COIN_DBL_MAX (std::numeric_limits<double>::max())
#define COIN_INT_MAX (std::numeric_limits<int>::max())
#define COIN_INT_MAX_AS_DOUBLE (std::numeric_limits<int>::max())
#endif
/** checks if a double value is finite (not infinity and not NaN) */
extern bool CoinFinite(double val);
/** checks if a double value is not a number */
extern bool CoinIsnan(double val);
#endif
|