00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkImporter.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00044 #ifndef __vtkImporter_h 00045 #define __vtkImporter_h 00046 00047 #include "vtkObject.h" 00048 00049 class vtkRenderWindow; 00050 class vtkRenderer; 00051 00052 class VTK_RENDERING_EXPORT vtkImporter : public vtkObject 00053 { 00054 public: 00055 vtkTypeMacro(vtkImporter,vtkObject); 00056 void PrintSelf(ostream& os, vtkIndent indent); 00057 00058 00060 00062 vtkGetObjectMacro(Renderer,vtkRenderer); 00064 00066 00072 virtual void SetRenderWindow(vtkRenderWindow*); 00073 vtkGetObjectMacro(RenderWindow,vtkRenderWindow); 00075 00076 00078 00080 void Read(); 00081 void Update() {this->Read();}; 00083 00084 00085 protected: 00086 vtkImporter(); 00087 ~vtkImporter(); 00088 00089 virtual int ImportBegin () {return 1;}; 00090 virtual void ImportEnd () {}; 00091 virtual void ImportActors (vtkRenderer*) {}; 00092 virtual void ImportCameras (vtkRenderer*) {}; 00093 virtual void ImportLights (vtkRenderer*) {}; 00094 virtual void ImportProperties (vtkRenderer*) {}; 00095 00096 vtkRenderer *Renderer; 00097 vtkRenderWindow *RenderWindow; 00098 00099 virtual void ReadData(); 00100 00101 private: 00102 vtkImporter(const vtkImporter&); // Not implemented. 00103 void operator=(const vtkImporter&); // Not implemented. 00104 }; 00105 00106 #endif 00107 00108 00109 00110