VersionInfo

Class which stores version information, such as release numbers.  Format is majorRelease.Minor.Release [ExtraInfo].

Operators

  • VersionInfo < VersionInfo
  • VersionInfo <= VersionInfo
  • VersionInfo == VersionInfo
  • VersionInfo >= VersionInfo
  • VersionInfo > VersionInfo
  • ostream& << VersionInfo
Summary
Class which stores version information, such as release numbers.
major release version number, should be changed when major changes take place.
minor release version number, should be changed when key features are added/removed/changed.
Patch number, should be changed upon every release that isn’t signifigant enough to reflect a change in the minor versioning number.
String for holding extra data, such as a release name or special tag.
Default constructor.
Initializing constructor.
Checks a version of a library against the required version, throws an APIError if the version is not met.

Variables

majorRelease

unsigned int majorRelease

major release version number, should be changed when major changes take place.

minor

unsigned int minorRelease

minor release version number, should be changed when key features are added/removed/changed.

patch

unsigned int patch

Patch number, should be changed upon every release that isn’t signifigant enough to reflect a change in the minor versioning number.

extra

std::string extra

String for holding extra data, such as a release name or special tag.

(Con/ De)structors

VersionInfo

VersionInfo()

Default constructor.

VersionInfo

VersionInfo(unsigned int maj,  
unsigned int min,  
unsigned int pat,  
const std::string &ext = "")

Initializing constructor.

Parameters

majmajorRelease version number.
minMinor version number.
patPatch number.
extExtra info string.  [default: “”]

VersionInfo Utilities

ensureVersion

void ensureVersion(const std::string &library,
const util::VersionInfo &version,
const util::VersionInfo &required)

Checks a version of a library against the required version, throws an APIError if the version is not met.

Parameters

libraryName of library being initialized.
versionVersion of library being used.
requiredRequired version of library.
unsigned int majorRelease
major release version number, should be changed when major changes take place.
unsigned int minorRelease
minor release version number, should be changed when key features are added/removed/changed.
unsigned int patch
Patch number, should be changed upon every release that isn’t signifigant enough to reflect a change in the minor versioning number.
std::string extra
String for holding extra data, such as a release name or special tag.
VersionInfo()
Default constructor.
void ensureVersion(const std::string &library,
const util::VersionInfo &version,
const util::VersionInfo &required)
Checks a version of a library against the required version, throws an APIError if the version is not met.