Rendering/vtkCocoaRenderWindowInteractor.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00025 #ifndef __vtkCocoaRenderWindowInteractor_h
00026 #define __vtkCocoaRenderWindowInteractor_h
00027
00028 #include "vtkRenderWindowInteractor.h"
00029
00030
00031 #ifdef __cplusplus
00032 extern "C" {
00033 #endif
00034
00035 #ifdef __cplusplus
00036 };
00037 #endif
00038
00039
00040
00041 class VTK_RENDERING_EXPORT vtkCocoaRenderWindowInteractor : public vtkRenderWindowInteractor {
00042 public:
00044 static vtkCocoaRenderWindowInteractor *New();
00045
00046 vtkTypeRevisionMacro(vtkCocoaRenderWindowInteractor,vtkRenderWindowInteractor);
00047 void PrintSelf(ostream& os, vtkIndent indent);
00048
00050 virtual void Initialize();
00051
00053
00060 virtual void Enable();
00061 virtual void Disable();
00063
00067 virtual void Start();
00068
00070
00075 vtkSetMacro(InstallMessageProc,int);
00076 vtkGetMacro(InstallMessageProc,int);
00077 vtkBooleanMacro(InstallMessageProc,int);
00079
00084 void TerminateApp(void);
00085
00087
00088 int CreateTimer(int timertype);
00089 int DestroyTimer(void);
00091
00093
00097 static void SetClassExitMethod(void (*f)(void *), void *arg);
00098 static void SetClassExitMethodArgDelete(void (*f)(void *));
00100
00103 virtual void ExitCallback();
00104
00105
00106
00107
00108 protected:
00109 vtkCocoaRenderWindowInteractor();
00110 ~vtkCocoaRenderWindowInteractor();
00111
00112 void *WindowId;
00113 void *ApplicationId;
00114 int TimerId;
00115 void *OldProc;
00116 int InstallMessageProc;
00117
00118
00120
00123 static void (*ClassExitMethod)(void *);
00124 static void (*ClassExitMethodArgDelete)(void *);
00125 static void *ClassExitMethodArg;
00126
00128
00129 private:
00130 vtkCocoaRenderWindowInteractor(const vtkCocoaRenderWindowInteractor&);
00131 void operator=(const vtkCocoaRenderWindowInteractor&);
00132 };
00133
00134 #endif
00135
00136