Mitsuba Renderer  0.5.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
glxdevice.h
Go to the documentation of this file.
1 /*
2  This file is part of Mitsuba, a physically based rendering system.
3 
4  Copyright (c) 2007-2014 by Wenzel Jakob and others.
5 
6  Mitsuba is free software; you can redistribute it and/or modify
7  it under the terms of the GNU General Public License Version 3
8  as published by the Free Software Foundation.
9 
10  Mitsuba is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18 
19 #if !defined(__MITSUBA_HW_GLXDEVICE_H_)
20 #define __MITSUBA_HW_GLXDEVICE_H_
21 
22 #include <mitsuba/hw/x11device.h>
23 
25 
26 /** \brief X Windows OpenGL-capable (GLX) device
27  * \ingroup libhw
28  */
30 public:
31  /// Create a new device
32  GLXDevice(X11Session *session);
33 
34  /// Flip the buffers (when using double-buffering)
35  void flip();
36 
38 protected:
39  /// Virtual destructor
40  virtual ~GLXDevice();
41 
42  /// Create a visual
43  virtual XVisualInfo* createVisual();
44 };
45 
47 
48 #endif /* __MITSUBA_HW_GLXDEVICE_H_ */
#define MTS_EXPORT_HW
Definition: platform.h:114
X Window System (X11R6) session.
Definition: x11session.h:31
X Window System (X11R6) device / software surface.
Definition: x11device.h:30
#define MTS_NAMESPACE_BEGIN
Definition: platform.h:137
#define MTS_DECLARE_CLASS()
This macro must be used in the initial definition in classes that derive from Object.
Definition: class.h:158
virtual void flip()
Flip the buffers.
X Windows OpenGL-capable (GLX) device.
Definition: glxdevice.h:29
#define MTS_NAMESPACE_END
Definition: platform.h:138