2018-11-16 00:42:29 +01:00
|
|
|
/*****************************************************************************\
|
|
|
|
Snes9x - Portable Super Nintendo Entertainment System (TM) emulator.
|
|
|
|
This file is licensed under the Snes9x License.
|
|
|
|
For further information, consult the LICENSE file in the root directory.
|
|
|
|
\*****************************************************************************/
|
|
|
|
|
2018-10-28 17:29:51 +01:00
|
|
|
#ifndef __GTK_OPENGL_CONTEXT_H
|
|
|
|
#define __GTK_OPENGL_CONTEXT_H
|
|
|
|
|
2018-11-07 01:46:44 +01:00
|
|
|
#include "gtk_2_3_compat.h"
|
2018-10-27 01:22:51 +02:00
|
|
|
|
2018-10-28 17:29:51 +01:00
|
|
|
class OpenGLContext
|
2018-10-27 01:22:51 +02:00
|
|
|
{
|
2018-10-28 17:29:51 +01:00
|
|
|
public:
|
2018-12-18 02:01:53 +01:00
|
|
|
virtual ~OpenGLContext () {};
|
2018-10-27 01:22:51 +02:00
|
|
|
virtual bool attach (GtkWidget *widget) = 0;
|
|
|
|
virtual bool create_context () = 0;
|
|
|
|
virtual void resize () = 0;
|
|
|
|
virtual void swap_buffers () = 0;
|
|
|
|
virtual void swap_interval (int frames) = 0;
|
|
|
|
virtual void make_current () = 0;
|
|
|
|
|
|
|
|
int x;
|
|
|
|
int y;
|
|
|
|
int width;
|
|
|
|
int height;
|
|
|
|
};
|
2018-10-28 17:29:51 +01:00
|
|
|
|
|
|
|
#endif
|