1
0
Fork 0
spectre/source/Platform/Win32/Win32GLContext.h

48 lines
704 B
C++

#ifndef PLATFORM_WIN32_GLCONTEXT_H
#define PLATFORM_WIN32_GLCONTEXT_H
// Win32 OpenGL Context (wgl)
#include <Windows.h>
#include <Spectre/Display/GLContext.h>
namespace sp {
class Win32GLContext : public GLContext
{
public :
Win32GLContext();
~Win32GLContext();
// Create a context associated with a display.
bool create(const PlatformDisplay* display);
void destroy();
bool activate();
bool deactivate();
bool isActive() const;
bool setSwapInterval(int interval);
void swapBuffers();
private :
void createGLContext();
bool setPixelFormat();
private :
HWND m_wnd;
HDC m_deviceContext;
HGLRC m_renderContext;
};
} // namespace sp
#endif /* PLATFORM_WIN32_GLCONTEXT_H */