Files
Renderive/Core/plot/Latency_Eager_Refresh_Strategy.h
T
2026-08-02 12:48:37 +08:00

29 lines
713 B
C++

#pragma once
#include "Refresh_Strategy.h"
#include <atomic>
#include <cstdint>
#include <memory>
namespace renderive {
class Latency_Eager_Refresh_Strategy final : public Refresh_Strategy {
public:
Latency_Eager_Refresh_Strategy();
~Latency_Eager_Refresh_Strategy() override;
[[nodiscard]] double max_render_fps() const;
void set_max_render_fps(double fps);
[[nodiscard]] Refresh_Control_Snapshot feedback_state() const;
private:
[[nodiscard]] Refresh_Action on_trigger(
Refresh_Trigger trigger,
const Refresh_Runtime_Snapshot& runtime,
Frame_Lifecycle_Record* frame) override;
struct Private;
std::unique_ptr<Private> d;
};
} // namespace renderive