4#ifndef QSGSOFTWARETHREADEDRENDERLOOP_H
5#define QSGSOFTWARETHREADEDRENDERLOOP_H
18#include <private/qsgrenderloop_p.h>
45 void postJob(QQuickWindow *window, QRunnable *job)
override;
50 bool event(QEvent *e)
override;
60 uint updateDuringSync : 1;
61 uint forceRenderPass : 1;
64 WindowData *windowFor(QQuickWindow *window);
66 void startOrStopAnimationTimer();
67 void handleExposure(QQuickWindow *window);
68 void handleObscurity(WindowData *w);
69 void scheduleUpdate(WindowData *w);
70 void handleResourceRelease(WindowData *w,
bool destroying);
71 void polishAndSync(WindowData *w,
bool inExpose);
74 QAnimationDriver *m_anim;
75 int animationTimer = 0;
76 bool lockedForSync =
false;
77 QList<WindowData> m_windows;
QStringList keys() const override
QSGContext * create(const QString &key) const override
QSGContextFactoryInterface::Flags flags(const QString &key) const override
QSGSoftwareAdaptation(QObject *parent=nullptr)
QSGRenderLoop * createWindowManager() override
void update(QQuickWindow *window) override
QSGRenderContext * createRenderContext(QSGContext *) const override
QHash< QQuickWindow *, QBackingStore * > m_backingStores
QImage grab(QQuickWindow *window) override
void exposureChanged(QQuickWindow *window) override
QHash< QQuickWindow *, WindowData > m_windows
QAnimationDriver * animationDriver() const override
void maybeUpdate(QQuickWindow *window) override
QSGContext * sceneGraphContext() const override
void show(QQuickWindow *window) override
void hide(QQuickWindow *window) override
void handleUpdateRequest(QQuickWindow *) override
void releaseResources(QQuickWindow *) override
void windowDestroyed(QQuickWindow *window) override
QSurface::SurfaceType windowSurfaceType() const override
void renderWindow(QQuickWindow *window, bool isNewExpose=false)
void exposureChanged(QQuickWindow *window) override
QAnimationDriver * animationDriver() const override
void resize(QQuickWindow *window) override
void handleUpdateRequest(QQuickWindow *window) override
void update(QQuickWindow *window) override
void windowDestroyed(QQuickWindow *window) override
bool event(QEvent *e) override
This virtual function receives events to an object and should return true if the event e was recogniz...
int flags() const override
~QSGSoftwareThreadedRenderLoop()
QImage grab(QQuickWindow *window) override
void maybeUpdate(QQuickWindow *window) override
void releaseResources(QQuickWindow *window) override
QSGContext * sceneGraphContext() const override
QSurface::SurfaceType windowSurfaceType() const override
void hide(QQuickWindow *window) override
QSGRenderContext * createRenderContext(QSGContext *) const override
void postJob(QQuickWindow *window, QRunnable *job) override
bool interleaveIncubation() const override
void onAnimationStopped()
void show(QQuickWindow *window) override