VTK
vtkExporter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkExporter.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 =========================================================================*/
38 #ifndef vtkExporter_h
39 #define vtkExporter_h
40 
41 #include "vtkIOExportModule.h" // For export macro
42 #include "vtkObject.h"
43 class vtkRenderWindow;
44 
46 {
47 public:
48  vtkTypeMacro(vtkExporter,vtkObject);
49  void PrintSelf(ostream& os, vtkIndent indent);
50 
53  virtual void Write();
54 
56  void Update();
57 
59 
60  virtual void SetRenderWindow(vtkRenderWindow*);
61  vtkGetObjectMacro(RenderWindow,vtkRenderWindow);
63 
65 
67  void SetInput(vtkRenderWindow *renWin) {this->SetRenderWindow(renWin);};
70 
73  void SetStartWrite(void (*f)(void *), void *arg);
74 
77  void SetEndWrite(void (*f)(void *), void *arg);
78 
80  void SetStartWriteArgDelete(void (*f)(void *));
81 
83  void SetEndWriteArgDelete(void (*f)(void *));
84 
86  unsigned long GetMTime();
87 
88 protected:
89  vtkExporter();
90  ~vtkExporter();
91 
93  virtual void WriteData() = 0;
94 
95  void (*StartWrite)(void *);
96  void (*StartWriteArgDelete)(void *);
98  void (*EndWrite)(void *);
99  void (*EndWriteArgDelete)(void *);
100  void *EndWriteArg;
101 private:
102  vtkExporter(const vtkExporter&); // Not implemented.
103  void operator=(const vtkExporter&); // Not implemented.
104 };
105 
106 #endif
107 
108 
abstract class to write a scene to a file
Definition: vtkExporter.h:45
abstract base class for most VTK objects
Definition: vtkObject.h:61
void * StartWriteArg
Definition: vtkExporter.h:97
vtkRenderWindow * GetRenderWindow()
#define VTKIOEXPORT_EXPORT
virtual void SetRenderWindow(vtkRenderWindow *renwin)
virtual void Update()
virtual void PrintSelf(ostream &os, vtkIndent indent)
virtual unsigned long GetMTime()
a simple class to control print indentation
Definition: vtkIndent.h:38
vtkWeakPointer< vtkRenderWindow > RenderWindow
create a window for renderers to draw into
vtkRenderWindow * RenderWindow
Definition: vtkExporter.h:92
vtkRenderWindow * GetInput()
Definition: vtkExporter.h:68
void * EndWriteArg
Definition: vtkExporter.h:100
void SetInput(vtkRenderWindow *renWin)
Definition: vtkExporter.h:67