28 #ifndef AGS_SHARED_UTIL_VERSION_H 29 #define AGS_SHARED_UTIL_VERSION_H 31 #include "ags/shared/util/string.h" 49 String BackwardCompatibleString;
52 Version(int32_t major, int32_t minor, int32_t release);
53 Version(int32_t major, int32_t minor, int32_t release, int32_t revision);
54 Version(int32_t major, int32_t minor, int32_t release, int32_t revision,
const String &special);
55 Version(int32_t major, int32_t minor, int32_t release, int32_t revision,
const String &special,
const String &build_info);
58 inline int32_t AsNumber()
const {
59 return Major * 10000 + Minor * 100 + Release;
62 inline int64_t AsLongNumber()
const {
63 return (int64_t)Major * 100000000L + (int64_t)Minor * 1000000L + (int64_t)Release * 10000L + Revision;
66 inline int32_t AsSmallNumber()
const {
67 return Major * 100 + Minor;
70 void SetFromString(
const String &version_string);
72 inline bool operator < (
const Version &other)
const {
73 return AsLongNumber() < other.AsLongNumber();
76 inline bool operator <= (
const Version &other)
const {
77 return AsLongNumber() <= other.AsLongNumber();
80 inline bool operator > (
const Version &other)
const {
81 return AsLongNumber() > other.AsLongNumber();
84 inline bool operator >= (
const Version &other)
const {
85 return AsLongNumber() >= other.AsLongNumber();
88 inline bool operator == (
const Version &other)
const {
89 return AsLongNumber() == other.AsLongNumber();
92 inline bool operator != (
const Version &other)
const {
93 return AsLongNumber() != other.AsLongNumber();
Definition: achievements_tables.h:27