Files
Renderive/Qt/plot/Plot_p.h
T
2026-08-02 14:20:27 +08:00

28 lines
804 B
C++

#pragma once
#include "Plot.h"
#include "Core/flow/Frame_Flow.h"
#include "Core/plot/Plot_Core.h"
#include <atomic>
#include <memory>
namespace renderive {
class Qt_Presentation_Sink;
struct Abs_Plot_Private {
explicit Abs_Plot_Private(std::unique_ptr<Frame_Flow> frame_flow);
virtual ~Abs_Plot_Private();
void attach_widget(Abs_Plot* plot);
bool event(Abs_Plot* plot, QEvent* event, bool base_result);
void paint_event(Abs_Plot* plot, QPaintEvent* event);
void request_performance_overlay_update(Abs_Plot* plot);
Frame_Flow* flow{};
std::unique_ptr<Plot_Core> core;
std::shared_ptr<Qt_Presentation_Sink> presentation_sink;
std::shared_ptr<std::atomic_bool> performance_update_pending = std::make_shared<std::atomic_bool>(false);
};
} // namespace renderive