X Window System (X11R6) device / software surface. More...
#include <mitsuba/hw/x11device.h>
Public Member Functions | |
X11Device (X11Session *session) | |
Create a new device. More... | |
void | init (Device *other=NULL) |
Initialize the device. More... | |
void | shutdown () |
Shut the device down. More... | |
virtual void | flip () |
Flip the buffers. More... | |
void | setVisible (bool enabled) |
Only applies in windowed mode. More... | |
void | setPosition (const Point2i &position) |
Only applies in windowed mode. More... | |
void | setTitle (const std::string &title) |
Set the window title. More... | |
void | showCursor (bool enabled) |
Display the X11 cursor? More... | |
void | setGrab (bool grab) |
Set the cursor grab state. More... | |
void | warpMouse (const Point2i &position) |
Move the mouse to another position. More... | |
void | processEvent (const XEvent &event) |
Handle an X11 event. Called by the session. More... | |
void | makeCurrent (Renderer *renderer) |
Associate a renderer with this device. More... | |
virtual const Class * | getClass () const |
Retrieve this object's class. More... | |
Public Member Functions inherited from mitsuba::Device | |
Vector2i | getSize () const |
Return the dimension of the device. More... | |
void | setSize (const Vector2i &dimension) |
Set the dimension of the device. More... | |
Float | getAspect () const |
Return the aspect ratio of the device. More... | |
Point2i | getPosition () const |
Return the position of the device. More... | |
void | setFSAA (int fsaa) |
Set the FSAA sample count, do this before Init() More... | |
int | getFSAA () const |
Return the FSAA sample count. More... | |
void | setColorBits (int colorBits) |
A convenience method. More... | |
void | setRedBits (int redBits) |
Set the amount of bits for the red component. More... | |
int | getRedBits () const |
Return the amount of bits for the red component. More... | |
void | setGreenBits (int greenBits) |
Set the amount of bits for the green component. More... | |
int | getGreenBits () const |
Return the amount of bits for the green component. More... | |
void | setBlueBits (int blueBits) |
Set the amount of bits for the blue component. More... | |
int | getBlueBits () const |
Return the amount of bits for the blue component. More... | |
void | setAlphaBits (int alphaBits) |
Set the amount of bits for the alpha component. More... | |
int | getAlphaBits () const |
Return the amount of bits for the alpha component. More... | |
void | setDepthBits (int depthBits) |
Set the amount of bits for the depth component. More... | |
int | getDepthBits () const |
Return the amount of bits for the depth component. More... | |
void | setStencilBits (int stencilBits) |
Set the amount of bits for the stencil component. More... | |
int | getStencilBits () const |
Return the amount of bits for the stencil component. More... | |
void | setDoubleBuffer (bool doubleBuffer) |
Define whether to enable double buffering. More... | |
bool | getDoubleBuffer () const |
void | setFullscreen (bool fullscreen) |
bool | getFullscreen () const |
Return whether full screen drawing is enabled. More... | |
void | setResizeAllowed (bool resizeAllowed) |
bool | isResizeAllowed () const |
Return whether it is possible to resize the window. More... | |
void | setCenter (bool center) |
Define whether to enable window centering. More... | |
bool | getCenter () const |
Return whether window centering is enabled. More... | |
void | setShowFPS (bool showFPS) |
Define whether to show the frames per second. More... | |
bool | getShowFPS () const |
Return whether to show the frames per second. More... | |
int | getFPS () const |
Return the frames per second (0 if no data is available) More... | |
void | setXPos (int xpos) |
Set the x window position. More... | |
const std::string & | getTitle () const |
Return the window title. More... | |
const Session * | getSession () const |
Get the session. More... | |
Session * | getSession () |
Get the session. More... | |
void | addCallback (DeviceEventListener *callback) |
Add an event callback to the device. More... | |
void | removeCallback (DeviceEventListener *callback) |
Remove an event callback from the device. More... | |
Public Member Functions inherited from Object | |
Object () | |
Construct a new object. More... | |
int | getRefCount () const |
Return the current reference count. More... | |
void | incRef () const |
Increase the reference count of the object by one. More... | |
void | decRef (bool autoDeallocate=true) const |
Decrease the reference count of the object and possibly deallocate it. More... | |
virtual std::string | toString () const |
Return a human-readable string representation of the object's contents. More... | |
Static Public Attributes | |
static Class * | m_theClass |
Static Public Attributes inherited from mitsuba::Device | |
static Class * | m_theClass |
Static Public Attributes inherited from Object | |
static Class * | m_theClass |
Pointer to the object's class descriptor. More... | |
Protected Member Functions | |
virtual | ~X11Device () |
Virtual destructor. More... | |
virtual XVisualInfo * | createVisual () |
Create a visual. More... | |
Protected Member Functions inherited from mitsuba::Device | |
virtual | ~Device () |
Virtual destructor. More... | |
Device (Session *session) | |
Create a new device. More... | |
void | fireDeviceEvent (const DeviceEvent &event) |
Send a device event using the registered callbacks. More... | |
Protected Member Functions inherited from Object | |
virtual | ~Object () |
Virtual private deconstructor. (Will only be called by ref) More... | |
Protected Attributes | |
Window | m_window |
XVisualInfo * | m_visinfo |
XF86VidModeModeInfo | m_previousMode |
Atom | m_deleteWindow |
bool | m_visible |
Cursor | m_cursor |
int | m_keymap [256] |
Point2i | m_mouse |
int | m_modifierState |
int | m_buttonState |
bool | m_grab |
Protected Attributes inherited from mitsuba::Device | |
ref< Session > | m_session |
ref< Timer > | m_timer |
Vector2i | m_size |
Point2i | m_position |
int | m_fsaa |
int | m_redBits |
int | m_greenBits |
int | m_blueBits |
int | m_alphaBits |
int | m_depthBits |
int | m_stencilBits |
bool | m_doubleBuffer |
bool | m_initialized |
bool | m_fullscreen |
bool | m_center |
bool | m_showFPS |
bool | m_resizeAllowed |
int | m_fpsCounter |
int | m_fps |
int | m_lastTime |
std::string | m_title |
std::list< DeviceEventListener * > | m_callbacks |
Friends | |
class | X11Session |
class | GLXRenderer |
X Window System (X11R6) device / software surface.
mitsuba::X11Device::X11Device | ( | X11Session * | session | ) |
Create a new device.
|
protectedvirtual |
Virtual destructor.
|
protectedvirtual |
Create a visual.
Reimplemented in mitsuba::GLXDevice.
|
virtual |
|
virtual |
Retrieve this object's class.
Reimplemented from mitsuba::Device.
Reimplemented in mitsuba::GLXDevice.
|
virtual |
Initialize the device.
Reimplemented from mitsuba::Device.
|
virtual |
Associate a renderer with this device.
Implements mitsuba::Device.
void mitsuba::X11Device::processEvent | ( | const XEvent & | event | ) |
Handle an X11 event. Called by the session.
void mitsuba::X11Device::setGrab | ( | bool | grab | ) |
Set the cursor grab state.
|
virtual |
Only applies in windowed mode.
Reimplemented from mitsuba::Device.
|
virtual |
Set the window title.
Reimplemented from mitsuba::Device.
|
virtual |
Only applies in windowed mode.
Implements mitsuba::Device.
void mitsuba::X11Device::showCursor | ( | bool | enabled | ) |
Display the X11 cursor?
|
virtual |
Shut the device down.
Reimplemented from mitsuba::Device.
void mitsuba::X11Device::warpMouse | ( | const Point2i & | position | ) |
Move the mouse to another position.
|
friend |
|
friend |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
static |
|
protected |
|
protected |
|
protected |