From 4f6c633815d597878ebf04b6caaf9704047b0914 Mon Sep 17 00:00:00 2001 From: Oleg Semyonov Date: Sat, 25 May 2013 14:27:27 +0200 Subject: [PATCH] OP-770: extend VersionInfo class to include most of the info available --- .../version_info/version_info.cpp.template | 88 ++++++++++++++++++- .../src/libs/version_info/version_info.h | 32 ++++++- 2 files changed, 114 insertions(+), 6 deletions(-) diff --git a/ground/openpilotgcs/src/libs/version_info/version_info.cpp.template b/ground/openpilotgcs/src/libs/version_info/version_info.cpp.template index 214ad7b3b..3e887c134 100644 --- a/ground/openpilotgcs/src/libs/version_info/version_info.cpp.template +++ b/ground/openpilotgcs/src/libs/version_info/version_info.cpp.template @@ -27,22 +27,102 @@ VersionInfo::VersionInfo() { } +QString VersionInfo::origin() +{ + return "${ORIGIN}"; +} + QString VersionInfo::revision() { return "${REVISION}"; } +QString VersionInfo::hash() +{ + return "${HASH}"; +} + +QString VersionInfo::uavoHashTxt() +{ + return "${UAVOSHA1TXT}"; +} + +QString VersionInfo::uavoHash() +{ + return "{ ${UAVOSHA1} }"; +} + +QString VersionInfo::label() +{ + return "${LABEL}"; +} + +QString VersionInfo::tag() +{ + return "${TAG}"; +} + +QString VersionInfo::tagOrBranch() +{ + return "${TAG_OR_BRANCH}"; +} + +QString VersionInfo::tagOrHash8() +{ + return "${TAG_OR_HASH8}"; +} + +QString VersionInfo::hash8() +{ + return "${HASH8}"; +} + +QString VersionInfo::fwTag() +{ + return "${FWTAG}"; +} + +QString VersionInfo::unixTime() +{ + return "${UNIXTIME}"; +} + +QString VersionInfo::dateTime() +{ + return "${DATETIME}"; +} + +QString VersionInfo::date() +{ + return "${DATE}"; +} + +QString VersionInfo::day() +{ + return "${DAY}"; +} + +QString VersionInfo::month() +{ + return "${MONTH}"; +} + QString VersionInfo::year() { return "${YEAR}"; } -QString VersionInfo::origin() +QString VersionInfo::hour() { - return "${ORIGIN}"; + return "${HOUR}"; } -QString VersionInfo::uavoHash() +QString VersionInfo::minute() { - return "{ ${UAVOSHA1} }"; + return "${MINUTE}"; +} + +QString VersionInfo::dirty() +{ + return "${DIRTY}"; } diff --git a/ground/openpilotgcs/src/libs/version_info/version_info.h b/ground/openpilotgcs/src/libs/version_info/version_info.h index b517e7307..f9c9a8995 100644 --- a/ground/openpilotgcs/src/libs/version_info/version_info.h +++ b/ground/openpilotgcs/src/libs/version_info/version_info.h @@ -27,12 +27,40 @@ #include +/** + * @class VersionInfo + * @brief Library class to provide version info information extracted from a git repository. + * + * Class static members return read-only strings extracted from a git repository at compile time. + * The content is generated by the version-info.py utility using template. + * + * @note If repository or git utility is unavailable, strings can be empty or be "None". + * So do not assume they have some particular format when used, use them as strings only. + * + * More info: http://wiki.openpilot.org/display/Doc/Building+and+Packaging+Overview + */ class VersionInfo { public: - static QString revision(); - static QString year(); static QString origin(); + static QString revision(); + static QString hash(); + static QString uavoHashTxt(); static QString uavoHash(); + static QString label(); + static QString tag(); + static QString tagOrBranch(); + static QString tagOrHash8(); + static QString hash8(); + static QString fwTag(); + static QString unixTime(); + static QString dateTime(); + static QString date(); + static QString day(); + static QString month(); + static QString year(); + static QString hour(); + static QString minute(); + static QString dirty(); private: VersionInfo(); };