00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00037 #ifndef __vtkGenericDataObjectReader_h
00038 #define __vtkGenericDataObjectReader_h
00039
00040 #include "vtkDataReader.h"
00041
00042 class vtkDataObject;
00043 class vtkGraph;
00044 class vtkPolyData;
00045 class vtkRectilinearGrid;
00046 class vtkStructuredGrid;
00047 class vtkStructuredPoints;
00048 class vtkTable;
00049 class vtkTree;
00050 class vtkUnstructuredGrid;
00051
00052 class VTK_IO_EXPORT vtkGenericDataObjectReader : public vtkDataReader
00053 {
00054 public:
00055 static vtkGenericDataObjectReader *New();
00056 vtkTypeRevisionMacro(vtkGenericDataObjectReader,vtkDataReader);
00057 void PrintSelf(ostream& os, vtkIndent indent);
00058
00060
00061 vtkDataObject *GetOutput();
00062 vtkDataObject *GetOutput(int idx);
00064
00066
00071 vtkGraph *GetGraphOutput();
00072 vtkPolyData *GetPolyDataOutput();
00073 vtkRectilinearGrid *GetRectilinearGridOutput();
00074 vtkStructuredGrid *GetStructuredGridOutput();
00075 vtkStructuredPoints *GetStructuredPointsOutput();
00076 vtkTable *GetTableOutput();
00077 vtkTree *GetTreeOutput();
00078 vtkUnstructuredGrid *GetUnstructuredGridOutput();
00080
00083 virtual int ReadOutputType();
00084
00085 protected:
00086 vtkGenericDataObjectReader();
00087 ~vtkGenericDataObjectReader();
00088
00089 virtual int ProcessRequest(vtkInformation *, vtkInformationVector **,
00090 vtkInformationVector *);
00091 virtual int RequestData(vtkInformation *, vtkInformationVector **,
00092 vtkInformationVector *);
00093 virtual int RequestDataObject(vtkInformation *, vtkInformationVector **,
00094 vtkInformationVector *);
00095 virtual int FillOutputPortInformation(int, vtkInformation *);
00096 virtual int RequestInformation(vtkInformation *, vtkInformationVector **,
00097 vtkInformationVector *);
00098
00099 private:
00100 vtkGenericDataObjectReader(const vtkGenericDataObjectReader&);
00101 void operator=(const vtkGenericDataObjectReader&);
00102 };
00103
00104 #endif