VTK
vtkOculusRenderWindowInteractor.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkOculusRenderWindowInteractor.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 =========================================================================*/
26 #ifndef vtkOculusRenderWindowInteractor_h
27 #define vtkOculusRenderWindowInteractor_h
28 
29 #include "vtkRenderingOculusModule.h" // For export macro
31 
32 #include "vtkOculusRenderWindow.h" // ivars
33 #include "vtkNew.h" // ivars
34 #include "vtkTransform.h" // ivars
35 
36 class VTKRENDERINGOCULUS_EXPORT vtkOculusRenderWindowInteractor : public vtkRenderWindowInteractor3D
37 {
38 public:
43 
45  void PrintSelf(ostream& os, vtkIndent indent);
46 
50  virtual void Initialize();
51 
57  void TerminateApp(void);
58 
60 
66  static void SetClassExitMethod(void (*f)(void *), void *arg);
67  static void SetClassExitMethodArgDelete(void (*f)(void *));
69 
74  virtual void ExitCallback();
75 
77 
81  virtual void SetPhysicalTranslation(vtkCamera *, double, double, double);
82  virtual double *GetPhysicalTranslation(vtkCamera *);
84 
85 protected:
88 
90 
95  static void (*ClassExitMethod)(void *);
96  static void (*ClassExitMethodArgDelete)(void *);
97  static void *ClassExitMethodArg;
99 
101 
105  virtual int InternalCreateTimer(int timerId, int timerType, unsigned long duration);
106  virtual int InternalDestroyTimer(int platformTimerId);
108 
114  virtual void StartEventLoop();
115 
117 
118 private:
120  void operator=(const vtkOculusRenderWindowInteractor&); // Not implemented.
121 };
122 
123 #endif
a virtual camera for 3D rendering
Definition: vtkCamera.h:51
a simple class to control print indentation
Definition: vtkIndent.h:40
implements Oculus specific functions required by vtkRenderWindowInteractor.
virtual double * GetPhysicalTranslation(vtkCamera *)
void TerminateApp(void)
Oculus specific application terminate, calls ClassExitMethod then calls PostQuitMessage(0) to termina...
virtual void SetPhysicalTranslation(vtkCamera *, double, double, double)
Set/Get the optional translation to map world coordinates into the 3D physical space (meters,...
virtual int InternalDestroyTimer(int platformTimerId)
static vtkOculusRenderWindowInteractor * New()
Construct object so that light follows camera motion.
virtual void StartEventLoop()
This will start up the event loop and never return.
static void SetClassExitMethod(void(*f)(void *), void *arg)
Methods to set the default exit method for the class.
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
virtual void ExitCallback()
These methods correspond to the the Exit, User and Pick callbacks.
static void SetClassExitMethodArgDelete(void(*f)(void *))
virtual void Initialize()
Initialize the event handler.
virtual int InternalCreateTimer(int timerId, int timerType, unsigned long duration)
Win32-specific internal timer methods.
adds support for 3D events to vtkRenderWindowInteractor.