VTK  9.3.1
vtkCompositeDataReader.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 vtkCompositeDataReader_h
17 #define vtkCompositeDataReader_h
18 
19 #include "vtkDataReader.h"
20 #include "vtkIOLegacyModule.h" // For export macro
21 
22 VTK_ABI_NAMESPACE_BEGIN
28 class vtkOverlappingAMR;
31 
32 class VTKIOLEGACY_EXPORT vtkCompositeDataReader : public vtkDataReader
33 {
34 public:
35  static vtkCompositeDataReader* New();
37  void PrintSelf(ostream& os, vtkIndent indent) override;
38 
40 
43  vtkCompositeDataSet* GetOutput();
44  vtkCompositeDataSet* GetOutput(int idx);
45  void SetOutput(vtkCompositeDataSet* output);
47 
51  int ReadMeshSimple(VTK_FILEPATH const std::string& fname, vtkDataObject* output) override;
52 
53 protected:
55  ~vtkCompositeDataReader() override;
56 
57  vtkDataObject* CreateOutput(vtkDataObject* currentOutput) override;
58 
59  int FillOutputPortInformation(int, vtkInformation*) override;
60 
64  int ReadOutputType();
65 
66  bool ReadCompositeData(vtkMultiPieceDataSet*);
67  bool ReadCompositeData(vtkMultiBlockDataSet*);
68  bool ReadCompositeData(vtkHierarchicalBoxDataSet*);
69  bool ReadCompositeData(vtkOverlappingAMR*);
70  bool ReadCompositeData(vtkPartitionedDataSet*);
71  bool ReadCompositeData(vtkPartitionedDataSetCollection*);
72  bool ReadCompositeData(vtkNonOverlappingAMR*);
73  vtkDataObject* ReadChild();
74 
75 private:
77  void operator=(const vtkCompositeDataReader&) = delete;
78 };
79 
80 VTK_ABI_NAMESPACE_END
81 #endif
composite dataset to encapsulates a dataset consisting of partitions.
int ReadMeshSimple(VTK_FILEPATH const std::string &, vtkDataObject *) override
Overridden with default implementation of doing nothing so that subclasses only override what is need...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Store vtkAlgorithm input/output information.
virtual vtkDataObject * CreateOutput(vtkDataObject *currentOutput)
This can be overridden by a subclass to create an output that is determined by the file being read...
Backwards compatibility class.
read vtkCompositeDataSet data file.
static vtkDataReader * New()
A concrete instance of vtkUniformGridAMR to store uniform grids at different levels of resolution tha...
helper superclass for objects that read vtk data files
Definition: vtkDataReader.h:43
abstract superclass for composite (multi-block or AMR) datasets
virtual int FillOutputPortInformation(int port, vtkInformation *info)
Fill the output port information objects for this algorithm.
a simple class to control print indentation
Definition: vtkIndent.h:28
composite dataset to encapsulates pieces of dataset.
#define VTK_FILEPATH
Composite dataset that organizes datasets into blocks.
hierarchical dataset of vtkUniformGrids
general representation of visualization data
Definition: vtkDataObject.h:54
Composite dataset that groups datasets as a collection.