00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkDataSetReader.h,v $ 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 =========================================================================*/ 00039 #ifndef __vtkDataSetReader_h 00040 #define __vtkDataSetReader_h 00041 00042 #include "vtkDataReader.h" 00043 00044 class vtkDataSet; 00045 class vtkPolyData; 00046 class vtkRectilinearGrid; 00047 class vtkStructuredGrid; 00048 class vtkStructuredPoints; 00049 class vtkUnstructuredGrid; 00050 00051 class VTK_IO_EXPORT vtkDataSetReader : public vtkDataReader 00052 { 00053 public: 00054 static vtkDataSetReader *New(); 00055 vtkTypeRevisionMacro(vtkDataSetReader,vtkDataReader); 00056 void PrintSelf(ostream& os, vtkIndent indent); 00057 00059 00062 vtkDataSet *GetOutput(); 00063 vtkDataSet *GetOutput(int idx); 00065 00067 00072 vtkPolyData *GetPolyDataOutput(); 00073 vtkStructuredPoints *GetStructuredPointsOutput(); 00074 vtkStructuredGrid *GetStructuredGridOutput(); 00075 vtkUnstructuredGrid *GetUnstructuredGridOutput(); 00076 vtkRectilinearGrid *GetRectilinearGridOutput(); 00078 00080 void Update(); 00081 00084 virtual int ReadOutputType(); 00085 00086 protected: 00087 vtkDataSetReader(); 00088 ~vtkDataSetReader(); 00089 00090 void Execute(); 00091 vtkDataReader *Reader; 00092 00093 private: 00094 vtkDataSetReader(const vtkDataSetReader&); // Not implemented. 00095 void operator=(const vtkDataSetReader&); // Not implemented. 00096 }; 00097 00098 #endif 00099 00100