ExRandom  3.0
exrandom_config.hpp
Go to the documentation of this file.
1 /**
2  * @file exrandom_config.hpp
3  * @author Charles Karney <charles.karney@sri.com>
4  * @brief Configuration for exrandom
5  *
6  * Copyright (c) Charles Karney (2016-2020) and licensed under the MIT/X11
7  * License. For more information, see http://exrandom.sourceforge.net/
8  */
9 
10 #if !defined(EXRANDOM_CONFIG_HPP)
11 #define EXRANDOM_CONFIG_HPP 1
12 
13 /**
14  * The major version number for ExRandom. This was introduced in version 2.1.
15  **********************************************************************/
16 #define EXRANDOM_VERSION_MAJOR 3
17 
18 /**
19  * The minor version number for ExRandom. This was introduced in version 2.1.
20  **********************************************************************/
21 #define EXRANDOM_VERSION_MINOR 0
22 
23 /**
24  * The patch number for ExRandom. This was introduced in version 2.1.
25  **********************************************************************/
26 #define EXRANDOM_VERSION_PATCH 0
27 
28 /**
29  * Pack the version components into a single integer. Users should not rely on
30  * this particular packing of the components of the version number; see the
31  * documentation for EXRANDOM_VERSION, below. This was introduced in version
32  * 2.1.
33  **********************************************************************/
34 #define EXRANDOM_VERSION_NUM(a,b,c) ((((a) * 10000 + (b)) * 100) + (c))
35 
36 /**
37  * The version of Exrandom as a single integer, packed as MMmmmmpp where MM is
38  * the major version, mmmm is the minor version, and pp is the patch level.
39  * This was introduced in version 2.1.
40  *
41  * Users should not rely on this particular packing of the components of the
42  * version number. Instead they should use a test such as \code
43  #if EXRANDOM_VERSION >= EXRANDOM_VERSION_NUM(2,1,0)
44  ...
45  #endif
46  * \endcode
47  **********************************************************************/
48 #define EXRANDOM_VERSION EXRANDOM_VERSION_NUM(EXRANDOM_VERSION_MAJOR, \
49  EXRANDOM_VERSION_MINOR, \
50  EXRANDOM_VERSION_PATCH)
51 
52 #if !(__cplusplus >= 201103 || (defined(_MSC_VER) && _MSC_VER >= 1900))
53 #error Need to use a C++11 compiler
54 #endif
55 
56 #endif // EXRANDOM_CONFIG_HPP