VTK  9.0.1
vtkCompositeDataReader.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkCompositeDataReader.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 =========================================================================*/
25 #ifndef vtkCompositeDataReader_h
26 #define vtkCompositeDataReader_h
27 
28 #include "vtkDataReader.h"
29 #include "vtkIOLegacyModule.h" // For export macro
30 
36 class vtkOverlappingAMR;
39 
40 class VTKIOLEGACY_EXPORT vtkCompositeDataReader : public vtkDataReader
41 {
42 public:
43  static vtkCompositeDataReader* New();
45  void PrintSelf(ostream& os, vtkIndent indent) override;
46 
48 
51  vtkCompositeDataSet* GetOutput();
52  vtkCompositeDataSet* GetOutput(int idx);
53  void SetOutput(vtkCompositeDataSet* output);
55 
59  int ReadMeshSimple(const std::string& fname, vtkDataObject* output) override;
60 
61 protected:
63  ~vtkCompositeDataReader() override;
64 
65  vtkDataObject* CreateOutput(vtkDataObject* currentOutput) override;
66 
67  int FillOutputPortInformation(int, vtkInformation*) override;
68 
72  int ReadOutputType();
73 
74  bool ReadCompositeData(vtkMultiPieceDataSet*);
75  bool ReadCompositeData(vtkMultiBlockDataSet*);
76  bool ReadCompositeData(vtkHierarchicalBoxDataSet*);
77  bool ReadCompositeData(vtkOverlappingAMR*);
78  bool ReadCompositeData(vtkPartitionedDataSet*);
79  bool ReadCompositeData(vtkPartitionedDataSetCollection*);
80  bool ReadCompositeData(vtkNonOverlappingAMR*);
81  vtkDataObject* ReadChild();
82 
83 private:
85  void operator=(const vtkCompositeDataReader&) = delete;
86 };
87 
88 #endif
composite dataset to encapsulates a dataset consisting of partitions.
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.
int ReadMeshSimple(const std::string &, vtkDataObject *) override
Overridden with default implementation of doing nothing so that subclasses only override what is need...
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:54
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:33
composite dataset to encapsulates pieces of dataset.
Composite dataset that organizes datasets into blocks.
hierarchical dataset of vtkUniformGrids
general representation of visualization data
Definition: vtkDataObject.h:59
Composite dataset that groups datasets as a collection.