48 lines
701 B
C++
48 lines
701 B
C++
|
|
#ifndef PLATFORM_WIN32_GLCONTEXT_H
|
|
#define PLATFORM_WIN32_GLCONTEXT_H
|
|
|
|
// Win32 OpenGL Context (wgl)
|
|
|
|
#include <Windows.h>
|
|
#include <Spectre/Window/GLContext.h>
|
|
|
|
namespace sp {
|
|
|
|
class Win32GLContext : public GLContext
|
|
{
|
|
public :
|
|
Win32GLContext();
|
|
~Win32GLContext();
|
|
|
|
// Create a context associated with a display.
|
|
bool create(const PlatformWindow* window);
|
|
|
|
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 */
|