1 /**
2  * \file opengl_renderer.h
3  * \brief   OpenGL-based renderer for the GTK3 backend.
4  *
5  * \author Michael C. Martin <mcmartin@gmail.com>
6  */
7 
8 /* This file is part of VICE, the Versatile Commodore Emulator.
9  * See README for copyright notice.
10  *
11  *  This program is free software; you can redistribute it and/or modify
12  *  it under the terms of the GNU General Public License as published by
13  *  the Free Software Foundation; either version 2 of the License, or
14  *  (at your option) any later version.
15  *
16  *  This program is distributed in the hope that it will be useful,
17  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
18  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19  *  GNU General Public License for more details.
20  *
21  *  You should have received a copy of the GNU General Public License
22  *  along with this program; if not, write to the Free Software
23  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
24  *  02111-1307  USA.
25  *
26  */
27 #ifndef VICE_OPENGL_RENDERER_H
28 #define VICE_OPENGL_RENDERER_H
29 
30 #include "videoarch.h"
31 
32 #ifdef MACOSX_SUPPORT
33 /* XXX: GdkGLContext is not implemented for Macs */
34 #undef HAVE_GTK3_OPENGL
35 #endif
36 
37 #ifdef HAVE_GTK3_OPENGL
38 /** \brief A renderer that uses OpenGL to render to a GtkGLArea.
39  *
40  * This is a very fast and efficient hardware-accelerated renderer. As
41  * required by Gtk3, it is implemented against the OpenGL 3.2 core
42  * profile and requires nothing else outside of it.
43  *
44  * \warning Due to incompatibilities within GTK3 itself this backend
45  *          is not available on macOS, because GtkGLArea is also not
46  *          available.
47  */
48 extern vice_renderer_backend_t vice_opengl_backend;
49 #endif
50 
51 #endif
52