VTK
vtkSimpleReader.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkSimpleReader.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 =========================================================================*/
21 #ifndef vtkSimpleReader_h
22 #define vtkSimpleReader_h
23 
24 #include "vtkCommonExecutionModelModule.h" // For export macro
25 #include "vtkReaderAlgorithm.h"
26 
27 #include <string> // needed for std::string in the interface
28 
29 struct vtkSimpleReaderInternal;
30 
31 class VTKCOMMONEXECUTIONMODEL_EXPORT vtkSimpleReader : public vtkReaderAlgorithm
32 {
33 public:
35  void PrintSelf(ostream& os, vtkIndent indent) override;
36 
43  void AddFileName(const char* fname);
44 
48  void ClearFileNames();
49 
53  int GetNumberOfFileNames() const;
54 
58  const char* GetFileName(int i) const;
59 
64  const char* GetCurrentFileName() const;
65 
67 
73  int timestep, vtkInformation* metadata) override;
74  int ReadMetaData(vtkInformation* metadata) override;
75  int ReadMesh(
76  int piece, int npieces, int nghosts, int timestep,
77  vtkDataObject* output) override;
78  int ReadPoints(
79  int piece, int npieces, int nghosts, int timestep,
80  vtkDataObject* output) override;
81  int ReadArrays(
82  int piece, int npieces, int nghosts, int timestep,
83  vtkDataObject* output) override;
85 
94  virtual double GetTimeValue(const std::string& fname);
95 
101  virtual int ReadMetaDataSimple(const std::string& /*fname*/,
102  vtkInformation* /*metadata*/)
103  {
104  return 1;
105  }
106 
113  virtual int ReadMeshSimple(const std::string& fname,
114  vtkDataObject* output) = 0;
115 
122  virtual int ReadPointsSimple(const std::string& fname,
123  vtkDataObject* output) = 0;
124 
131  virtual int ReadArraysSimple(const std::string& fname,
132  vtkDataObject* output) = 0;
133 
134 protected:
135  vtkSimpleReader();
136  ~vtkSimpleReader() override;
137 
139 
140 
143 
144 private:
145  vtkSimpleReader(const vtkSimpleReader&) = delete;
146  void operator=(const vtkSimpleReader&) = delete;
147 
148  vtkSimpleReaderInternal* Internal;
149 };
150 
151 #endif
virtual int ReadPoints(int piece, int npieces, int nghosts, int timestep, vtkDataObject *output)=0
Read the points.
virtual vtkExecutive * CreateDefaultExecutive()
Create a default executive.
Store vtkAlgorithm input/output information.
Superclass for all pipeline executives in VTK.
Definition: vtkExecutive.h:49
a simple class to control print indentation
Definition: vtkIndent.h:39
Superclass for algorithms that are not time or parallel aware.
virtual int ReadArrays(int piece, int npieces, int nghosts, int timestep, vtkDataObject *output)=0
Read all the arrays (point, cell, field etc.).
virtual int ReadTimeDependentMetaData(int, vtkInformation *)
Provide meta-data for the pipeline.
virtual int ReadMetaDataSimple(const std::string &, vtkInformation *)
A subclass can override this method to provide meta data specific to a particular file...
virtual int ReadMesh(int piece, int npieces, int nghosts, int timestep, vtkDataObject *output)=0
Read the mesh (connectivity) for a given set of data partitioning, number of ghost levels and time st...
virtual int ReadMetaData(vtkInformation *metadata)=0
Provide meta-data for the pipeline.
general representation of visualization data
Definition: vtkDataObject.h:64
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Superclass for readers that implement a simplified API.