19#ifndef vtkCGNSReader_h
20#define vtkCGNSReader_h
22#include "vtkIOCGNSReaderModule.h"
30VTK_ABI_NAMESPACE_BEGIN
35VTK_ABI_NAMESPACE_BEGIN
65 vtkGetMacro(DataLocation,
int);
178 vtkSetMacro(DoublePrecisionMesh,
int);
179 vtkGetMacro(DoublePrecisionMesh,
int);
180 vtkBooleanMacro(DoublePrecisionMesh,
int);
188 vtkSetMacro(LoadBndPatch,
bool);
189 vtkGetMacro(LoadBndPatch,
bool);
190 vtkBooleanMacro(LoadBndPatch,
bool);
198 vtkSetMacro(LoadMesh,
bool);
199 vtkGetMacro(LoadMesh,
bool);
200 vtkBooleanMacro(LoadMesh,
bool);
208 vtkSetMacro(Use3DVector,
bool);
209 vtkGetMacro(Use3DVector,
bool);
210 vtkBooleanMacro(Use3DVector,
bool);
222 vtkSetMacro(CreateEachSolutionAsBlock,
int);
223 vtkGetMacro(CreateEachSolutionAsBlock,
int);
224 vtkBooleanMacro(CreateEachSolutionAsBlock,
int);
241 vtkSetMacro(IgnoreFlowSolutionPointers,
bool);
242 vtkGetMacro(IgnoreFlowSolutionPointers,
bool);
243 vtkBooleanMacro(IgnoreFlowSolutionPointers,
bool);
253 vtkSetMacro(UseUnsteadyPattern,
bool);
254 vtkGetMacro(UseUnsteadyPattern,
bool);
255 vtkBooleanMacro(UseUnsteadyPattern,
bool);
264 vtkSetMacro(UnsteadySolutionStartTimestep,
int);
265 vtkGetMacro(UnsteadySolutionStartTimestep,
int);
274 vtkSetMacro(DistributeBlocks,
bool);
275 vtkGetMacro(DistributeBlocks,
bool);
276 vtkBooleanMacro(DistributeBlocks,
bool);
287 vtkGetMacro(CacheMesh,
bool);
288 vtkBooleanMacro(CacheMesh,
bool);
299 vtkGetMacro(CacheConnectivity,
bool);
300 vtkBooleanMacro(CacheConnectivity,
bool);
359 std::string FileName;
361 bool LoadBndPatch =
false;
362 bool LoadMesh =
true;
363 int DoublePrecisionMesh = 1;
364 int CreateEachSolutionAsBlock = 0;
365 bool IgnoreFlowSolutionPointers =
false;
366 bool UseUnsteadyPattern =
false;
367 bool DistributeBlocks =
true;
368 bool CacheMesh =
false;
369 bool CacheConnectivity =
false;
370 bool Use3DVector =
true;
371 int UnsteadySolutionStartTimestep = 0;
376 double currentZoneId;
378 unsigned int NumberOfBases = 0;
379 int ActualTimeStep = 0;
382 vtkPrivate* Internals;
383 friend class vtkPrivate;
vtkCGNSReader creates a multi-block dataset and reads unstructured grids and structured meshes from b...
void DisableAllFamilies()
API to select families to read.
int GetNumberOfFaceArrays()
API to get information of face arrays and enable/disable loading of particular arrays.
void Broadcast(vtkMultiProcessController *ctrl)
Sends metadata (that read from the input file, not settings modified through this API) from the rank ...
const char * GetPointArrayName(int index)
API to get information of point arrays and enable/disable loading of particular arrays.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
void SetController(vtkMultiProcessController *c)
Set/get the communication object used to relay a list of files from the rank 0 process to all others.
void SetCacheMesh(bool enable)
This reader can cache the mesh points if they are time invariant.
int GetCurvilinearZone(int base, int zone, int cell_dim, int phys_dim, void *zsize, vtkMultiBlockDataSet *mbase)
~vtkCGNSReader() override
int GetCellArrayStatus(const char *name)
API to get information of cell arrays and enable/disable loading of particular arrays.
int GetPointArrayStatus(const char *name)
API to get information of point arrays and enable/disable loading of particular arrays.
void EnableAllFaceArrays()
API to get information of face arrays and enable/disable loading of particular arrays.
void DisableAllCellArrays()
API to get information of cell arrays and enable/disable loading of particular arrays.
void EnableAllFamilies()
API to select families to read.
void DisableAllPointArrays()
API to get information of point arrays and enable/disable loading of particular arrays.
const char * GetBaseArrayName(int index)
API to select bases to read.
int GetNumberOfPointArrays()
API to get information of point arrays and enable/disable loading of particular arrays.
vtkNew< vtkDataArraySelection > FaceDataArraySelection
void SetBaseArrayStatus(const char *name, int status)
API to select bases to read.
int ReadUserDefinedData(int zone, vtkMultiBlockDataSet *mbase)
Read "UserDefinedData_t" nodes in the given zone.
vtkDataArraySelection * GetBaseSelection()
Returns access to the base selection object.
const char * GetCellArrayName(int index)
API to get information of cell arrays and enable/disable loading of particular arrays.
int GetUnstructuredZone(int base, int zone, int cell_dim, int phys_dim, void *zsize, vtkMultiBlockDataSet *mbase)
static vtkCGNSReader * New()
void SetFaceArrayStatus(const char *name, int status)
API to get information of face arrays and enable/disable loading of particular arrays.
vtkDataArraySelection * GetFamilySelection()
Returns access to the family selection object.
void DisableAllBases()
API to select bases to read.
void SetCacheConnectivity(bool enable)
This reader can cache the mesh connectivities if they are time invariant.
int GetBaseArrayStatus(const char *name)
API to select bases to read.
void EnableAllCellArrays()
API to get information of cell arrays and enable/disable loading of particular arrays.
vtkGetCharFromStdStringMacro(FileName)
Specify file name of CGNS datafile to read.
int CanReadFile(VTK_FILEPATH const char *filename)
Is the given file name a CGNS file?
int GetFamilyArrayStatus(const char *name)
API to select families to read.
vtkNew< vtkDataArraySelection > PointDataArraySelection
int GetNumberOfBaseArrays()
API to select bases to read.
void DisableAllFaceArrays()
API to get information of face arrays and enable/disable loading of particular arrays.
vtkNew< vtkDataArraySelection > CellDataArraySelection
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkSetStdStringFromCharMacro(FileName)
Specify file name of CGNS datafile to read.
void EnableAllPointArrays()
API to get information of point arrays and enable/disable loading of particular arrays.
void SetFamilyArrayStatus(const char *name, int status)
API to select families to read.
vtkNew< vtkDataArraySelection > BaseSelection
void SetCellArrayStatus(const char *name, int status)
API to get information of cell arrays and enable/disable loading of particular arrays.
int GetNumberOfFamilyArrays()
API to select families to read.
const char * GetFaceArrayName(int index)
API to get information of face arrays and enable/disable loading of particular arrays.
int GetFaceArrayStatus(const char *name)
API to get information of face arrays and enable/disable loading of particular arrays.
const char * GetFamilyArrayName(int index)
API to select families to read.
int GetNumberOfCellArrays()
API to get information of cell arrays and enable/disable loading of particular arrays.
void SetPointArrayStatus(const char *name, int status)
API to get information of point arrays and enable/disable loading of particular arrays.
int FillOutputPortInformation(int port, vtkInformation *info) override
Fill the output port information objects for this algorithm.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkInformationStringKey * FAMILY()
Key used to put a family name in the meta-data associated with a node.
void EnableAllBases()
API to select bases to read.
vtkNew< vtkDataArraySelection > FamilySelection
Store on/off settings for data arrays, etc.
a simple class to control print indentation
Superclass for algorithms that produce only vtkMultiBlockDataSet as output.
Composite dataset that organizes datasets into blocks.
Multiprocessing communication superclass.
Allocate and hold a VTK object.
This file defines functions used by vtkCGNSReader and vtkCGNSReaderInternal.