VTK
vtkTDxUnixDevice.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkTDxUnixDevice.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
25 #ifndef vtkTDxUnixDevice_h
26 #define vtkTDxUnixDevice_h
27 
28 #include "vtkRenderingOpenGLModule.h" // For export macro
29 #include "vtkTDxDevice.h"
30 //#include <X11/Xlib.h> // Needed for X types used in the public interface
32 
33 // We cannot include <X11/Xlib.h> (which defines "Display *",
34 // "Window" and "XEvent *") because it defines macro like None that would
35 // conflict with qt4/Qt/qcoreevent.h which defines None as a QEvent::Type
36 // value.
37 typedef void vtkTDxUnixDeviceDisplay;
38 typedef unsigned int vtkTDxUnixDeviceWindow;
40 
41 class VTKRENDERINGOPENGL_EXPORT vtkTDxUnixDevice : public vtkTDxDevice
42 {
43 public:
44  static vtkTDxUnixDevice *New();
46  void PrintSelf(ostream& os, vtkIndent indent);
47 
52  vtkTDxUnixDeviceDisplay *GetDisplayId() const;
53 
58  vtkTDxUnixDeviceWindow GetWindowId() const;
59 
65  void SetDisplayId(vtkTDxUnixDeviceDisplay *id);
66 
71  void SetWindowId(vtkTDxUnixDeviceWindow id);
72 
87  void Initialize();
88 
92  virtual void Close();
93 
105  bool ProcessEvent(const vtkTDxUnixDeviceXEvent *e);
106 
108 
112  vtkGetMacro(TranslationScale,double);
113  vtkSetMacro(TranslationScale,double);
115 
117 
121  vtkGetMacro(RotationScale,double);
122  vtkSetMacro(RotationScale,double);
124 
130  void SetSensitivity(double sensitivity);
131 
132 protected:
139 
144  virtual ~vtkTDxUnixDevice();
145 
148 
151 
152 private:
153  vtkTDxUnixDevice(const vtkTDxUnixDevice&) VTK_DELETE_FUNCTION;
154  void operator=(const vtkTDxUnixDevice&) VTK_DELETE_FUNCTION;
155 };
156 
157 #endif
Implementation of vtkTDxDevice on Unix.
virtual void Close()=0
Close the device.
vtkTDxUnixDeviceWindow WindowId
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
unsigned int vtkTDxUnixDeviceWindow
platform-independent render window interaction including picking and frame rate control.
void vtkTDxUnixDeviceXEvent
a simple class to control print indentation
Definition: vtkIndent.h:39
void vtkTDxUnixDeviceDisplay
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
API to access a 3DConnexion input device.
Definition: vtkTDxDevice.h:37
vtkTDxUnixDeviceDisplay * DisplayId
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...