Files
remote-ui/tools/simulator_base.hpp
T
sani7 33eb776c57 simulator_base
Add timer interval as parameter in the constructor
2024-08-22 13:11:42 +02:00

30 lines
707 B
C++

#pragma once
#include "UI.hpp"
#include "timer.hpp"
class Simulator_base {
public:
Simulator_base(std::string name, std::chrono::milliseconds interval = std::chrono::milliseconds(100));
std::string name() const;
bool is_ui_id_unique(std::string id) const;
void add_UI_item(UI_item* item);
json get_UI_items() const;
UI_item* get_UI_item(std::string id) const;
void run();
void stop();
virtual void timer() {};
protected:
std::string p_name;
std::vector<UI_item*> p_UI_items;
std::map<std::string, UI_item*> p_UI_items_map;
Timer p_timer;
std::chrono::milliseconds m_interval;
};