00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkIVExporter.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 00014 00015 =========================================================================*/ 00044 #ifndef __vtkIVExporter_h 00045 #define __vtkIVExporter_h 00046 00047 #include "vtkExporter.h" 00048 00049 class vtkLight; 00050 class vtkActor; 00051 class vtkPoints; 00052 class vtkDataArray; 00053 class vtkUnsignedCharArray; 00054 00055 class VTK_RENDERING_EXPORT vtkIVExporter : public vtkExporter 00056 { 00057 public: 00058 static vtkIVExporter *New(); 00059 vtkTypeRevisionMacro(vtkIVExporter,vtkExporter); 00060 void PrintSelf(ostream& os, vtkIndent indent); 00061 00063 00064 vtkSetStringMacro(FileName); 00065 vtkGetStringMacro(FileName); 00067 00068 protected: 00069 vtkIVExporter(); 00070 ~vtkIVExporter(); 00071 00072 void WriteData(); 00073 void WriteALight(vtkLight *aLight, FILE *fp); 00074 void WriteAnActor(vtkActor *anActor, FILE *fp); 00075 void WritePointData(vtkPoints *points, vtkDataArray *normals, 00076 vtkDataArray *tcoords, vtkUnsignedCharArray *colors, 00077 FILE *fp); 00078 char *FileName; 00079 private: 00080 vtkIVExporter(const vtkIVExporter&); // Not implemented. 00081 void operator=(const vtkIVExporter&); // Not implemented. 00082 }; 00083 00084 #endif 00085