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 =========================================================================*/ 00032 #ifndef __vtkIVExporter_h 00033 #define __vtkIVExporter_h 00034 00035 #include "vtkExporter.h" 00036 00037 class vtkLight; 00038 class vtkActor; 00039 class vtkPoints; 00040 class vtkDataArray; 00041 class vtkUnsignedCharArray; 00042 00043 class VTK_RENDERING_EXPORT vtkIVExporter : public vtkExporter 00044 { 00045 public: 00046 static vtkIVExporter *New(); 00047 vtkTypeRevisionMacro(vtkIVExporter,vtkExporter); 00048 void PrintSelf(ostream& os, vtkIndent indent); 00049 00051 00052 vtkSetStringMacro(FileName); 00053 vtkGetStringMacro(FileName); 00055 00056 protected: 00057 vtkIVExporter(); 00058 ~vtkIVExporter(); 00059 00060 void WriteData(); 00061 void WriteALight(vtkLight *aLight, FILE *fp); 00062 void WriteAnActor(vtkActor *anActor, FILE *fp); 00063 void WritePointData(vtkPoints *points, vtkDataArray *normals, 00064 vtkDataArray *tcoords, vtkUnsignedCharArray *colors, 00065 FILE *fp); 00066 char *FileName; 00067 private: 00068 vtkIVExporter(const vtkIVExporter&); // Not implemented. 00069 void operator=(const vtkIVExporter&); // Not implemented. 00070 }; 00071 00072 #endif 00073