|
|
- /**
- * @file Version.h
- * @brief SDK version information routines.
- * @copyright VisionLabs LLC
- * @date 11.10.2016
- * */
-
- #pragma once
-
- #include "Def.h"
- #include <cstdint>
-
- namespace fsdk {
-
- /**
- * @addtogroup VersionGroup Version
- * @brief SDK Build type and version info.
- * @{
- * */
-
- /**
- * Version structure.
- * */
- struct Version {
- uint8_t major; //!< Major version number.
- uint8_t minor; //!< Minor version number.
- uint16_t patch; //!< Revision number.
- };
-
- /**
- * @brief Check if one version is less than another.
- * @param lhs first version
- * @param rhs second version
- * @return true if lhs is less than rhs
- * */
- inline bool operator < (Version lhs, Version rhs) noexcept {
- if (lhs.major < rhs.major)
- return true;
- if (lhs.minor < rhs.minor)
- return true;
- return lhs.patch < rhs.patch;
- }
-
- /**
- * @brief Check if versions are equal.
- * @param lhs first version
- * @param rhs second version
- * @return true if versions are equal
- * */
- inline bool operator == (Version lhs, Version rhs) noexcept {
- return lhs.major == rhs.major &&
- lhs.minor == rhs.minor &&
- lhs.patch == rhs.patch;
- }
-
- /**
- * @brief Check if versions are not equal.
- * @param lhs first version
- * @param rhs second version
- * @return true if versions are not equal
- * */
- inline bool operator != (Version lhs, Version rhs) noexcept {
- return !(lhs == rhs);
- }
-
- /**
- * @brief Get FaceEngine version.
- * @return filled version structure.
- * */
- FSDK_API Version getVersion() noexcept;
-
- /**
- * @brief Get FaceEngine commit hash.
- * @return commit hash as a null-terminated string.
- * */
- FSDK_API const char* getVersionHash() noexcept;
-
- /**
- * @brief Get FaceEngine version string.
- * @return version as a null-terminated string.
- * */
- FSDK_API const char* getVersionString() noexcept;
-
- /**
- * @brief Get FaceEngine build description.
- * The descripton contains used flags and compler settings.
- * @return description as a null-terminated string.
- * */
- FSDK_API const char* getBuildInfo() noexcept;
-
- /** @} */ // end of VersionGroup
- }
|