ProtoTank/Engine/Graphics/DebugUI.hpp

34 lines
782 B
C++

#pragma once
#include <cstddef>
#include <SFML/Graphics/Font.hpp>
#include <SFML/Graphics/Text.hpp>
#include <SFML/Graphics/RenderWindow.hpp>
struct sDbgStats {
double cpu_usage;
double cpu_time;
double cycle_time;
int fps;
std::size_t ram_virt_usage;
std::size_t ram_phys_usage;
unsigned int drawnTriCount;
};
class DebugUI {
public:
DebugUI();
~DebugUI() {}
void UpdateDebugData(const double cpu_usage, const double cpu_time, const double cycle_time, const int fps, const std::size_t ram_virt_usage, const std::size_t ram_phys_usage, const unsigned int drawnTriCount);
void DrawDebugData(std::shared_ptr<sf::RenderWindow> context);
private:
sf::Font gDbgFont;
sf::Text gDbgText;
struct sDbgStats gDbgStats = {0};
};