unleashed-firmware/lib/toolbox/version.h
あく 389ff92cc1
Naming and coding style convention, new linter tool. (#945)
* Makefile, Scripts: new linter
* About: remove ID from IC
* Firmware: remove double define for DIVC/DIVR
* Scripts: check folder names too. Docker: replace syntax check with make lint.
* Reformat Sources and Migrate to new file naming convention
* Docker: symlink clang-format-12 to clang-format
* Add coding style guide
2022-01-05 19:10:18 +03:00

78 lines
1.8 KiB
C

#pragma once
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
typedef struct Version Version;
/** Get current running firmware version handle.
*
* You can store it somewhere. But if you want to retrieve data, you have to use
* 'version_*_get()' set of functions. Also, 'version_*_get()' imply to use this
* handle if no handle (NULL_PTR) provided.
*
* @return pointer to Version data.
*/
const Version* version_get(void);
/** Get git commit hash.
*
* @param v pointer to Version data. NULL for currently running
* software.
*
* @return git hash
*/
const char* version_get_githash(const Version* v);
/** Get git branch.
*
* @param v pointer to Version data. NULL for currently running
* software.
*
* @return git branch
*/
const char* version_get_gitbranch(const Version* v);
/** Get number of commit in git branch.
*
* @param v pointer to Version data. NULL for currently running
* software.
*
* @return number of commit
*/
const char* version_get_gitbranchnum(const Version* v);
/** Get build date.
*
* @param v pointer to Version data. NULL for currently running
* software.
*
* @return build date
*/
const char* version_get_builddate(const Version* v);
/** Get build version. Build version is last tag in git history.
*
* @param v pointer to Version data. NULL for currently running
* software.
*
* @return build date
*/
const char* version_get_version(const Version* v);
/** Get hardware target this firmware was built for
*
* @param v pointer to Version data. NULL for currently running
* software.
*
* @return build date
*/
const uint8_t version_get_target(const Version* v);
#ifdef __cplusplus
}
#endif