Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef FB_GLUE_GLES1_H
00020 #define FB_GLUE_GLES1_H
00021
00022 #ifdef HAVE_CONFIG_H
00023 #include "gnashconfig.h"
00024 #endif
00025
00026
00027 #ifdef HAVE_GLES1_GL_H
00028 # include <GLES/gl.h>
00029 # endif
00030 #ifdef HAVE_GLES1_EGL_H
00031 #include <GLES/egl.h>
00032 #endif
00033 #if 0
00034
00035 #ifdef HAVE_EGL_EGL_H
00036 # include <EGL/egl.h>
00037 # include <EGL/eglext.h>
00038 #endif
00039
00040 #ifdef HAVE_GLES2_GL2_H
00041 # include <GLES2/gl2.h>
00042 # include <GLES2/gl2ext.h>
00043 #endif
00044 #endif
00045
00046 #include <boost/scoped_ptr.hpp>
00047
00048 #include "fbsup.h"
00049
00050 namespace gnash {
00051
00052 namespace gui {
00053
00054 class render_handler;
00055
00056 class FBgles1Glue: public FBGlue
00057 {
00058 public:
00059 FBgles1Glue(int fd);
00060 ~FBgles1Glue();
00061 bool init(int argc, char ***);
00062
00063 Renderer* createRenderHandler();
00064 void setInvalidatedRegions(const InvalidatedRanges& ) {}
00065
00066 int width ();
00067 int height ();
00068 void render ();
00069
00070 void render_to_pbuffer ();
00071 void prepare_copy_from_pbuffer ();
00072 void render_to_display ();
00073
00074 protected:
00075 int _fd;
00076
00077 private:
00078 boost::scoped_ptr<Renderer> _renderer;
00079 EGLDisplay _display;
00080 EGLConfig _config;
00081 EGLContext _context;
00082 EGLSurface _surface;
00083 EGLConfig _pbuffer_config;
00084 EGLSurface _pbuffer;
00085 };
00086
00087 }
00088 }
00089
00090 #endif // FB_GLUE_GLES1_H
00091
00092
00093
00094
00095