20 #include <nlohmann/json.hpp>
89 return (
appType &
static_cast<unsigned int>( typeToCheck ) ) != 0u;
103 void to_json( nlohmann::json& jsonValue,
const AppInfo& appInfo );
104 void from_json(
const nlohmann::json& jsonValue, AppInfo& appInfo );
113 virtual std::string name()
const = 0;
117 virtual int majorVersion()
const = 0;
118 virtual int minorVersion()
const = 0;
119 virtual int patchVersion()
const = 0;
122 static void registerInstance(
Application* instance );
129 unsigned int m_capabilities;
Definition: cafApplication.h:107
Main Caffa namespace.
Definition: __init__.py:1
Basic Application Information.
Definition: cafApplication.h:39
std::string name
The name of the application.
Definition: cafApplication.h:58
AppCapability
Application capability Defines what type of application it is. These flags can be combined....
Definition: cafApplication.h:47
@ CONSOLE
Console Application.
int minorVersion
Minor version number.
Definition: cafApplication.h:68
unsigned int appType
Application type. Can be CONSOLE, SERVER, CLIENT, GUI.
Definition: cafApplication.h:78
bool hasCapability(AppCapability typeToCheck) const
Check if the application has the specified capability.
Definition: cafApplication.h:87
int patchVersion
Patch version number.
Definition: cafApplication.h:73
int majorVersion
Major version number.
Definition: cafApplication.h:63
std::string version_string() const
Construct a full X.Y.Z version string with major, minor and patch version.
Definition: cafApplication.h:97