Lexis  1.0.0
Vocabulary of events and shared objects for BBP and HBP software
version.h
Go to the documentation of this file.
1 // generated by CommonLibrary.cmake, do not edit.
2 
8 #ifndef LEXIS_VERSION_H
9 #define LEXIS_VERSION_H
10 
11 #include <lexis/api.h>
12 #include <string>
13 
14 namespace lexis
15 {
17 # define LEXIS_VERSION_MAJOR 1
18 
20 # define LEXIS_VERSION_MINOR 0
21 
23 # define LEXIS_VERSION_PATCH 0
24 
26 # define LEXIS_VERSION_REVISION 0x638840b
27 
29 # define LEXIS_VERSION_ABI 1
30 
32 # define LEXIS_VERSION_GT( MAJOR, MINOR, PATCH ) \
33  ( (LEXIS_VERSION_MAJOR>MAJOR) || \
34  (LEXIS_VERSION_MAJOR==MAJOR && (LEXIS_VERSION_MINOR>MINOR || \
35  (LEXIS_VERSION_MINOR==MINOR && LEXIS_VERSION_PATCH>PATCH))))
36 
38 # define LEXIS_VERSION_GE( MAJOR, MINOR, PATCH ) \
39  ( (LEXIS_VERSION_MAJOR>MAJOR) || \
40  (LEXIS_VERSION_MAJOR==MAJOR && (LEXIS_VERSION_MINOR>MINOR || \
41  (LEXIS_VERSION_MINOR==MINOR && LEXIS_VERSION_PATCH>=PATCH))))
42 
44 # define LEXIS_VERSION_LT( MAJOR, MINOR, PATCH ) \
45  ( (LEXIS_VERSION_MAJOR<MAJOR) || \
46  (LEXIS_VERSION_MAJOR==MAJOR && (LEXIS_VERSION_MINOR<MINOR || \
47  (LEXIS_VERSION_MINOR==MINOR && LEXIS_VERSION_PATCH<PATCH))))
48 
50 # define LEXIS_VERSION_LE( MAJOR, MINOR, PATCH ) \
51  ( (LEXIS_VERSION_MAJOR<MAJOR) || \
52  (LEXIS_VERSION_MAJOR==MAJOR && (LEXIS_VERSION_MINOR<MINOR || \
53  (LEXIS_VERSION_MINOR==MINOR && LEXIS_VERSION_PATCH<=PATCH))))
54 
56 class LEXIS_API Version
57 {
58 public:
60  static int getMajor();
61 
63  static int getMinor();
64 
66  static int getPatch();
67 
69  static std::string getString();
70 
72  static int getRevision();
73 
75  static int getABI();
76 
78  static std::string getRevString();
79 
88  static bool check()
89  {
90  return getMajor()==LEXIS_VERSION_MAJOR &&
91  getMinor()==LEXIS_VERSION_MINOR;
92  }
93 };
94 
95 }
96 
97 #endif
Defines export visibility macros for library Lexis.
static bool check()
Runtime check for ABI compatibility.
Definition: version.h:88
Information about the current Lexis version.
Definition: version.h:56
#define LEXIS_VERSION_MINOR
The current minor version.
Definition: version.h:20
#define LEXIS_VERSION_MAJOR
The current major version.
Definition: version.h:17