#pragma once #include "../graphics/opengl/texture.hpp" #include "../graphics/opengl/renderbuffer.hpp" #include "../graphics/resource_manager.hpp" #include "../map/drawer.hpp" #include "../map/qgl_render_context.hpp" #include "../std/shared_ptr.hpp" #include namespace graphics { namespace gl { class Screen; } } namespace tst { class GLDrawWidget : public QGLWidget { public: shared_ptr m_resourceManager; shared_ptr m_primaryFrameBuffer; shared_ptr m_primaryContext; shared_ptr m_primaryScreen; virtual void initializeGL(); virtual void resizeGL(int w, int h); virtual void paintGL(); public: virtual void DoDraw(shared_ptr const & screen) = 0; }; }