VTK  9.1.0
vtkGenericDataObjectReader.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkGenericDataObjectReader.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=========================================================================*/
44#ifndef vtkGenericDataObjectReader_h
45#define vtkGenericDataObjectReader_h
46
47#include "vtkDataReader.h"
48#include "vtkIOLegacyModule.h" // For export macro
49
50class vtkDataObject;
51class vtkGraph;
52class vtkMolecule;
53class vtkPolyData;
57class vtkTable;
58class vtkTree;
60
61class VTKIOLEGACY_EXPORT vtkGenericDataObjectReader : public vtkDataReader
62{
63public:
66 void PrintSelf(ostream& os, vtkIndent indent) override;
67
69
75
77
94
99 virtual int ReadOutputType();
100
104 int ReadMetaDataSimple(VTK_FILEPATH const std::string& fname, vtkInformation* metadata) override;
105
109 int ReadMeshSimple(VTK_FILEPATH const std::string& fname, vtkDataObject* output) override;
110
111protected:
114
115 vtkDataObject* CreateOutput(vtkDataObject* currentOutput) override;
116
118
119private:
121 void operator=(const vtkGenericDataObjectReader&) = delete;
122
123 template <typename ReaderT, typename DataT>
124 void ReadData(const char* fname, const char* dataClass, vtkDataObject* output);
125
126 vtkSetStringMacro(Header);
127};
128
129#endif
general representation of visualization data
Definition: vtkDataObject.h:69
helper superclass for objects that read vtk data files
Definition: vtkDataReader.h:55
class to read any type of vtk data object
vtkDataObject * CreateOutput(vtkDataObject *currentOutput) override
This can be overridden by a subclass to create an output that is determined by the file being read.
vtkPolyData * GetPolyDataOutput()
Get the output as various concrete types.
virtual int ReadOutputType()
This method can be used to find out the type of output expected without needing to read the whole fil...
static vtkGenericDataObjectReader * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int ReadMeshSimple(VTK_FILEPATH const std::string &fname, vtkDataObject *output) override
Actual reading happens here.
vtkStructuredPoints * GetStructuredPointsOutput()
Get the output as various concrete types.
int ReadMetaDataSimple(VTK_FILEPATH const std::string &fname, vtkInformation *metadata) override
Read metadata from file.
vtkDataObject * GetOutput(int idx)
Get the output of this filter.
vtkGraph * GetGraphOutput()
Get the output as various concrete types.
vtkStructuredGrid * GetStructuredGridOutput()
Get the output as various concrete types.
int FillOutputPortInformation(int, vtkInformation *) override
Fill the output port information objects for this algorithm.
vtkTable * GetTableOutput()
Get the output as various concrete types.
~vtkGenericDataObjectReader() override
vtkTree * GetTreeOutput()
Get the output as various concrete types.
vtkRectilinearGrid * GetRectilinearGridOutput()
Get the output as various concrete types.
vtkDataObject * GetOutput()
Get the output of this filter.
vtkMolecule * GetMoleculeOutput()
Get the output as various concrete types.
vtkUnstructuredGrid * GetUnstructuredGridOutput()
Get the output as various concrete types.
Base class for graph data types.
Definition: vtkGraph.h:299
a simple class to control print indentation
Definition: vtkIndent.h:43
Store vtkAlgorithm input/output information.
class describing a molecule
Definition: vtkMolecule.h:92
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:95
a dataset that is topologically regular with variable spacing in the three coordinate directions
topologically regular array of data
A subclass of ImageData.
A table, which contains similar-typed columns of data.
Definition: vtkTable.h:72
A rooted tree data structure.
Definition: vtkTree.h:64
dataset represents arbitrary combinations of all possible cell types
@ string
Definition: vtkX3D.h:496
#define VTK_FILEPATH