hyperion.ng/include/utils/SysInfo.h
LordGrey 5078688dc8
Hyperion Light 2 (#1428)
* Hyperion Light - Have EffectEngine as component

* Hyperion light - Build switches for LED Devices (Serial, Network)

* Fix file uri generation

* Fix missing guard for Windows

* Fix file uri generation

* Update jsonschema and checkschema

* Allow to provide cmake build args to docker build
2022-02-11 20:36:15 +01:00

47 lines
780 B
C++

#pragma once
#include <memory>
#include <QObject>
#include <QString>
#include "HyperionConfig.h"
class SysInfo : public QObject
{
public:
struct HyperionSysInfo
{
QString kernelType;
QString kernelVersion;
QString architecture;
QString cpuModelName;
QString cpuModelType;
QString cpuRevision;
QString cpuHardware;
QString wordSize;
QString productType;
QString productVersion;
QString prettyName;
QString hostName;
QString domainName;
bool isUserAdmin;
QString qtVersion;
#if defined(ENABLE_EFFECTENGINE)
QString pyVersion;
#endif
};
static HyperionSysInfo get();
static bool isUserAdmin();
static QString userName();
private:
SysInfo();
void getCPUInfo();
static std::unique_ptr <SysInfo> _instance;
HyperionSysInfo _sysinfo;
};