Go to the documentation of this file.
69 #ifndef OPENVDB_VERSION_HAS_BEEN_INCLUDED
70 #define OPENVDB_VERSION_HAS_BEEN_INCLUDED
76 #define OPENVDB_LIBRARY_MAJOR_VERSION_NUMBER 6
77 #define OPENVDB_LIBRARY_MINOR_VERSION_NUMBER 2
78 #define OPENVDB_LIBRARY_PATCH_VERSION_NUMBER 1
82 #ifdef OPENVDB_ABI_VERSION_NUMBER
83 #if OPENVDB_ABI_VERSION_NUMBER > OPENVDB_LIBRARY_MAJOR_VERSION_NUMBER
84 #error expected OPENVDB_ABI_VERSION_NUMBER <= OPENVDB_LIBRARY_MAJOR VERSION_NUMBER
89 #if defined OPENVDB_2_ABI_COMPATIBLE
90 #define OPENVDB_ABI_VERSION_NUMBER 2
91 #elif defined OPENVDB_3_ABI_COMPATIBLE
92 #define OPENVDB_ABI_VERSION_NUMBER 3
94 #define OPENVDB_ABI_VERSION_NUMBER OPENVDB_LIBRARY_MAJOR_VERSION_NUMBER
102 #ifndef OPENVDB_USE_DEPRECATED_ABI
103 #if OPENVDB_ABI_VERSION_NUMBER <= 3
104 PRAGMA(message(
"NOTE: ABI <= 3 is deprecated, define OPENVDB_USE_DEPRECATED_ABI "
105 "to suppress this message"))
109 #if OPENVDB_ABI_VERSION_NUMBER == OPENVDB_LIBRARY_MAJOR_VERSION_NUMBER
110 #define OPENVDB_VERSION_NAME \
129 OPENVDB_PREPROC_CONCAT(v, \
130 OPENVDB_PREPROC_CONCAT(OPENVDB_LIBRARY_MAJOR_VERSION_NUMBER, \
131 OPENVDB_PREPROC_CONCAT(_, OPENVDB_LIBRARY_MINOR_VERSION_NUMBER)))
134 #define OPENVDB_VERSION_NAME \
135 OPENVDB_PREPROC_CONCAT(v, \
136 OPENVDB_PREPROC_CONCAT(OPENVDB_LIBRARY_MAJOR_VERSION_NUMBER, \
137 OPENVDB_PREPROC_CONCAT(_, \
138 OPENVDB_PREPROC_CONCAT(OPENVDB_LIBRARY_MINOR_VERSION_NUMBER, \
139 OPENVDB_PREPROC_CONCAT(abi, OPENVDB_ABI_VERSION_NUMBER)))))
147 #define OPENVDB_LIBRARY_VERSION_STRING \
148 OPENVDB_PREPROC_STRINGIFY(OPENVDB_LIBRARY_MAJOR_VERSION_NUMBER) "." \
149 OPENVDB_PREPROC_STRINGIFY(OPENVDB_LIBRARY_MINOR_VERSION_NUMBER) "." \
150 OPENVDB_PREPROC_STRINGIFY(OPENVDB_LIBRARY_PATCH_VERSION_NUMBER)
157 #define OPENVDB_LIBRARY_ABI_VERSION_STRING \
158 OPENVDB_LIBRARY_VERSION_STRING "abi" OPENVDB_PREPROC_STRINGIFY(OPENVDB_ABI_VERSION_NUMBER)
161 #define OPENVDB_LIBRARY_VERSION_NUMBER \
162 ((OPENVDB_LIBRARY_MAJOR_VERSION_NUMBER << 24) | \
163 ((OPENVDB_LIBRARY_MINOR_VERSION_NUMBER & 0xFF) << 16) | \
164 (OPENVDB_LIBRARY_PATCH_VERSION_NUMBER & 0xFFFF))
175 #ifdef OPENVDB_REQUIRE_VERSION_NAME
176 #define OPENVDB_USE_VERSION_NAMESPACE
180 #define OPENVDB_USE_VERSION_NAMESPACE \
181 namespace OPENVDB_VERSION_NAME {} \
182 using namespace OPENVDB_VERSION_NAME;
239 VersionId(uint32_t major, uint32_t minor): first(major), second(minor) {}
245 #endif // OPENVDB_VERSION_HAS_BEEN_INCLUDED
#define OPENVDB_LIBRARY_VERSION_STRING
Library version number string of the form "<major>.<minor>.<patch>".
Definition: version.h:147
constexpr const char * getLibraryVersionString()
Return a library version number string of the form "<major>.<minor>.<patch>".
Definition: version.h:229
#define OPENVDB_LIBRARY_PATCH_VERSION_NUMBER
Definition: version.h:78
const uint32_t OPENVDB_ABI_VERSION
Definition: version.h:202
Definition: version.h:223
#define OPENVDB_LIBRARY_ABI_VERSION_STRING
Library version number string of the form "<major>.<minor>.<patch>abi<abi>".
Definition: version.h:157
constexpr const char * getLibraryAbiVersionString()
Return a library version number string of the form "<major>.<minor>.<patch>abi<abi>".
Definition: version.h:231
Definition: version.h:222
const uint32_t OPENVDB_LIBRARY_MAJOR_VERSION
Definition: version.h:196
uint32_t second
Definition: version.h:237
Definition: version.h:216
#define OPENVDB_LIBRARY_VERSION_NUMBER
Library version number as a packed integer ("%02x%02x%04x", major, minor, patch)
Definition: version.h:161
const uint32_t OPENVDB_LIBRARY_VERSION
Library version number as a packed integer ("%02x%02x%04x", major, minor, patch)
Definition: version.h:200
const uint32_t OPENVDB_LIBRARY_MINOR_VERSION
Definition: version.h:197
const int32_t OPENVDB_MAGIC
The magic number is stored in the first four bytes of every VDB file.
Definition: version.h:192
Definition: version.h:236
Definition: version.h:217
VersionId(uint32_t major, uint32_t minor)
Definition: version.h:239
Definition: version.h:211
const uint32_t OPENVDB_FILE_VERSION
The current version number of the VDB file format.
Definition: version.h:207
#define OPENVDB_LIBRARY_MAJOR_VERSION_NUMBER
Definition: version.h:76
#define OPENVDB_USE_VERSION_NAMESPACE
Definition: version.h:180
VersionId()
Definition: version.h:238
const uint32_t OPENVDB_LIBRARY_PATCH_VERSION
Definition: version.h:198
Definition: version.h:215
Definition: version.h:219
Definition: version.h:212
Definition: version.h:214
Definition: version.h:221
#define OPENVDB_VERSION_NAME
The version namespace name for this library version.
Definition: version.h:128
#define OPENVDB_LIBRARY_MINOR_VERSION_NUMBER
Definition: version.h:77
Definition: version.h:218
Definition: version.h:213
Definition: Exceptions.h:40
Definition: version.h:220
Definition: version.h:224