18class QPainterSwapchain;
19class QPainterSwapchainSlot;
21class DrmVirtualOutput;
22class DrmQPainterBackend;
30 std::optional<OutputLayerBeginFrameInfo>
beginFrame()
override;
31 bool endFrame(
const QRegion &renderedRegion,
const QRegion &damagedRegion)
override;
33 std::shared_ptr<DrmFramebuffer>
currentBuffer()
const override;
39 bool doesSwapchainFit()
const;
41 std::shared_ptr<QPainterSwapchain> m_swapchain;
42 std::shared_ptr<QPainterSwapchainSlot> m_currentBuffer;
43 std::shared_ptr<DrmFramebuffer> m_currentFramebuffer;
45 std::chrono::steady_clock::time_point m_renderStart;
46 std::chrono::nanoseconds m_renderTime;
54 std::optional<OutputLayerBeginFrameInfo>
beginFrame()
override;
55 bool endFrame(
const QRegion &renderedRegion,
const QRegion &damagedRegion)
override;
58 std::shared_ptr<DrmFramebuffer>
currentBuffer()
const override;
64 std::shared_ptr<QPainterSwapchain> m_swapchain;
65 std::shared_ptr<QPainterSwapchainSlot> m_currentBuffer;
66 std::shared_ptr<DrmFramebuffer> m_currentFramebuffer;
67 std::chrono::steady_clock::time_point m_renderStart;
68 std::chrono::nanoseconds m_renderTime;
76 std::optional<OutputLayerBeginFrameInfo>
beginFrame()
override;
77 bool endFrame(
const QRegion &renderedRegion,
const QRegion &damagedRegion)
override;
85 QRegion m_currentDamage;
87 std::chrono::steady_clock::time_point m_renderStart;
88 std::chrono::nanoseconds m_renderTime;
void releaseBuffers() override
std::shared_ptr< DrmFramebuffer > currentBuffer() const override
std::chrono::nanoseconds queryRenderTime() const override
QRegion currentDamage() const override
bool endFrame(const QRegion &renderedRegion, const QRegion &damagedRegion) override
std::optional< OutputLayerBeginFrameInfo > beginFrame() override
DrmCursorQPainterLayer(DrmPipeline *pipeline)
bool checkTestBuffer() override
std::optional< OutputLayerBeginFrameInfo > beginFrame() override
DrmQPainterLayer(DrmPipeline *pipeline)
bool endFrame(const QRegion &renderedRegion, const QRegion &damagedRegion) override
std::chrono::nanoseconds queryRenderTime() const override
bool checkTestBuffer() override
std::shared_ptr< DrmFramebuffer > currentBuffer() const override
QRegion currentDamage() const override
void releaseBuffers() override
std::optional< OutputLayerBeginFrameInfo > beginFrame() override
bool endFrame(const QRegion &renderedRegion, const QRegion &damagedRegion) override
std::chrono::nanoseconds queryRenderTime() const override
void releaseBuffers() override
DrmVirtualQPainterLayer(DrmVirtualOutput *output)
QRegion currentDamage() const override