diff options
author | Gunnar Sletta <gunnar.sletta@nokia.com> | 2011-09-13 10:46:23 +0200 |
---|---|---|
committer | Gunnar Sletta <gunnar.sletta@nokia.com> | 2011-09-13 10:46:23 +0200 |
commit | 21a2ce41a8efb6c5ab4ab2674458309bc9f031b7 (patch) | |
tree | 927045bf52f3367551cb4af17aa6b5738408c1bb /examples/qwindow-compositor/surfacerenderer.h | |
parent | e47eb9057bf08834885ba6ef5e593d6f1844405c (diff) | |
parent | af711da1389c86c969d4872ec0936a90c46e1343 (diff) |
Merge branch 'refactor'
Conflicts:
src/qt-compositor/compositor_api/waylandcompositor.cpp
src/qt-compositor/wayland_wrapper/wloutput.cpp
Diffstat (limited to 'examples/qwindow-compositor/surfacerenderer.h')
-rw-r--r-- | examples/qwindow-compositor/surfacerenderer.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/examples/qwindow-compositor/surfacerenderer.h b/examples/qwindow-compositor/surfacerenderer.h new file mode 100644 index 0000000..df60b9d --- /dev/null +++ b/examples/qwindow-compositor/surfacerenderer.h @@ -0,0 +1,29 @@ +#ifndef SURFACERENDERER_H +#define SURFACERENDERER_H + +#include <QOpenGLContext> +#include <QGLShaderProgram> +#include <QWindow> + +class SurfaceRenderer +{ +public: + SurfaceRenderer(QOpenGLContext *context, QWindow *surface); + + void drawImage(const QImage &image, const QRect &geometry); + void drawTexture(int textureId, const QRect &geometry, int depth = 0); + GLuint textureFromImage(const QImage &image); + +private: + + QOpenGLContext *m_context; + QWindow *m_surface; + QGLShaderProgram *m_shaderProgram; + QMatrix4x4 m_transformMatrix; + + int m_matrixLocation; + int m_vertexCoordEntry; + int m_textureCoordEntry; +}; + +#endif // SURFACERENDERER_H |