VTK  9.3.0
vtkXMLPHyperTreeGridReader.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
16 #ifndef vtkXMLPHyperTreeGridReader_h
17 #define vtkXMLPHyperTreeGridReader_h
18 
19 #include "vtkIOXMLModule.h" // For export macro
21 
22 VTK_ABI_NAMESPACE_BEGIN
23 class vtkHyperTreeCursor;
24 class vtkHyperTreeGrid;
27 
29 {
30 public:
32  void PrintSelf(ostream& os, vtkIndent indent) override;
34 
36 
42 
47  void CopyOutputInformation(vtkInformation* outInfo, int port) override;
48 
49 protected:
52 
56  const char* GetDataSetName() override;
57 
63 
66 
71  void GetOutputUpdateExtent(int& piece, int& numberOfPieces);
72 
76  void SetupEmptyOutput() override;
77 
81  void SetupOutputData() override;
82 
86  void SetupOutputInformation(vtkInformation* outInfo) override;
87 
92 
97 
101  void SetupPieces(int numPieces) override;
102 
106  void SetupUpdateExtent(int piece, int numberOfPieces);
107 
111  void ReadXMLData() override;
112 
116  int CanReadPiece(int index) override;
117 
121  int ReadPrimaryElement(vtkXMLDataElement* ePrimary) override;
122 
126  void DestroyPieces() override;
127 
129 
133  int ReadPiece(vtkXMLDataElement* ePiece) override;
134 
142 
147 
149 
151  vtkInformationVector* outputVector) override;
152 
156  void PieceProgressCallback() override;
157 
163 
168  int EndPiece;
169 
172 
174 
175 private:
177  void operator=(const vtkXMLPHyperTreeGridReader&) = delete;
178 };
179 
180 VTK_ABI_NAMESPACE_END
181 #endif
Objects for depth-first traversal HyperTrees.
Objects for traversal a HyperTreeGrid.
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
a simple class to control print indentation
Definition: vtkIndent.h:29
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Represents an XML element and those nested inside.
Read VTK XML HyperTreeGrid files.
Superclass for PVTK XML file readers.
int ReadPiece(vtkXMLDataElement *ePiece, int index)
Setup the piece reader at the given index.
Read PVTK XML HyperTreeGrid files.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkHyperTreeGrid * GetPieceInputAsHyperTreeGrid(int piece)
static vtkXMLPHyperTreeGridReader * New()
void SetupOutputData() override
Initialize current output data.
int CanReadPiece(int index) override
Whether or not the current reader can read the current piece.
vtkHyperTreeGrid * GetOutput(int idx)
Get the reader's output.
void CopyOutputInformation(vtkInformation *outInfo, int port) override
For the specified port, copy the information this reader sets up in SetupOutputInformation to outInfo...
int FillOutputPortInformation(int, vtkInformation *) override
Fill the output port information objects for this algorithm.
void GetOutputUpdateExtent(int &piece, int &numberOfPieces)
Get the current piece index and the total number of pieces in the dataset Here let's consider a piece...
vtkIdType GetNumberOfPointsInPiece(int piece)
void SetupOutputInformation(vtkInformation *outInfo) override
Setup the output's information.
void SetupEmptyOutput() override
Initialize current output.
vtkIdType GetNumberOfPoints()
Get the number of vertices available in the input.
void RecursivelyProcessTree(vtkHyperTreeGridNonOrientedCursor *inCursor, vtkHyperTreeGridNonOrientedCursor *outCursor)
void ReadXMLData() override
Setup the readers and then read the input data.
void SetupPieces(int numPieces) override
Setup the number of pieces to be read.
int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
void PieceProgressCallback() override
Callback registered with the PieceProgressObserver.
void SetupOutputTotals()
Initialize the number of vertices from all the pieces.
int StartPiece
The range of pieces from the file that will form the UpdatePiece.
void SetupUpdateExtent(int piece, int numberOfPieces)
Setup the extent for the parallel reader and the piece readers.
~vtkXMLPHyperTreeGridReader() override
vtkHyperTreeGrid * GetOutputAsHyperTreeGrid()
vtkXMLHyperTreeGridReader * CreatePieceReader()
Create a reader according to the data to read.
int ReadPrimaryElement(vtkXMLDataElement *ePrimary) override
Pipeline execute data driver.
void DestroyPieces() override
Delete all piece readers and related information.
int ReadPiece(vtkXMLDataElement *ePiece) override
Setup the current piece reader.
vtkHyperTreeGrid * GetOutput()
Get the reader's output.
vtkXMLHyperTreeGridReader ** PieceReaders
const char * GetDataSetName() override
Return the type of the dataset being read.
int ReadPieceData(int index)
Actually read the current piece data.
@ port
Definition: vtkX3D.h:447
@ index
Definition: vtkX3D.h:246
int vtkIdType
Definition: vtkType.h:315