Panda3D
|
Another offscreen buffer in the EGL environment. More...
#include "eglGraphicsPixmap.h"
Public Member Functions | |
eglGraphicsPixmap (GraphicsEngine *engine, GraphicsPipe *pipe, const string &name, const FrameBufferProperties &fb_prop, const WindowProperties &win_prop, int flags, GraphicsStateGuardian *gsg, GraphicsOutput *host) | |
virtual bool | begin_frame (FrameMode mode, Thread *current_thread) |
This function will be called within the draw thread before beginning rendering for a given frame. | |
virtual void | end_frame (FrameMode mode, Thread *current_thread) |
This function will be called within the draw thread after rendering is completed for a given frame. | |
virtual TypeHandle | force_init_type () |
virtual TypeHandle | get_type () const |
Static Public Member Functions | |
static TypeHandle | get_class_type () |
static void | init_type () |
Protected Member Functions | |
virtual void | close_buffer () |
Closes the pixmap right now. | |
virtual bool | open_buffer () |
Opens the pixmap right now. |
Another offscreen buffer in the EGL environment.
This creates a Pixmap object, which is probably less efficient than an EGLPBuffer, so this class is a second choice to eglGraphicsBuffer.
Definition at line 30 of file eglGraphicsPixmap.h.
bool eglGraphicsPixmap::begin_frame | ( | FrameMode | mode, |
Thread * | current_thread | ||
) | [virtual] |
This function will be called within the draw thread before beginning rendering for a given frame.
It should do whatever setup is required, and return true if the frame should be rendered, or false if it should be skipped.
Reimplemented from GraphicsOutput.
Definition at line 74 of file eglGraphicsPixmap.cxx.
References GraphicsOutput::begin_frame_spam(), GraphicsOutput::clear_cube_map_selection(), and GraphicsOutput::get_fb_properties().
void eglGraphicsPixmap::close_buffer | ( | ) | [protected, virtual] |
Closes the pixmap right now.
Called from the window thread.
Reimplemented from GraphicsBuffer.
Definition at line 144 of file eglGraphicsPixmap.cxx.
Referenced by open_buffer().
void eglGraphicsPixmap::end_frame | ( | FrameMode | mode, |
Thread * | current_thread | ||
) | [virtual] |
This function will be called within the draw thread after rendering is completed for a given frame.
It should do whatever finalization is required.
Reimplemented from GraphicsOutput.
Definition at line 121 of file eglGraphicsPixmap.cxx.
References GraphicsOutput::clear_cube_map_selection(), GraphicsOutput::copy_to_textures(), GraphicsOutput::end_frame_spam(), and GraphicsOutput::trigger_flip().
bool eglGraphicsPixmap::open_buffer | ( | ) | [protected, virtual] |
Opens the pixmap right now.
Called from the window thread. Returns true if the pixmap is successfully opened, or false if there was a problem.
Reimplemented from GraphicsBuffer.
Definition at line 177 of file eglGraphicsPixmap.cxx.
References eglGraphicsStateGuardian::choose_pixel_format(), close_buffer(), eglGraphicsStateGuardian::get_fb_properties(), eglGraphicsPipe::get_root(), eglGraphicsPipe::get_screen(), eglGraphicsWindow::get_xwindow(), FrameBufferProperties::subsumes(), and FrameBufferProperties::verify_hardware_software().