#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 target_text; aslosignals::TypeSignal signal_on_counter_updated; FramerateCounter(sf::String _name, uint _update_interval = 5); FramerateCounter(sf::String _name, std::shared_ptr _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; }; }