Init CPUStats just once

pull/58/head
jackun 4 years ago
parent e68dd48f3f
commit 05d61ee77e
No known key found for this signature in database
GPG Key ID: 119DB3F1D05A9ED3

@ -97,11 +97,12 @@ void calculateCPUData(CPUData& cpuData,
CPUStats::CPUStats()
{
m_inited = Init();
}
bool CPUStats::Init()
{
if (m_inited)
return true;
CPUStats::GetCpuFile();
std::string line;
std::ifstream file (PROCSTATFILE);
@ -142,8 +143,8 @@ bool CPUStats::Init()
}
} while(true);
UpdateCPUData();
return true;
m_inited = true;
return UpdateCPUData();
}
//TODO take sampling interval into account?
@ -221,13 +222,14 @@ bool CPUStats::UpdateCoreMhz() {
}
bool CPUStats::UpdateCpuTemp(){
m_cpuDataTotal.temp = 0;
rewind(cpuTempFile);
fflush(cpuTempFile);
if (fscanf(cpuTempFile, "%d", &m_cpuDataTotal.temp) != 1)
m_cpuDataTotal.temp = 0;
return false;
m_cpuDataTotal.temp /= 1000;
return NULL;
return true;
}
bool CPUStats::GetCpuFile(){

@ -13,6 +13,7 @@
#include "imgui_impl_opengl3.h"
#include "font_default.h"
#include "overlay.h"
#include "cpu.h"
#include "mesa/util/macros.h"
#include "mesa/util/os_time.h"
@ -55,10 +56,14 @@ void imgui_create(void *ctx)
if (inited)
return;
inited = true;
if (!ctx)
return;
cpuStats.Init();
imgui_init();
gl3wInit();
std::cerr << "GL version: " << glGetString(GL_VERSION) << std::endl;
deviceName = (char*)glGetString(GL_RENDERER);
if (deviceName.find("Radeon") != std::string::npos

@ -2611,6 +2611,8 @@ static VkResult overlay_CreateInstance(
if (instance_data->params.fps_limit > 0)
fps_limit_stats.targetFrameTime = int64_t(1000000000.0 / instance_data->params.fps_limit);
cpuStats.Init();
// Adjust height for DXVK/VKD3D version number
if (engineName == "DXVK" || engineName == "VKD3D"){
if (instance_data->params.font_size){

Loading…
Cancel
Save