summaryrefslogtreecommitdiffstats
path: root/src/adaptationlayers/threadedtexturemanager.h
blob: 36ec9f8ffb64ab35e84e77d550174e640b4f1e2a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#ifndef THREADEDTEXTUREMANAGER_H
#define THREADEDTEXTUREMANAGER_H

#include "adaptationlayer.h"

class QSGThreadedTextureManagerPrivate;

class QSGThreadedTextureManager : public TextureManager
{
public:
    QSGThreadedTextureManager();

    const QSGTextureRef &requestUploadedTexture(const QImage &image, UploadHints hints, QObject *listener, const char *slot);

    virtual void initializeThreadContext();
    virtual void makeThreadContextCurrent();
    virtual void uploadInThread(TextureReference *texture, const QImage &image, UploadHints hints);

private:
    QSGThreadedTextureManagerPrivate *d;
};

#endif // THREADEDTEXTUREMANAGER_H