#pragma once #include "../base/Geometry.h" #include "../render/Image.h" #include #include #include namespace renderive { enum class Performance_Text_Role : std::uint8_t { Section, Label, Value, Unit, Warning, Muted }; struct Performance_Display_Text_Run { std::string text; Performance_Text_Role role = Performance_Text_Role::Value; RectF rect; int column_index{}; }; struct Performance_Display_Snapshot { Image image; RectF destination_rect; RectF viewport_rect; RectF scroll_track_rect; RectF scroll_thumb_rect; RectF copy_button_rect; RectF close_button_rect; Size viewport_size; double content_height{}; double scroll_offset{}; double max_scroll_offset{}; double line_height{}; std::uint64_t viewport_version{}; std::uint64_t content_version{}; std::vector lines; std::vector text_runs; }; } // namespace renderive