VTK  9.3.20240416
vtkXMLPolyDataReader.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
132 #ifndef vtkXMLPolyDataReader_h
133 #define vtkXMLPolyDataReader_h
134 
135 #include "vtkIOXMLModule.h" // For export macro
137 
138 VTK_ABI_NAMESPACE_BEGIN
139 class vtkPolyData;
140 
142 {
143 public:
145  void PrintSelf(ostream& os, vtkIndent indent) override;
147 
149 
155 
157 
165 
166 protected:
169 
170  const char* GetDataSetName() override;
171  void GetOutputUpdateExtent(int& piece, int& numberOfPieces, int& ghostLevel) override;
172  void SetupOutputTotals() override;
173  void SetupNextPiece() override;
174  void SetupPieces(int numPieces) override;
175  void DestroyPieces() override;
176 
177  void SetupOutputData() override;
178  int ReadPiece(vtkXMLDataElement* ePiece) override;
179  int ReadPieceData() override;
180 
181  // Read a data array whose tuples coorrespond to cells.
183 
184  // Get the number of cells in the given piece. Valid after
185  // UpdateInformation.
186  vtkIdType GetNumberOfCellsInPiece(int piece) override;
187 
189 
190  // The size of the UpdatePiece.
199 
200  // The cell elements for each piece.
209 
210  // For TimeStep support
212  unsigned long VertsOffset;
214  unsigned long LinesOffset;
216  unsigned long StripsOffset;
218  unsigned long PolysOffset;
219 
220 private:
222  void operator=(const vtkXMLPolyDataReader&) = delete;
223 };
224 
225 VTK_ABI_NAMESPACE_END
226 #endif
Abstract superclass for all arrays.
a simple class to control print indentation
Definition: vtkIndent.h:108
Store vtkAlgorithm input/output information.
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:181
Represents an XML element and those nested inside.
Read VTK XML PolyData files.
void SetupNextPiece() override
vtkXMLDataElement ** LineElements
void SetupOutputTotals() override
virtual vtkIdType GetNumberOfVerts()
Get the number of verts/lines/strips/polys in the output.
static vtkXMLPolyDataReader * New()
const char * GetDataSetName() override
Get the name of the data set being read.
void SetupPieces(int numPieces) override
void DestroyPieces() override
virtual vtkIdType GetNumberOfStrips()
Get the number of verts/lines/strips/polys in the output.
virtual vtkIdType GetNumberOfLines()
Get the number of verts/lines/strips/polys in the output.
void GetOutputUpdateExtent(int &piece, int &numberOfPieces, int &ghostLevel) override
vtkPolyData * GetOutput()
Get the reader's output.
vtkPolyData * GetOutput(int idx)
Get the reader's output.
vtkXMLDataElement ** StripElements
vtkXMLDataElement ** PolyElements
virtual vtkIdType GetNumberOfPolys()
Get the number of verts/lines/strips/polys in the output.
vtkXMLDataElement ** VertElements
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int ReadArrayForCells(vtkXMLDataElement *da, vtkAbstractArray *outArray) override
int ReadPieceData() override
~vtkXMLPolyDataReader() override
int FillOutputPortInformation(int, vtkInformation *) override
Fill the output port information objects for this algorithm.
int ReadPiece(vtkXMLDataElement *ePiece) override
void SetupOutputData() override
Setup the output's data with allocation.
vtkIdType GetNumberOfCellsInPiece(int piece) override
Superclass for unstructured data XML readers.
int vtkIdType
Definition: vtkType.h:315