Files
onepilot/common/ratekeeper.h
Willem Melching 4bb83c6849 ratekeeper.h: add missing <cstdint> include (#29523)
old-commit-hash: e8094affae0d7f49bc2b7136882dd1dad9e8dcdb
2023-08-22 15:21:16 +01:00

24 lines
518 B
C++

#pragma once
#include <cstdint>
#include <string>
class RateKeeper {
public:
RateKeeper(const std::string &name, float rate, float print_delay_threshold = 0);
~RateKeeper() {}
bool keepTime();
bool monitorTime();
inline double frame() const { return frame_; }
inline double remaining() const { return remaining_; }
private:
double interval;
double next_frame_time;
double last_monitor_time;
double remaining_ = 0;
float print_delay_threshold = 0;
uint64_t frame_ = 0;
std::string name;
};