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 =========================================================================*/
27 #ifndef __vtkTDxUnixDevice_h
28 #define __vtkTDxUnixDevice_h
29 
30 #include "vtkTDxDevice.h"
31 //#include <X11/Xlib.h> // Needed for X types used in the public interface
33 
34 // We cannot include <X11/Xlib.h> (which defines "Display *",
35 // "Window" and "XEvent *") because it defines macro like None that would
36 // conflict with qt4/Qt/qcoreevent.h which defines None as a QEvent::Type
37 // value.
38 typedef void vtkTDxUnixDeviceDisplay;
39 typedef unsigned int vtkTDxUnixDeviceWindow;
41 
43 {
44 public:
45  static vtkTDxUnixDevice *New();
47  void PrintSelf(ostream& os, vtkIndent indent);
48 
51  vtkTDxUnixDeviceDisplay *GetDisplayId() const;
52 
55  vtkTDxUnixDeviceWindow GetWindowId() const;
56 
59  void SetDisplayId(vtkTDxUnixDeviceDisplay *id);
60 
63  void SetWindowId(vtkTDxUnixDeviceWindow id);
64 
75  void Initialize();
76 
78  virtual void Close();
79 
86  bool ProcessEvent(const vtkTDxUnixDeviceXEvent *e);
87 
89 
91  vtkGetMacro(TranslationScale,double);
92  vtkSetMacro(TranslationScale,double);
94 
96 
98  vtkGetMacro(RotationScale,double);
99  vtkSetMacro(RotationScale,double);
101 
104  void SetSensitivity(double sensitivity);
105 
106 protected:
110 
113  virtual ~vtkTDxUnixDevice();
114 
117 
120 
121 private:
122  vtkTDxUnixDevice(const vtkTDxUnixDevice&); // Not implemented.
123  void operator=(const vtkTDxUnixDevice&); // Not implemented.
124 };
125 
126 #endif