1 #include "otsdaq-core/TableCore/TableVersion.h"
5 const unsigned int TableVersion::INVALID = -1;
6 const unsigned int TableVersion::DEFAULT = 0;
7 const unsigned int TableVersion::SCRATCH = ~(1 << 31);
10 TableVersion::TableVersion(
unsigned int version) : version_(version) {}
11 TableVersion::TableVersion(
char*
const& versionStr)
14 version_ = TableVersion::INVALID;
16 sscanf(versionStr,
"%u", &version_);
18 TableVersion::TableVersion(
const std::string& versionStr)
24 TableVersion::~TableVersion(
void) {}
29 unsigned int TableVersion::version(
void)
const {
return version_; }
33 std::string TableVersion::toString(
void)
const
36 return (isTemporaryVersion() || isInvalid()) ? std::to_string((
int)version_)
37 : std::to_string(version_);
42 TableVersion& TableVersion::operator=(
const unsigned int version)
50 bool TableVersion::operator==(
unsigned int version)
const
52 return (version_ == version);
54 bool TableVersion::operator==(
const TableVersion& version)
const
56 return (version_ == version.version_);
61 bool TableVersion::operator!=(
unsigned int version)
const
63 return (version_ != version);
65 bool TableVersion::operator!=(
const TableVersion& version)
const
67 return (version_ != version.version_);
72 bool TableVersion::operator<(
const TableVersion& version)
const
74 return (version_ < version.version_);
79 bool TableVersion::operator>(
const TableVersion& version)
const
81 return (version_ > version.version_);
86 bool TableVersion::isInvalid()
const
88 return (version_ == TableVersion::INVALID ||
89 (version_ > TableVersion::SCRATCH &&
90 version_ < INVALID - NUM_OF_TEMP_VERSIONS));
96 bool TableVersion::isTemporaryVersion()
const
98 return (version_ >= INVALID - NUM_OF_TEMP_VERSIONS && version_ != INVALID);
104 bool TableVersion::isScratchVersion()
const
106 return (version_ == TableVersion::SCRATCH);
112 bool TableVersion::isMockupVersion()
const {
return (version_ == TableVersion::INVALID); }
123 return (!retVersion.isInvalid() && !retVersion.isTemporaryVersion()) ? retVersion
135 TableVersion retVersion(version.isTemporaryVersion() ? (version.version_ - 1)
137 return retVersion.isTemporaryVersion() ? retVersion :
TableVersion();