Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions
vgui_accelerate Class Reference

(Potentially) Accelerated functions for OpenGL. More...

#include <vgui_accelerate.h>

Inheritance diagram for vgui_accelerate:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~vgui_accelerate ()
 Destructor.
virtual bool vgui_glClear (GLbitfield mask)
 OpenGL clearing.
virtual bool vgui_choose_cache_format (GLenum *format, GLenum *type)
 Set the OpenGL cache format.
virtual bool vgui_glDrawPixels (GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
 Fast-as-we-can version of drawpixels.
virtual bool vgui_copy_back_to_aux ()
 For X11/Mesa - copy back buffer to auxiliary buffer.
virtual bool vgui_copy_aux_to_back ()
 For X11/Mesa - copy auxiliary buffer to back buffer.

Static Public Member Functions

static vgui_accelerateinstance ()
 Singleton instance of this class.
static void register_accelerator (vgui_accelerate *p, int level)
 If level is higher than current level, then change to given accelerator.

Static Public Attributes

static bool vgui_no_acceleration = false
 Set to true for no acceleration.
static bool vgui_mfc_acceleration = false
 Set to true to use MFC acceleration.
static bool vgui_doublebuffer = true
 Sometimes double buffering needs to be switched off on windows.

Protected Member Functions

 vgui_accelerate ()

Detailed Description

(Potentially) Accelerated functions for OpenGL.

Definition at line 24 of file vgui_accelerate.h.


Constructor & Destructor Documentation

virtual vgui_accelerate::~vgui_accelerate ( ) [inline, virtual]

Destructor.

Definition at line 40 of file vgui_accelerate.h.

vgui_accelerate::vgui_accelerate ( ) [inline, protected]

Definition at line 69 of file vgui_accelerate.h.


Member Function Documentation

vgui_accelerate * vgui_accelerate::instance ( ) [static]

Singleton instance of this class.

Definition at line 26 of file vgui_accelerate.cxx.

void vgui_accelerate::register_accelerator ( vgui_accelerate p,
int  level 
) [static]

If level is higher than current level, then change to given accelerator.

Definition at line 32 of file vgui_accelerate.cxx.

bool vgui_accelerate::vgui_choose_cache_format ( GLenum *  format,
GLenum *  type 
) [virtual]

Set the OpenGL cache format.

If you pass stuff to vgui_glDrawPixels, and the format and type are what you got from an earlier call to this baby, then it might go faster.

Reimplemented in vgui_accelerate_x11.

Definition at line 60 of file vgui_accelerate.cxx.

bool vgui_accelerate::vgui_copy_aux_to_back ( ) [virtual]

For X11/Mesa - copy auxiliary buffer to back buffer.

This function is used in X11/Mesa to speed up overlay emulation. It returns false to indicate to overlay_biscuit that a default emulation must be used.

Reimplemented in vgui_accelerate_x11.

Definition at line 78 of file vgui_accelerate.cxx.

bool vgui_accelerate::vgui_copy_back_to_aux ( ) [virtual]

For X11/Mesa - copy back buffer to auxiliary buffer.

This function is used in X11/Mesa to speed up overlay emulation. It returns false to indicate to overlay_biscuit that a default emulation must be used.

Reimplemented in vgui_accelerate_x11.

Definition at line 73 of file vgui_accelerate.cxx.

bool vgui_accelerate::vgui_glClear ( GLbitfield  mask) [virtual]

OpenGL clearing.

Reimplemented in vgui_accelerate_x11.

Definition at line 44 of file vgui_accelerate.cxx.

bool vgui_accelerate::vgui_glDrawPixels ( GLsizei  width,
GLsizei  height,
GLenum  format,
GLenum  type,
const GLvoid *  pixels 
) [virtual]

Fast-as-we-can version of drawpixels.

Reimplemented in vgui_accelerate_x11.

Definition at line 51 of file vgui_accelerate.cxx.


Member Data Documentation

bool vgui_accelerate::vgui_doublebuffer = true [static]

Sometimes double buffering needs to be switched off on windows.

Definition at line 34 of file vgui_accelerate.h.

Set to true to use MFC acceleration.

Definition at line 31 of file vgui_accelerate.h.

Set to true for no acceleration.

Definition at line 28 of file vgui_accelerate.h.


The documentation for this class was generated from the following files: