VTK  9.3.20240328
vtkXMLPDataObjectReader.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
11 #ifndef vtkXMLPDataObjectReader_h
12 #define vtkXMLPDataObjectReader_h
13 
14 #include "vtkIOXMLModule.h" // For export macro
15 #include "vtkXMLReader.h"
16 
17 VTK_ABI_NAMESPACE_BEGIN
18 class VTKIOXML_EXPORT vtkXMLPDataObjectReader : public vtkXMLReader
19 {
20 public:
22  void PrintSelf(ostream& os, vtkIndent indent) override;
23 
27  vtkGetMacro(NumberOfPieces, int);
28 
29 protected:
32 
36  virtual void DestroyPieces();
37 
41  void SetupOutputData() override;
42 
46  virtual void SetupPieces(int numPieces);
47 
51  int ReadXMLInformation() override;
52 
56  virtual int CanReadPiece(int index) = 0;
57 
61  int ReadPiece(vtkXMLDataElement* ePiece, int index);
62 
66  virtual int ReadPiece(vtkXMLDataElement* ePiece) = 0;
67 
69 
72  char* CreatePieceFileName(const char* fileName);
73  void SplitFileName();
75 
77 
80  static void PieceProgressCallbackFunction(vtkObject*, unsigned long, void*, void*);
81  virtual void PieceProgressCallback() = 0;
83 
88 
92  int Piece;
93 
97  char* PathName;
98 
100 
106 
108 
109 private:
111  void operator=(const vtkXMLPDataObjectReader&) = delete;
112 };
113 
114 VTK_ABI_NAMESPACE_END
115 #endif
supports function callbacks
a simple class to control print indentation
Definition: vtkIndent.h:108
abstract base class for most VTK objects
Definition: vtkObject.h:161
Represents an XML element and those nested inside.
Superclass for PVTK XML file readers.
virtual void DestroyPieces()
Delete all piece readers and related information.
int ReadXMLInformation() override
Pipeline execute information driver.
void SetupOutputData() override
Initialize the output data.
virtual int ReadPiece(vtkXMLDataElement *ePiece)=0
Setup the current piece reader.
virtual void PieceProgressCallback()=0
Callback registered with the PieceProgressObserver.
~vtkXMLPDataObjectReader() override
int Piece
The piece currently being read.
int ReadPiece(vtkXMLDataElement *ePiece, int index)
Setup the piece reader at the given index.
char * CreatePieceFileName(const char *fileName)
Methods for creating a filename for each piece in the dataset.
virtual int CanReadPiece(int index)=0
Whether or not the current reader can read the current piece.
static void PieceProgressCallbackFunction(vtkObject *, unsigned long, void *, void *)
Callback registered with the PieceProgressObserver.
int NumberOfPieces
Pieces from the input summary file.
void SplitFileName()
Methods for creating a filename for each piece in the dataset.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int * CanReadPieceFlag
Information per-piece.
vtkCallbackCommand * PieceProgressObserver
vtkXMLDataElement ** PieceElements
Information per-piece.
virtual void SetupPieces(int numPieces)
Setup the number of pieces to be read and allocate space accordingly.
char * PathName
The path to the input file without the file name.
Superclass for VTK's XML format readers.
Definition: vtkXMLReader.h:59
@ index
Definition: vtkX3D.h:246