dolphin/Source/Core/Common/GL/GLInterface/EGL.h

33 lines
865 B
C
Raw Normal View History

// Copyright 2008 Dolphin Emulator Project
2015-05-17 23:08:10 +00:00
// Licensed under GPLv2+
// Refer to the license.txt file included.
2012-12-17 21:01:52 +00:00
#pragma once
2012-12-17 21:01:52 +00:00
#include <string>
2014-03-28 00:26:52 +00:00
#include <EGL/egl.h>
#include "Common/GL/GLInterfaceBase.h"
2012-12-17 21:01:52 +00:00
class cInterfaceEGL : public cInterfaceBase
{
protected:
void DetectMode();
EGLSurface egl_surf;
EGLContext egl_ctx;
EGLDisplay egl_dpy;
virtual EGLDisplay OpenDisplay() = 0;
virtual EGLNativeWindowType InitializePlatform(EGLNativeWindowType host_window, EGLConfig config) = 0;
virtual void ShutdownPlatform() = 0;
2012-12-17 21:01:52 +00:00
public:
void Swap() override;
void SwapInterval(int interval) override;
void SetMode(u32 mode) override { s_opengl_mode = mode; }
void* GetFuncAddress(const std::string& name) override;
bool Create(void* window_handle, bool core) override;
bool MakeCurrent() override;
bool ClearCurrent() override;
void Shutdown() override;
2012-12-17 21:01:52 +00:00
};