VTK
|
00001 /*========================================================================= 00002 00003 Program: ParaView 00004 Module: vtkXMLMultiBlockDataReader.h 00005 00006 Copyright (c) Kitware, Inc. 00007 All rights reserved. 00008 See Copyright.txt or http://www.paraview.org/HTML/Copyright.html 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 =========================================================================*/ 00031 #ifndef __vtkXMLMultiBlockDataReader_h 00032 #define __vtkXMLMultiBlockDataReader_h 00033 00034 #include "vtkIOXMLModule.h" // For export macro 00035 #include "vtkXMLCompositeDataReader.h" 00036 00037 class vtkMultiBlockDataSet; 00038 00039 class VTKIOXML_EXPORT vtkXMLMultiBlockDataReader : public vtkXMLCompositeDataReader 00040 { 00041 public: 00042 static vtkXMLMultiBlockDataReader* New(); 00043 vtkTypeMacro(vtkXMLMultiBlockDataReader,vtkXMLCompositeDataReader); 00044 void PrintSelf(ostream& os, vtkIndent indent); 00045 00046 protected: 00047 vtkXMLMultiBlockDataReader(); 00048 ~vtkXMLMultiBlockDataReader(); 00049 00050 // Read the XML element for the subtree of a the composite dataset. 00051 // dataSetIndex is used to rank the leaf nodes in an inorder traversal. 00052 virtual void ReadComposite(vtkXMLDataElement* element, 00053 vtkCompositeDataSet* composite, const char* filePath, 00054 unsigned int &dataSetIndex); 00055 00056 // Reads file version < 1.0. 00057 virtual void ReadVersion0(vtkXMLDataElement* element, 00058 vtkCompositeDataSet* composite, const char* filePath, 00059 unsigned int &dataSetIndex); 00060 00061 // Get the name of the data set being read. 00062 virtual const char* GetDataSetName(); 00063 00064 virtual int FillOutputPortInformation(int, vtkInformation* info); 00065 00066 virtual int RequestInformation(vtkInformation*, 00067 vtkInformationVector**, 00068 vtkInformationVector*); 00069 00070 virtual int FillMetaData(vtkCompositeDataSet* metadata, 00071 vtkXMLDataElement* element, 00072 unsigned int& dataSetIndex); 00073 00074 private: 00075 vtkXMLMultiBlockDataReader(const vtkXMLMultiBlockDataReader&); // Not implemented. 00076 void operator=(const vtkXMLMultiBlockDataReader&); // Not implemented. 00077 }; 00078 00079 #endif