ViennaLS
Toggle main menu visibility
Loading...
Searching...
No Matches
lsVersion.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <cstdint>
4
5
namespace
viennals
{
6
7
// Version information generated by CMake
8
inline
constexpr
const
char
*
version
=
"5.9.0"
;
9
inline
constexpr
int
versionMajor
= 5;
10
inline
constexpr
int
versionMinor
= 9;
11
inline
constexpr
int
versionPatch
= 0;
12
13
// Utility functions for version comparison
14
inline
constexpr
uint32_t
versionAsInteger
() {
15
// Encode as MMmmpppp (2 digits major, 2 digits minor, 4 digits patch)
16
return
static_cast<
uint32_t
>
(
versionMajor
) * 1000000 +
17
static_cast<
uint32_t
>
(
versionMinor
) * 10000 +
18
static_cast<
uint32_t
>
(
versionPatch
);
19
}
20
21
inline
constexpr
bool
isVersionAtLeast
(
int
major,
int
minor = 0,
22
int
patch = 0) {
23
if
(
versionMajor
> major)
24
return
true
;
25
if
(
versionMajor
< major)
26
return
false
;
27
if
(
versionMinor
> minor)
28
return
true
;
29
if
(
versionMinor
< minor)
30
return
false
;
31
return
versionPatch
>= patch;
32
}
33
34
// Version as string for display purposes
35
inline
constexpr
const
char
*
versionString
() {
return
version
; }
36
37
}
// namespace viennals
viennals
Definition
lsAdvect.hpp:41
viennals::versionMajor
constexpr int versionMajor
Definition
lsVersion.hpp:9
viennals::versionString
constexpr const char * versionString()
Definition
lsVersion.hpp:35
viennals::versionPatch
constexpr int versionPatch
Definition
lsVersion.hpp:11
viennals::version
constexpr const char * version
Definition
lsVersion.hpp:8
viennals::versionAsInteger
constexpr uint32_t versionAsInteger()
Definition
lsVersion.hpp:14
viennals::versionMinor
constexpr int versionMinor
Definition
lsVersion.hpp:10
viennals::isVersionAtLeast
constexpr bool isVersionAtLeast(int major, int minor=0, int patch=0)
Definition
lsVersion.hpp:21
include
viennals
lsVersion.hpp
Generated by
1.18.0