15 #ifndef EGLGRAPHICSSTATEGUARDIAN_H
16 #define EGLGRAPHICSSTATEGUARDIAN_H
18 #include "pandabase.h"
19 #include "eglGraphicsPipe.h"
35 bool &pbuffer_supported,
bool &pixmap_supported,
36 bool &slow, EGLConfig config);
38 X11_Display *_display,
40 bool need_pbuffer,
bool need_pixmap);
51 EGLContext _share_context;
53 EGLDisplay _egl_display;
54 X11_Display *_display;
57 XVisualInfo *_visuals;
62 virtual void gl_flush()
const;
63 virtual GLenum gl_get_error()
const;
65 virtual void query_gl_version();
66 virtual void get_extra_extensions();
67 virtual void *do_get_extension_func(
const char *name);
70 int _egl_version_major, _egl_version_minor;
76 static void init_type() {
78 GLES2GraphicsStateGuardian::init_type();
79 register_type(_type_handle,
"eglGraphicsStateGuardian",
80 GLES2GraphicsStateGuardian::get_class_type());
82 GLESGraphicsStateGuardian::init_type();
83 register_type(_type_handle,
"eglGraphicsStateGuardian",
84 GLESGraphicsStateGuardian::get_class_type());
88 return get_class_type();
90 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
96 #include "eglGraphicsStateGuardian.I"
An object to create GraphicsOutputs that share a particular 3-D API.
bool egl_is_at_least_version(int major_version, int minor_version) const
Returns true if the runtime GLX version number is at least the indicated value, false otherwise...
void choose_pixel_format(const FrameBufferProperties &properties, X11_Display *_display, int _screen, bool need_pbuffer, bool need_pixmap)
Selects a visual or fbconfig for all the windows and buffers that use this gsg.
virtual void reset()
Resets all internal state as if the gsg were newly created.
A tiny specialization on GLESGraphicsStateGuardian to add some egl-specific information.
This class is the main interface to controlling the render process.
void get_properties(FrameBufferProperties &properties, bool &pbuffer_supported, bool &pixmap_supported, bool &slow, EGLConfig config)
Gets the FrameBufferProperties to match the indicated config.
TypeHandle is the identifier used to differentiate C++ class types.
A container for the various kinds of properties we might ask to have on a graphics frameBuffer before...
const FrameBufferProperties & get_fb_properties() const
Gets the FrameBufferProperties for all windows and buffers that use this GSG.