This graph shows which files directly or indirectly include this file:
Namespaces | |
namespace | Exiv2 |
Defines | |
#define | EXIV2_MAJOR_VERSION (0) |
Exiv2 MAJOR version number of the library used at compile-time. | |
#define | EXIV2_MINOR_VERSION (19) |
Exiv2 MINOR version number of the library used at compile-time. | |
#define | EXIV2_PATCH_VERSION (0) |
Exiv2 PATCH version number of the library used at compile-time. | |
#define | EXIV2_MAKE_VERSION(major, minor, patch) (((major) << 16) | ((minor) << 8) | (patch)) |
Make an integer version number for comparison from a major, minor and a patch version number. | |
#define | EXIV2_VERSION EXIV2_MAKE_VERSION(EXIV2_MAJOR_VERSION,EXIV2_MINOR_VERSION,EXIV2_PATCH_VERSION) |
The Exiv2 version number of the library used at compile-time as an integer number for easy comparison. | |
#define | EXIV2_CHECK_VERSION(major, minor, patch) ( Exiv2::versionNumber() >= EXIV2_MAKE_VERSION(major,minor,patch) ) |
Deprecated version check macro. Do not use. | |
#define | EXIV2_TEST_VERSION(major, minor, patch) ( EXIV2_VERSION >= EXIV2_MAKE_VERSION(major,minor,patch) ) |
Macro to test the version of the available Exiv2 library at compile-time. Return true if it is the same as or newer than the passed-in version. | |
Functions | |
EXIV2API int | versionNumber () |
Return the version of Exiv2 available at runtime as an integer. | |
EXIV2API const char * | version () |
Return the version of Exiv2 available at runtime as a string. | |
EXIV2API bool | testVersion (int major, int minor, int patch) |
Test the version of the available Exiv2 library at runtime. Return true if it is the same as or newer than the passed-in version. |
|
Deprecated version check macro. Do not use. This macro has flaws and only remains for backward compatibility. Use EXIV2_TEST_VERSION and testVersion() instead. |
|
Macro to test the version of the available Exiv2 library at compile-time. Return true if it is the same as or newer than the passed-in version. Versions are denoted using a triplet of integers: MAJOR.MINOR.PATCH .
// Don't include the <exiv2/version.hpp> file directly, it is included by // <exiv2/types.hpp>. Early Exiv2 versions didn't have version.hpp and the macros. #include <exiv2/types.hpp> // Make sure an EXIV2_TEST_VERSION macro exists: #ifdef EXIV2_VERSION # ifndef EXIV2_TEST_VERSION # define EXIV2_TEST_VERSION(major,minor,patch) \ ( EXIV2_VERSION >= EXIV2_MAKE_VERSION(major,minor,patch) ) # endif #else # define EXIV2_TEST_VERSION(major,minor,patch) (false) #endif std::cout << "Compiled with Exiv2 version " << EXV_PACKAGE_VERSION << "\n" << "Runtime Exiv2 version is " << Exiv2::version() << "\n"; // Test the Exiv2 version available at runtime but compile the if-clause only if // the compile-time version is at least 0.15. Earlier versions didn't have a // testVersion() function: #if EXIV2_TEST_VERSION(0,15,0) if (Exiv2::testVersion(0,13,0)) { std::cout << "Available Exiv2 version is equal to or greater than 0.13\n"; } else { std::cout << "Installed Exiv2 version is less than 0.13\n"; } #else std::cout << "Compile-time Exiv2 version doesn't have Exiv2::testVersion()\n"; #endif |
|
Test the version of the available Exiv2 library at runtime. Return true if it is the same as or newer than the passed-in version. Versions are denoted using a triplet of integers: major.minor.patch .
// Don't include the <exiv2/version.hpp> file directly, it is included by // <exiv2/types.hpp>. Early Exiv2 versions didn't have version.hpp and the macros. #include <exiv2/types.hpp> // Make sure an EXIV2_TEST_VERSION macro exists: #ifdef EXIV2_VERSION # ifndef EXIV2_TEST_VERSION # define EXIV2_TEST_VERSION(major,minor,patch) \ ( EXIV2_VERSION >= EXIV2_MAKE_VERSION(major,minor,patch) ) # endif #else # define EXIV2_TEST_VERSION(major,minor,patch) (false) #endif std::cout << "Compiled with Exiv2 version " << EXV_PACKAGE_VERSION << "\n" << "Runtime Exiv2 version is " << Exiv2::version() << "\n"; // Test the Exiv2 version available at runtime but compile the if-clause only if // the compile-time version is at least 0.15. Earlier versions didn't have a // testVersion() function: #if EXIV2_TEST_VERSION(0,15,0) if (Exiv2::testVersion(0,13,0)) { std::cout << "Available Exiv2 version is equal to or greater than 0.13\n"; } else { std::cout << "Installed Exiv2 version is less than 0.13\n"; } #else std::cout << "Compile-time Exiv2 version doesn't have Exiv2::testVersion()\n"; #endif |