#include "DebugUI.hpp" #include #include #include "../Misc/Fonts.hpp" DebugUI::DebugUI() { gDbgFont.loadFromMemory(&_afont_monofonto_rg, FONTSIZE_MONOFONTO_RG); gDbgText.setFont(gDbgFont); gDbgText.setCharacterSize(14); gDbgText.setPosition(0, 0); gDbgText.setFillColor(sf::Color::White); } void DebugUI::UpdateDebugData(const double cpu_usage, const double loop_time, const int fps, const std::size_t ram_virt_usage, const std::size_t ram_phys_usage) { gDbgStats.cpu_usage = cpu_usage; gDbgStats.loop_time = loop_time; gDbgStats.fps = fps; gDbgStats.ram_virt_usage = ram_virt_usage; gDbgStats.ram_phys_usage = ram_phys_usage; } void DebugUI::DrawDebugData(std::shared_ptr context) { std::ostringstream outStrStream; outStrStream << std::fixed; outStrStream << std::setprecision(0) << "CPU: " << gDbgStats.cpu_usage << "% (cycle time: " << std::setprecision(3) << gDbgStats.loop_time << "ms)" << std::endl; outStrStream << std::setprecision(1) << "RAM: " << gDbgStats.ram_virt_usage << "MB(V) / " << gDbgStats.ram_phys_usage << "MB(P)" << std::endl; outStrStream << std::setprecision(0) << "FPS: " << gDbgStats.fps; gDbgText.setString(outStrStream.str()); context->draw(gDbgText); }