Dune Core Modules (unstable)
Go to the documentation of this file.
5 #ifndef DUNE_VERSION_HH
6 #define DUNE_VERSION_HH
28 #define DUNE_VERSION_JOIN(module,type) module ## _VERSION_ ## type
44 #define DUNE_VERSION_EQUAL(module,major,minor) \
45 ((DUNE_VERSION_JOIN(module,MAJOR) == major) && \
46 (DUNE_VERSION_JOIN(module,MINOR) == minor))
62 #define DUNE_VERSION_EQUAL_REV(module,major,minor,revision) \
63 ( DUNE_VERSION_EQUAL(module,major,minor) && \
64 (DUNE_VERSION_JOIN(module,REVISION) == revision))
80 #define DUNE_VERSION_GTE(module,major,minor) \
81 ((DUNE_VERSION_JOIN(module,MAJOR) > major) \
82 || ((DUNE_VERSION_JOIN(module,MAJOR) == major) && (DUNE_VERSION_JOIN(module,MINOR) >= minor)))
98 #define DUNE_VERSION_LT(module,major,minor) \
99 ! DUNE_VERSION_GTE(module,major,minor)
115 #define DUNE_VERSION_GT(module,major,minor) \
116 ((DUNE_VERSION_JOIN(module,MAJOR) > major) \
117 || ((DUNE_VERSION_JOIN(module,MAJOR) == major) && (DUNE_VERSION_JOIN(module,MINOR) > minor)))
133 #define DUNE_VERSION_LTE(module,major,minor) \
134 ! DUNE_VERSION_GT(module,major,minor)
150 #define DUNE_VERSION_GTE_REV(module,major,minor,revision) \
151 ((DUNE_VERSION_JOIN(module,MAJOR) > major) \
152 || ((DUNE_VERSION_JOIN(module,MAJOR) == major) && (DUNE_VERSION_JOIN(module,MINOR) > minor)) \
153 || ((DUNE_VERSION_JOIN(module,MAJOR) == major) && (DUNE_VERSION_JOIN(module,MINOR) == minor) \
154 && (DUNE_VERSION_JOIN(module,REVISION) >= revision)))
170 #define DUNE_VERSION_LT_REV(module,major,minor,revision) \
171 ! DUNE_VERSION_GTE_REV(module,major,minor,revision)
187 #define DUNE_VERSION_GT_REV(module,major,minor,revision) \
188 ((DUNE_VERSION_JOIN(module,MAJOR) > major) \
189 || ((DUNE_VERSION_JOIN(module,MAJOR) == major) && (DUNE_VERSION_JOIN(module,MINOR) > minor)) \
190 || ((DUNE_VERSION_JOIN(module,MAJOR) == major) && (DUNE_VERSION_JOIN(module,MINOR) == minor) \
191 && (DUNE_VERSION_JOIN(module,REVISION) > revision)))
207 #define DUNE_VERSION_LTE_REV(module,major,minor,revision) \
208 ! DUNE_VERSION_GT_REV(module,major,minor,revision)
224 #define DUNE_VERSION_ID(major,minor,revision) \
225 ((unsigned int)((major << 24) + (minor << 16) + revision))
241 #define DUNE_MODULE_VERSION_ID(module) \
242 DUNE_VERSION_ID( DUNE_VERSION_JOIN(module,MAJOR), DUNE_VERSION_JOIN(module,MINOR), DUNE_VERSION_JOIN(module,REVISION) )