#ifndef QTOFFLINEGL_H #define QTOFFLINEGL_H #include #include #include #include #include #include "tofflinegl.h" class QtOfflineGL : public TOfflineGL::Imp { public: QOpenGLContext *m_context; QOpenGLContext *m_oldContext; QOffscreenSurface *m_surface; QtOfflineGL(TDimension rasterSize, std::shared_ptr shared); ~QtOfflineGL(); void createContext(TDimension rasterSize, std::shared_ptr shared); void makeCurrent(); void doneCurrent(); void saveCurrentContext(); void restoreCurrentContext(); void getRaster(TRaster32P raster); }; //----------------------------------------------------------------------------- class QtOfflineGLPBuffer : public TOfflineGL::Imp { public: QGLPixelBuffer *m_context; QtOfflineGLPBuffer(TDimension rasterSize); ~QtOfflineGLPBuffer(); void createContext(TDimension rasterSize); void makeCurrent(); void doneCurrent(); void getRaster(TRaster32P raster); }; #endif