VTK  9.2.6
vtkPDataSetReader.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPDataSetReader.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
26 #ifndef vtkPDataSetReader_h
27 #define vtkPDataSetReader_h
28 
29 #include "vtkDataSetAlgorithm.h"
30 #include "vtkIOParallelModule.h" // For export macro
31 
32 class vtkDataSet;
33 
34 class VTKIOPARALLEL_EXPORT vtkPDataSetReader : public vtkDataSetAlgorithm
35 {
36 public:
37  void PrintSelf(ostream& os, vtkIndent indent) override;
39  static vtkPDataSetReader* New();
40 
42 
45  vtkSetFilePathMacro(FileName);
46  vtkGetFilePathMacro(FileName);
48 
50 
54  vtkGetMacro(DataType, int);
56 
60  int CanReadFile(VTK_FILEPATH const char* filename);
61 
62 protected:
64  ~vtkPDataSetReader() override;
65 
66  int RequestDataObject(vtkInformation* request, vtkInformationVector** inputVector,
67  vtkInformationVector* outputVector) override;
68  void ReadPVTKFileInformation(istream* file, vtkInformation* request,
69  vtkInformationVector** inputVector, vtkInformationVector* outputVector);
70  void ReadVTKFileInformation(vtkInformation* request, vtkInformationVector** inputVector,
71  vtkInformationVector* outputVector);
72 
74 
76  int PolyDataExecute(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
77  int UnstructuredGridExecute(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
78  int ImageDataExecute(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
79  int StructuredGridExecute(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
80 
81  void CoverExtent(int ext[6], int* pieceMask);
82 
83  vtkDataSet* CheckOutput();
84  void SetNumberOfPieces(int num);
85 
86  istream* OpenFile(const char*);
87 
88  int ReadXML(istream* file, char** block, char** param, char** value);
91  char* FileName;
92  int DataType;
95  int** PieceExtents;
96 
97 private:
98  vtkPDataSetReader(const vtkPDataSetReader&) = delete;
99  void operator=(const vtkPDataSetReader&) = delete;
100 };
101 
102 #endif
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:62
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a simple class to control print indentation
Definition: vtkIndent.h:39
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks the algorithm to do its work.
#define VTK_FILEPATH
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks for Information.
Store zero or more vtkInformation instances.
Superclass for algorithms that produce output of the same type as input.
virtual int RequestDataObject(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called within ProcessRequest when a request asks the algorithm to create empty output data ob...
Manages reading pieces of a data set.
static vtkDataSetAlgorithm * New()