00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00028 #ifndef __vtkXMLGenericDataObjectReader_h
00029 #define __vtkXMLGenericDataObjectReader_h
00030
00031 #include "vtkXMLDataReader.h"
00032
00033 class vtkHierarchicalBoxDataSet;
00034 class vtkHyperOctree;
00035 class vtkMultiBlockDataSet;
00036 class vtkImageData;
00037 class vtkPolyData;
00038 class vtkRectilinearGrid;
00039 class vtkStructuredGrid;
00040 class vtkUnstructuredGrid;
00041
00042 class VTK_IO_EXPORT vtkXMLGenericDataObjectReader : public vtkXMLDataReader
00043 {
00044 public:
00045 vtkTypeMacro(vtkXMLGenericDataObjectReader,vtkXMLDataReader);
00046 void PrintSelf(ostream& os, vtkIndent indent);
00047 static vtkXMLGenericDataObjectReader *New();
00048
00050
00051 vtkDataObject *GetOutput();
00052 vtkDataObject *GetOutput(int idx);
00054
00056
00061 vtkHierarchicalBoxDataSet *GetHierarchicalBoxDataSetOutput();
00062 vtkHyperOctree *GetHyperOctreeOutput();
00063 vtkImageData *GetImageDataOutput();
00064 vtkMultiBlockDataSet *GetMultiBlockDataSetOutput();
00065 vtkPolyData *GetPolyDataOutput();
00066 vtkRectilinearGrid *GetRectilinearGridOutput();
00067 vtkStructuredGrid *GetStructuredGridOutput();
00068 vtkUnstructuredGrid *GetUnstructuredGridOutput();
00070
00072 vtkIdType GetNumberOfPoints();
00073
00075 vtkIdType GetNumberOfCells();
00076
00078 void SetupEmptyOutput();
00079
00082 virtual int ReadOutputType(const char *name, bool ¶llel);
00083
00084 protected:
00085 vtkXMLGenericDataObjectReader();
00086 ~vtkXMLGenericDataObjectReader();
00087
00089 const char* GetDataSetName();
00090
00091
00092 virtual int RequestDataObject(vtkInformation *, vtkInformationVector **,
00093 vtkInformationVector *);
00094 virtual int RequestInformation(vtkInformation *, vtkInformationVector **,
00095 vtkInformationVector *);
00096 virtual int RequestUpdateExtent(vtkInformation *request,
00097 vtkInformationVector **inputVector,
00098 vtkInformationVector *outputVector);
00099
00100 virtual int RequestData(vtkInformation *, vtkInformationVector **,
00101 vtkInformationVector *);
00102 virtual int FillOutputPortInformation(int, vtkInformation *);
00103
00104 vtkXMLReader *Reader;
00105
00106 private:
00107 vtkXMLGenericDataObjectReader(const vtkXMLGenericDataObjectReader&);
00108 void operator=(const vtkXMLGenericDataObjectReader&);
00109 };
00110
00111 #endif