#ifndef HXSYSTEM_H #define HXSYSTEM_H #include class HxSystem { public: /** * @brief 获取系统cpu型号 * @return 系统cpu型号 */ static QString get_cpu_model(); /** * @brief 获取系统逻辑CPU的个数 * @return 系统逻辑CPU的个数 */ static int get_logical_cpu_number(); /** * @brief 获取系统cpu温度 * @param temp cpu温度 * @return true: 成功; false 失败; */ static bool get_cpu_temp(double *temp); /** * @brief 获取系统cpu状态 * @param cpu_rate cpu使用率 * @return true: 成功; false 失败; */ static bool get_cpu_status(double *cpu_rate); /** * @brief 获取系统内存状态 * @param memory_use 已用内存 * @param memory_total 内存总大小 * @param swap_use 已用交换空间 * @param swap_total 交换空间总大小 * @return true: 成功; false 失败; */ static bool get_memory_status(double *memory_use, double *memory_total, double *swap_use, double *swap_total); /** * @brief 获取程序状态 * @param cpu_usage CPU使用率 * @param virtual_memory 虚拟内存使用量 * @param resident_memory 物理内存使用量 * @return true: 成功; false 失败; */ static bool get_program_status(double *cpu_usage, double *virtual_memory, double *resident_memory); /** * @brief 获取硬盘状态 * @param disk 路径 * @param file_system 文件系统(磁盘路径) * @param size 总大小 * @param use 已用大小 * @param read_speed 读速度 * @param write_speed 写速度 * @return true: 成功; false 失败; */ static bool get_harddisk_status(QString disk, QString *file_system, QString *size, QString *use, double *read_speed, double *write_speed); /** * @brief 获取硬盘温度 * @param file_system 文件系统(磁盘路径) * @param temperature 温度 * @return true: 成功; false 失败; */ static bool get_harddisk_temperature(QString file_system, QString *temperature); /** * @brief 获取硬盘健康状态 * @param file_system 文件系统(磁盘路径) * @param smart 健康状态 * @return true: 成功; false 失败; */ static bool get_harddisk_smart(QString file_system, QString *smart); }; #endif // HXSYSTEM_H