34 lines
No EOL
950 B
C++
Executable file
34 lines
No EOL
950 B
C++
Executable file
#pragma once
|
|
|
|
#include "../../headers/gameobject.hpp"
|
|
#include "fmt/format.h"
|
|
|
|
namespace asloengine
|
|
{
|
|
|
|
class FramerateCounter : public GameObject
|
|
{
|
|
|
|
public:
|
|
std::string prefix;
|
|
std::string postfix;
|
|
std::shared_ptr<sf::Text> target_text;
|
|
aslosignals::TypeSignal<sf::String> signal_on_counter_updated;
|
|
|
|
FramerateCounter(sf::String _name, uint _update_interval = 5);
|
|
FramerateCounter(sf::String _name, std::shared_ptr<sf::Text> _target_text, uint _update_interval = 5);
|
|
~FramerateCounter();
|
|
|
|
virtual void set_update_interval(uint _update_interval);
|
|
virtual uint get_update_interval() const;
|
|
virtual void on_start() override;
|
|
virtual void on_update(float delta_time) override;
|
|
|
|
protected:
|
|
uint counter;
|
|
uint update_interval;
|
|
float *values;
|
|
|
|
};
|
|
|
|
} |