VTK  9.3.20240329
vtkEnSightGoldReader.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
31 #ifndef vtkEnSightGoldReader_h
32 #define vtkEnSightGoldReader_h
33 
34 #include "vtkEnSightReader.h"
35 #include "vtkIOEnSightModule.h" // For export macro
36 
37 VTK_ABI_NAMESPACE_BEGIN
39 
40 class VTKIOENSIGHT_EXPORT vtkEnSightGoldReader : public vtkEnSightReader
41 {
42 public:
45  void PrintSelf(ostream& os, vtkIndent indent) override;
46 
47 protected:
50 
54  int ReadGeometryFile(const char* fileName, int timeStep, vtkMultiBlockDataSet* output) override;
55 
61  const char* fileName, int timeStep, vtkMultiBlockDataSet* output) override;
62 
68  int ReadScalarsPerNode(const char* fileName, const char* description, int timeStep,
69  vtkMultiBlockDataSet* output, int measured = 0, int numberOfComponents = 1,
70  int component = 0) override;
71 
76  int ReadVectorsPerNode(const char* fileName, const char* description, int timeStep,
77  vtkMultiBlockDataSet* output, int measured = 0) override;
78 
83  int ReadAsymmetricTensorsPerNode(const char* fileName, const char* description, int timeStep,
84  vtkMultiBlockDataSet* output) override;
85 
90  int ReadTensorsPerNode(const char* fileName, const char* description, int timeStep,
91  vtkMultiBlockDataSet* output) override;
92 
98  int ReadScalarsPerElement(const char* fileName, const char* description, int timeStep,
99  vtkMultiBlockDataSet* output, int numberOfComponents = 1, int component = 0) override;
100 
105  int ReadVectorsPerElement(const char* fileName, const char* description, int timeStep,
106  vtkMultiBlockDataSet* output) override;
107 
112  int ReadAsymmetricTensorsPerElement(const char* fileName, const char* description, int timeStep,
113  vtkMultiBlockDataSet* output) override;
114 
119  int ReadTensorsPerElement(const char* fileName, const char* description, int timeStep,
120  vtkMultiBlockDataSet* output) override;
121 
128  int partId, char line[256], const char* name, vtkMultiBlockDataSet* output) override;
129 
135  int partId, char line[256], const char* name, vtkMultiBlockDataSet* output) override;
136 
142  int partId, char line[256], const char* name, vtkMultiBlockDataSet* output);
143 
149  int partId, char line[256], const char* name, vtkMultiBlockDataSet* output);
150 
153 
154  class FileOffsetMapInternal;
155  FileOffsetMapInternal* FileOffsets;
156 
157 private:
159  void operator=(const vtkEnSightGoldReader&) = delete;
160 
165  bool OpenVariableFile(const char* fname, const char* variableType);
166 
171  bool SkipToTimeStep(const char* fileName, int timeStep);
172 
173  class UndefPartialHelper;
174  friend class UndefPartialHelper;
175 };
176 
177 VTK_ABI_NAMESPACE_END
178 #endif
class to read EnSight Gold files
~vtkEnSightGoldReader() override
int ReadTensorsPerElement(const char *fileName, const char *description, int timeStep, vtkMultiBlockDataSet *output) override
Read tensors per element for this dataset.
int ReadTensorsPerNode(const char *fileName, const char *description, int timeStep, vtkMultiBlockDataSet *output) override
Read tensors per node for this dataset.
int CreateUnstructuredGridOutput(int partId, char line[256], const char *name, vtkMultiBlockDataSet *output) override
Read an unstructured part (partId) from the geometry file and create a vtkUnstructuredGrid output.
int ReadAsymmetricTensorsPerNode(const char *fileName, const char *description, int timeStep, vtkMultiBlockDataSet *output) override
Read asimmetric tensors per node for this dataset.
int ReadScalarsPerElement(const char *fileName, const char *description, int timeStep, vtkMultiBlockDataSet *output, int numberOfComponents=1, int component=0) override
Read scalars per element for this dataset.
int ReadVectorsPerNode(const char *fileName, const char *description, int timeStep, vtkMultiBlockDataSet *output, int measured=0) override
Read vectors per node for this dataset.
int ReadScalarsPerNode(const char *fileName, const char *description, int timeStep, vtkMultiBlockDataSet *output, int measured=0, int numberOfComponents=1, int component=0) override
Read scalars per node for this dataset.
int ReadMeasuredGeometryFile(const char *fileName, int timeStep, vtkMultiBlockDataSet *output) override
Read the measured geometry file.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
FileOffsetMapInternal * FileOffsets
int CreateImageDataOutput(int partId, char line[256], const char *name, vtkMultiBlockDataSet *output)
Read a structured part from the geometry file and create a vtkImageData output.
static vtkEnSightGoldReader * New()
int ReadGeometryFile(const char *fileName, int timeStep, vtkMultiBlockDataSet *output) override
Read the geometry file.
int CreateStructuredGridOutput(int partId, char line[256], const char *name, vtkMultiBlockDataSet *output) override
Read a structured part from the geometry file and create a vtkStructuredGrid output.
int CreateRectilinearGridOutput(int partId, char line[256], const char *name, vtkMultiBlockDataSet *output)
Read a structured part from the geometry file and create a vtkRectilinearGrid output.
int ReadVectorsPerElement(const char *fileName, const char *description, int timeStep, vtkMultiBlockDataSet *output) override
Read vectors per element for this dataset.
int ReadAsymmetricTensorsPerElement(const char *fileName, const char *description, int timeStep, vtkMultiBlockDataSet *output) override
Read asymmetric tensors per element for this dataset.
superclass for EnSight file readers
a simple class to control print indentation
Definition: vtkIndent.h:108
Composite dataset that organizes datasets into blocks.
@ component
Definition: vtkX3D.h:175
@ description
Definition: vtkX3D.h:322
@ name
Definition: vtkX3D.h:219