39 void on_attach(
const std::shared_ptr<SignalSourceContainer>& container)
override;
44 void on_detach(
const std::shared_ptr<SignalSourceContainer>& container)
override;
51 void process(
const std::shared_ptr<SignalSourceContainer>& container)
override;
56 [[nodiscard]]
bool is_processing()
const override {
return m_is_processing.load(); }
68 return m_surface_format;
72 std::atomic<bool> m_is_processing {
false };
74 uint32_t m_width { 0 };
75 uint32_t m_height { 0 };
76 size_t m_last_readback_bytes { 0 };
79 Core::GraphicsSurfaceInfo::SurfaceFormat::B8G8R8A8_SRGB
Interface for processing data within SignalSourceContainer objects.
WindowAccessProcessor()=default
Core::GraphicsSurfaceInfo::SurfaceFormat get_surface_format() const
The surface format currently in use for readback allocation.
size_t get_last_readback_bytes() const
Byte size of the last successful readback.
bool is_processing() const override
Whether a process() call is currently executing.
~WindowAccessProcessor() override=default
Default DataProcessor for WindowContainer.
SurfaceFormat
Default pixel format for window surfaces (Vulkan-compatible)