VTK  9.0.1
vtkDataSetReader.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkDataSetReader.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 =========================================================================*/
34 #ifndef vtkDataSetReader_h
35 #define vtkDataSetReader_h
36 
37 #include "vtkDataReader.h"
38 #include "vtkIOLegacyModule.h" // For export macro
39 
40 class vtkDataSet;
41 class vtkPolyData;
42 class vtkRectilinearGrid;
43 class vtkStructuredGrid;
46 
47 class VTKIOLEGACY_EXPORT vtkDataSetReader : public vtkDataReader
48 {
49 public:
50  static vtkDataSetReader* New();
52  void PrintSelf(ostream& os, vtkIndent indent) override;
53 
55 
59  vtkDataSet* GetOutput(int idx);
61 
63 
76 
81  virtual int ReadOutputType();
82 
86  int ReadMetaDataSimple(const std::string& fname, vtkInformation* metadata) override;
87 
91  int ReadMeshSimple(const std::string& fname, vtkDataObject* output) override;
92 
93 protected:
95  ~vtkDataSetReader() override;
96 
97  vtkDataObject* CreateOutput(vtkDataObject* currentOutput) override;
98 
100 
101 private:
102  vtkDataSetReader(const vtkDataSetReader&) = delete;
103  void operator=(const vtkDataSetReader&) = delete;
104 };
105 
106 #endif
general representation of visualization data
Definition: vtkDataObject.h:60
helper superclass for objects that read vtk data files
Definition: vtkDataReader.h:55
class to read any type of vtk dataset
vtkDataSet * GetOutput(int idx)
vtkPolyData * GetPolyDataOutput()
Get the output as various concrete types.
~vtkDataSetReader() override
vtkStructuredPoints * GetStructuredPointsOutput()
static vtkDataSetReader * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int ReadMeshSimple(const std::string &fname, vtkDataObject *output) override
Actual reading happens here.
vtkUnstructuredGrid * GetUnstructuredGridOutput()
vtkDataSet * GetOutput()
Get the output of this filter.
virtual int ReadOutputType()
This method can be used to find out the type of output expected without needing to read the whole fil...
int FillOutputPortInformation(int, vtkInformation *) override
Fill the output port information objects for this algorithm.
vtkRectilinearGrid * GetRectilinearGridOutput()
vtkStructuredGrid * GetStructuredGridOutput()
vtkDataObject * CreateOutput(vtkDataObject *currentOutput) override
This can be overridden by a subclass to create an output that is determined by the file being read.
int ReadMetaDataSimple(const std::string &fname, vtkInformation *metadata) override
Read metadata from file.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:57
a simple class to control print indentation
Definition: vtkIndent.h:34
Store vtkAlgorithm input/output information.
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:85
a dataset that is topologically regular with variable spacing in the three coordinate directions
topologically regular array of data
A subclass of ImageData.
dataset represents arbitrary combinations of all possible cell types
@ string
Definition: vtkX3D.h:496