Panda3D
Public Member Functions | Static Public Member Functions | Protected Member Functions

glxGraphicsWindow Class Reference

An interface to the glx system for managing GL windows under X. More...

#include "glxGraphicsWindow.h"

Inheritance diagram for glxGraphicsWindow:
x11GraphicsWindow GraphicsWindow GraphicsOutput GraphicsOutputBase DrawableRegion TypedWritableReferenceCount TypedWritable ReferenceCount TypedObject MemoryBase MemoryBase

List of all members.

Public Member Functions

 glxGraphicsWindow (GraphicsEngine *engine, GraphicsPipe *pipe, const string &name, const FrameBufferProperties &fb_prop, const WindowProperties &win_prop, int flags, GraphicsStateGuardian *gsg, GraphicsOutput *host)
virtual void begin_flip ()
 This function will be called within the draw thread after end_frame() has been called on all windows, to initiate the exchange of the front and back buffers.
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 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_window ()
 Closes the window right now.
virtual bool open_window ()
 Opens the window right now.

Detailed Description

An interface to the glx system for managing GL windows under X.

Definition at line 30 of file glxGraphicsWindow.h.


Member Function Documentation

void glxGraphicsWindow::begin_flip ( ) [virtual]

This function will be called within the draw thread after end_frame() has been called on all windows, to initiate the exchange of the front and back buffers.

This should instruct the window to prepare for the flip at the next video sync, but it should not wait.

We have the two separate functions, begin_flip() and end_flip(), to make it easier to flip all of the windows at the same time.

Reimplemented from GraphicsOutput.

Definition at line 121 of file glxGraphicsWindow.cxx.

bool glxGraphicsWindow::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 x11GraphicsWindow.

Definition at line 62 of file glxGraphicsWindow.cxx.

References GraphicsOutput::begin_frame_spam(), GraphicsOutput::clear_cube_map_selection(), and GraphicsOutput::get_fb_properties().

void glxGraphicsWindow::close_window ( ) [protected, virtual]

Closes the window right now.

Called from the window thread.

Reimplemented from x11GraphicsWindow.

Definition at line 142 of file glxGraphicsWindow.cxx.

Referenced by open_window().

bool glxGraphicsWindow::open_window ( ) [protected, virtual]

Opens the window right now.

Called from the window thread. Returns true if the window is successfully opened, or false if there was a problem.

Reimplemented from x11GraphicsWindow.

Definition at line 160 of file glxGraphicsWindow.cxx.

References glxGraphicsStateGuardian::choose_pixel_format(), close_window(), x11GraphicsPipe::get_display(), glxGraphicsStateGuardian::get_fb_properties(), x11GraphicsPipe::get_screen(), x11GraphicsWindow::open_window(), FrameBufferProperties::subsumes(), and FrameBufferProperties::verify_hardware_software().


The documentation for this class was generated from the following files:
 All Classes Functions Variables Enumerations