VTK  9.2.6
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 =========================================================================*/
40 #ifndef vtkDataSetReader_h
41 #define vtkDataSetReader_h
42 
43 #include "vtkDataReader.h"
44 #include "vtkIOLegacyModule.h" // For export macro
45 
46 class vtkDataSet;
47 class vtkPolyData;
48 class vtkRectilinearGrid;
49 class vtkStructuredGrid;
52 
53 class VTKIOLEGACY_EXPORT vtkDataSetReader : public vtkDataReader
54 {
55 public:
56  static vtkDataSetReader* New();
58  void PrintSelf(ostream& os, vtkIndent indent) override;
59 
61 
64  vtkDataSet* GetOutput();
65  vtkDataSet* GetOutput(int idx);
67 
69 
76  vtkPolyData* GetPolyDataOutput();
77  vtkStructuredPoints* GetStructuredPointsOutput();
78  vtkStructuredGrid* GetStructuredGridOutput();
79  vtkUnstructuredGrid* GetUnstructuredGridOutput();
80  vtkRectilinearGrid* GetRectilinearGridOutput();
82 
87  virtual int ReadOutputType();
88 
92  int ReadMetaDataSimple(VTK_FILEPATH const std::string& fname, vtkInformation* metadata) override;
93 
97  int ReadMeshSimple(VTK_FILEPATH const std::string& fname, vtkDataObject* output) override;
98 
99 protected:
101  ~vtkDataSetReader() override;
102 
103  vtkDataObject* CreateOutput(vtkDataObject* currentOutput) override;
104 
105  int FillOutputPortInformation(int, vtkInformation*) override;
106 
107 private:
108  vtkDataSetReader(const vtkDataSetReader&) = delete;
109  void operator=(const vtkDataSetReader&) = delete;
110 };
111 
112 #endif
int ReadMeshSimple(VTK_FILEPATH const std::string &, vtkDataObject *) override
Overridden with default implementation of doing nothing so that subclasses only override what is need...
a dataset that is topologically regular with variable spacing in the three coordinate directions ...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:62
virtual vtkDataObject * CreateOutput(vtkDataObject *currentOutput)
This can be overridden by a subclass to create an output that is determined by the file being read...
class to read any type of vtk dataset
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:90
static vtkDataReader * New()
helper superclass for objects that read vtk data files
Definition: vtkDataReader.h:54
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:39
virtual int ReadMetaDataSimple(VTK_FILEPATH const std::string &, vtkInformation *)
A subclass can override this method to provide meta data specific to a particular file...
dataset represents arbitrary combinations of all possible cell types
#define VTK_FILEPATH
A subclass of ImageData.
topologically regular array of data
general representation of visualization data
Definition: vtkDataObject.h:65