25#ifndef vtkExodusIIReader_h
26#define vtkExodusIIReader_h
28#include "vtkIOExodusModule.h"
31VTK_ABI_NAMESPACE_BEGIN
89 vtkSetMacro(TimeStep,
int);
90 vtkGetMacro(TimeStep,
int);
106 vtkGetVector2Macro(ModeShapesRange,
int);
115 vtkGetVector2Macro(TimeStepRange,
int);
168 SEARCH_TYPE_ELEMENT = 0,
172 ID_NOT_FOUND = -234121312
200 GLOBAL_TEMPORAL = 102,
201 NODAL_TEMPORAL = 101,
202 ELEM_BLOCK_TEMPORAL = 100,
204 ELEM_BLOCK_ELEM_CONN = 98,
205 ELEM_BLOCK_FACE_CONN =
207 ELEM_BLOCK_EDGE_CONN =
209 FACE_BLOCK_CONN = 95,
210 EDGE_BLOCK_CONN = 94,
218 IMPLICIT_ELEMENT_ID = 108,
219 IMPLICIT_NODE_ID = 107,
226 NODAL_SQUEEZEMAP = 82,
227 ELEM_BLOCK_ATTRIB = 81,
228 FACE_BLOCK_ATTRIB = 80,
229 EDGE_BLOCK_ATTRIB = 79,
339 vtkBooleanMacro(IgnoreFileTime,
bool);
364 using Superclass::GetObjectName;
370 return this->GetObjectStatus(objectType, this->GetObjectIndex(objectType, objectName));
389 return this->GetObjectArrayStatus(objectType, this->GetObjectArrayIndex(objectType, arrayName));
408 return this->GetObjectAttributeStatus(
409 objectType, objectIndex, this->GetObjectAttributeIndex(objectType, objectIndex, attribName));
414 this->SetObjectAttributeStatus(objectType, objectIndex,
415 this->GetObjectAttributeIndex(objectType, objectIndex, attribName), status);
490 vtkGetMacro(DisplayType,
int);
517 this->SetObjectStatus(EDGE_BLOCK, name, flag);
525 this->SetObjectStatus(FACE_BLOCK, name, flag);
532 return this->GetObjectStatus(ELEM_BLOCK, name);
536 this->SetObjectStatus(ELEM_BLOCK, name, flag);
542 return this->GetObjectArrayName(GLOBAL, index);
546 return this->GetObjectArrayStatus(GLOBAL, name);
550 this->SetObjectArrayStatus(GLOBAL, name, flag);
557 return this->GetObjectArrayStatus(NODAL, name);
561 this->SetObjectArrayStatus(NODAL, name, flag);
567 return this->GetObjectArrayName(EDGE_BLOCK, index);
571 return this->GetObjectArrayStatus(EDGE_BLOCK, name);
575 this->SetObjectArrayStatus(EDGE_BLOCK, name, flag);
581 return this->GetObjectArrayName(FACE_BLOCK, index);
585 return this->GetObjectArrayStatus(FACE_BLOCK, name);
589 this->SetObjectArrayStatus(FACE_BLOCK, name, flag);
595 return this->GetObjectArrayName(ELEM_BLOCK, index);
599 return this->GetObjectArrayStatus(ELEM_BLOCK, name);
603 this->SetObjectArrayStatus(ELEM_BLOCK, name, flag);
611 this->SetObjectStatus(NODE_MAP, name, flag);
619 this->SetObjectStatus(EDGE_MAP, name, flag);
627 this->SetObjectStatus(FACE_MAP, name, flag);
635 this->SetObjectStatus(ELEM_MAP, name, flag);
643 this->SetObjectStatus(NODE_SET, name, flag);
651 this->SetObjectStatus(SIDE_SET, name, flag);
659 this->SetObjectStatus(EDGE_SET, name, flag);
667 this->SetObjectStatus(FACE_SET, name, flag);
675 this->SetObjectStatus(ELEM_SET, name, flag);
681 return this->GetObjectArrayName(NODE_SET, index);
685 return this->GetObjectArrayStatus(NODE_SET, name);
689 this->SetObjectArrayStatus(NODE_SET, name, flag);
695 return this->GetObjectArrayName(SIDE_SET, index);
699 return this->GetObjectArrayStatus(SIDE_SET, name);
703 this->SetObjectArrayStatus(SIDE_SET, name, flag);
709 return this->GetObjectArrayName(EDGE_SET, index);
713 return this->GetObjectArrayStatus(EDGE_SET, name);
717 this->SetObjectArrayStatus(EDGE_SET, name, flag);
723 return this->GetObjectArrayName(FACE_SET, index);
727 return this->GetObjectArrayStatus(FACE_SET, name);
731 this->SetObjectArrayStatus(FACE_SET, name, flag);
737 return this->GetObjectArrayName(ELEM_SET, index);
741 return this->GetObjectArrayStatus(ELEM_SET, name);
745 this->SetObjectArrayStatus(ELEM_SET, name, flag);
812 vtkGetMacro(SILUpdateStamp,
int);
844 vtkSetMacro(UseLegacyBlockNames,
bool);
845 vtkGetMacro(UseLegacyBlockNames,
bool);
846 vtkBooleanMacro(UseLegacyBlockNames,
bool);
884 int TimeStepRange[2];
907 int ModeShapesRange[2];
909 bool UseLegacyBlockNames;
abstract superclass for arrays of numeric data
abstract class to specify dataset behavior
This class holds metadata for an Exodus file.
Read exodus 2 files .ex2.
virtual void SetGenerateGlobalNodeIdArray(vtkTypeBool g)
static const char * GetSideSetSourceElementIdArrayName()
Get the name of the array that stores the mapping from side set cells back to the global id of the el...
int GetNumberOfElementsInFile()
int GetNumberOfFaceSetArrays()
int IsValidVariable(const char *type, const char *name)
return boolean indicating whether the type,name is a valid variable
vtkTypeBool ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Upstream/Downstream requests form the generalized interface through which executives invoke a algorit...
vtkTypeBool GetAnimateModeShapes()
If this flag is on (the default) and HasModeShapes is also on, then this reader will report a continu...
virtual void SetFileName(VTK_FILEPATH const char *fname)
Specify file name of the Exodus file.
const char * GetObjectTypeName(int)
const char * GetNodeSetArrayName(int index)
int GetEdgeBlockArrayStatus(const char *name)
int GetFaceResultArrayStatus(const char *name)
virtual void SetFileId(int f)
void SetEdgeBlockArrayStatus(const char *name, int flag)
int GetNumberOfFacesInFile()
static int GetGlobalNodeID(vtkDataSet *data, int localID, int searchType)
Extra point data array that can be generated.
vtkTypeBool GetGenerateImplicitNodeIdArray()
static int GetGlobalFaceID(vtkDataSet *data, int localID)
int GetObjectArrayStatus(int objectType, int arrayIndex)
By default arrays are not loaded.
static const char * GetImplicitNodeIdArrayName()
Extra point data array that can be generated.
int GetObjectIndex(int objectType, const char *objectName)
void SetElementResultArrayStatus(const char *name, int flag)
int GetNumberOfObjectArrays(int objectType)
By default arrays are not loaded.
int GetEdgeSetResultArrayStatus(const char *name)
static const char * GetImplicitFaceIdArrayName()
void SetElementMapArrayStatus(const char *name, int flag)
void SetElementSetArrayStatus(const char *name, int flag)
const char * GetFaceResultArrayName(int index)
int GetNumberOfElementSetArrays()
void SetSideSetResultArrayStatus(const char *name, int flag)
int GetMaterialArrayStatus(const char *)
By default all materials are loaded.
int GetNumberOfPointResultArrays()
static vtkInformationIntegerKey * GLOBAL_VARIABLE()
Exodus reader outputs global variables and global temporal variables, together with some other variab...
int GetNodeMapArrayStatus(const char *name)
int GetNumberOfHierarchyArrays()
By default all hierarchy entries are loaded.
static int GetGlobalEdgeID(vtkDataSet *data, int localID, int searchType)
int GetElementMapArrayStatus(const char *name)
void SetEdgeResultArrayStatus(const char *name, int flag)
static const char * GetGlobalEdgeIdArrayName()
int GetNumberOfPartArrays()
By default all parts are loaded.
int GetHierarchyArrayStatus(const char *)
By default all hierarchy entries are loaded.
int GetNumberOfTimeSteps()
Access to meta data generated by UpdateInformation.
vtkTypeBool GetGenerateFileIdArray()
int GetNumberOfNodesInFile()
const char * GetEdgeBlockArrayName(int index)
void SetFaceBlockArrayStatus(const char *name, int flag)
int GetPointResultArrayStatus(const char *name)
int GetPartArrayStatus(int index)
By default all parts are loaded.
int GetNumberOfNodeSetArrays()
const char * GetFaceMapArrayName(int index)
void SetPartArrayStatus(int index, int flag)
By default all parts are loaded.
virtual void SetHasModeShapes(vtkTypeBool ms)
Set/Get whether the Exodus sequence number corresponds to time steps or mode shapes.
static const char * GetPedigreeFaceIdArrayName()
static int GetGlobalID(const char *arrayName, vtkDataSet *data, int localID, int searchType)
int GetNumberOfEdgeSetArrays()
vtkTypeBool GetGenerateGlobalElementIdArray()
virtual void SetGenerateImplicitNodeIdArray(vtkTypeBool g)
const char * GetSideSetArrayName(int index)
int GetNumberOfSideSetArrays()
int GetPartArrayID(const char *name)
By default all parts are loaded.
~vtkExodusIIReader() override
bool GetSqueezePoints()
Should the reader output only points used by elements in the output mesh, or all the points.
const char * GetObjectAttributeName(int objectType, int objectIndex, int attribIndex)
By default attributes are not loaded.
int GetEdgeMapArrayStatus(const char *name)
int GetNumberOfFaceBlockArrays()
void SetPartArrayStatus(const char *, int flag)
By default all parts are loaded.
vtkExodusIIReaderPrivate * Metadata
int GetMaterialArrayStatus(int index)
By default all materials are loaded.
int GetNumberOfEdgeSetResultArrays()
int GetElementResultArrayStatus(const char *name)
int GetNumberOfAssemblyArrays()
By default all assemblies are loaded.
void SetAssemblyArrayStatus(const char *, int flag)
By default all assemblies are loaded.
int GetNumberOfSideSetResultArrays()
int GetNumberOfNodeSetResultArrays()
int GetEdgeSetArrayStatus(const char *name)
void SetNodeSetResultArrayStatus(const char *name, int flag)
void SetMaterialArrayStatus(int index, int flag)
By default all materials are loaded.
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
const char * GetFaceSetArrayName(int index)
const char * GetGlobalResultArrayName(int index)
int GetNodeSetResultArrayStatus(const char *name)
virtual void SetGenerateGlobalElementIdArray(vtkTypeBool g)
void SetAllArrayStatus(int otype, int status)
int GetHierarchyArrayStatus(int index)
By default all hierarchy entries are loaded.
vtkTypeBool GetGenerateObjectIdCellArray()
Extra cell data array that can be generated.
int GetNumberOfMaterialArrays()
By default all materials are loaded.
vtkTypeBool GetGenerateImplicitElementIdArray()
const char * GetEdgeMapArrayName(int index)
void ResetCache()
Clears out the cache entries.
virtual void SetMetadata(vtkExodusIIReaderPrivate *)
void SetMaterialArrayStatus(const char *, int flag)
By default all materials are loaded.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
static const char * GetGlobalFaceIdArrayName()
void Reset()
Reset the user-specified parameters and flush internal arrays so that the reader state is just as it ...
double GetCacheSize()
Get the size of the cache in MiB.
virtual void SetDisplayType(int type)
int GetNumberOfGlobalResultArrays()
int GetNumberOfEntriesInObject(int objectType, int objectIndex)
int GetObjectStatus(int objectType, int objectIndex)
void SetSideSetArrayStatus(const char *name, int flag)
void SetNodeMapArrayStatus(const char *name, int flag)
static int GetIDHelper(const char *arrayName, vtkDataSet *data, int localID, int searchType)
void SetEdgeMapArrayStatus(const char *name, int flag)
void SetObjectAttributeStatus(int objectType, int objectIndex, int attribIndex, int status)
By default attributes are not loaded.
vtkTimeStamp FileNameMTime
int GetAssemblyArrayStatus(const char *)
By default all assemblies are loaded.
const char * GetFaceSetResultArrayName(int index)
void SetModeShape(int val)
Convenience method to set the mode-shape which is same as this->SetTimeStep(val-1);.
static const char * GetPedigreeEdgeIdArrayName()
int GetAssemblyArrayID(const char *name)
By default all assemblies are loaded.
static int GetGlobalEdgeID(vtkDataSet *data, int localID)
void SetObjectArrayStatus(int objectType, int arrayIndex, int status)
By default arrays are not loaded.
int GetNumberOfFaceResultArrays()
void SetFaceMapArrayStatus(const char *name, int flag)
bool GetIgnoreFileTime()
When on, this option ignores the time values assigned to each time step in the file.
int GetSideSetArrayStatus(const char *name)
void ResetSettings()
Reset the user-specified parameters to their default values.
int GetMaterialArrayID(const char *name)
By default all materials are loaded.
const char * GetHierarchyArrayName(int arrayIdx)
By default all hierarchy entries are loaded.
void SetFaceResultArrayStatus(const char *name, int flag)
int GetObjectIndex(int objectType, int id)
int GetObjectAttributeStatus(int objectType, int objectIndex, const char *attribName)
By default attributes are not loaded.
static int GetGlobalFaceID(vtkDataSet *data, int localID, int searchType)
void SetObjectStatus(int objectType, int objectIndex, int status)
const char * GetElementMapArrayName(int index)
void SetElementSetResultArrayStatus(const char *name, int flag)
@ SEARCH_TYPE_NODE_THEN_ELEMENT
@ SEARCH_TYPE_ELEMENT_THEN_NODE
int GetDimensionality()
Access to meta data generated by UpdateInformation.
void SetAssemblyArrayStatus(int index, int flag)
By default all assemblies are loaded.
int GetObjectArrayIndex(int objectType, const char *arrayName)
By default arrays are not loaded.
static const char * GetPedigreeElementIdArrayName()
int GetNumberOfObjectAttributes(int objectType, int objectIndex)
By default attributes are not loaded.
void GetAllTimes(vtkInformationVector *)
int GetFaceSetArrayStatus(const char *name)
void SetHierarchyArrayStatus(int index, int flag)
By default all hierarchy entries are loaded.
int GetMaxNameLength()
Get the max_name_length in the file.
static const char * GetPedigreeNodeIdArrayName()
Extra point data array that can be generated.
int GetNumberOfEdgeBlockArrays()
static const char * GetImplicitElementIdArrayName()
double GetModeShapeTime()
Set/Get the time used to animate mode shapes.
vtkTimeStamp XMLFileNameMTime
int GetEdgeResultArrayStatus(const char *name)
float GetDisplacementMagnitude()
Geometric locations can include displacements.
virtual void SetGenerateObjectIdCellArray(vtkTypeBool g)
Extra cell data array that can be generated.
int GetTimeSeriesData(int ID, const char *vName, const char *vType, vtkFloatArray *result)
int GetNumberOfEdgeResultArrays()
virtual int CanReadFile(VTK_FILEPATH const char *fname)
Determine if the file can be read with this reader.
void SetObjectStatus(int objectType, const char *objectName, int status)
void SetObjectAttributeStatus(int objectType, int objectIndex, const char *attribName, int status)
By default attributes are not loaded.
static int GetGlobalNodeID(vtkDataSet *data, int localID)
Extra point data array that can be generated.
int GetFaceMapArrayStatus(const char *name)
int GetFaceBlockArrayStatus(const char *name)
const char * GetSideSetResultArrayName(int index)
int GetNumberOfElementMapArrays()
virtual vtkIdType GetTotalNumberOfEdges()
virtual vtkMTimeType GetMetadataMTime()
Return the MTime of the internal data structure.
virtual void SetXMLFileName(VTK_FILEPATH const char *fname)
Specify file name of the xml file.
bool FindXMLFile()
Returns true if the file given by XMLFileName exists.
int GetNumberOfFaceMapArrays()
void AdvertiseTimeSteps(vtkInformation *outputInfo)
Populates the TIME_STEPS and TIME_RANGE keys based on file metadata.
const char * GetNodeMapArrayName(int index)
const char * GetMaterialArrayName(int arrayIdx)
By default all materials are loaded.
vtkTypeBool GetHasModeShapes()
Set/Get whether the Exodus sequence number corresponds to time steps or mode shapes.
void SetEdgeSetArrayStatus(const char *name, int flag)
virtual vtkIdType GetTotalNumberOfFaces()
vtkGraph * GetSIL()
SIL describes organization of/relationships between classifications eg.
int GetObjectId(int objectType, int objectIndex)
int GetNumberOfElementSetResultArrays()
const char * GetTitle()
Access to meta data generated by UpdateInformation.
int GetNumberOfEdgesInFile()
void SetElementBlockArrayStatus(const char *name, int flag)
static const char * GetGlobalElementIdArrayName()
virtual void SetModeShapeTime(double phase)
Set/Get the time used to animate mode shapes.
const char * GetPartBlockInfo(int arrayIdx)
By default all parts are loaded.
void SetFaceSetArrayStatus(const char *name, int flag)
void SetGlobalResultArrayStatus(const char *name, int flag)
vtkTypeBool GetGenerateGlobalNodeIdArray()
const char * GetPartArrayName(int arrayIdx)
By default all parts are loaded.
vtkGetFilePathMacro(XMLFileName)
Specify file name of the xml file.
virtual void SetApplyDisplacements(vtkTypeBool d)
Geometric locations can include displacements.
static const char * GetSideSetSourceElementSideArrayName()
Get the name of the array that stores the mapping from side set cells back to the canonical side of t...
virtual vtkIdType GetTotalNumberOfElements()
const char * GetNodeSetResultArrayName(int index)
vtkMTimeType GetMTime() override
Return the object's MTime.
void SetHierarchyArrayStatus(const char *, int flag)
By default all hierarchy entries are loaded.
static const char * GetGlobalNodeIdArrayName()
Extra point data array that can be generated.
int GetNumberOfObjects(int objectType)
virtual void SetIgnoreFileTime(bool flag)
When on, this option ignores the time values assigned to each time step in the file.
int GetAssemblyArrayStatus(int index)
By default all assemblies are loaded.
int GetObjectTypeFromName(const char *name)
int GetElementBlockArrayStatus(const char *name)
const char * GetEdgeResultArrayName(int index)
int GetElementSetResultArrayStatus(const char *name)
int GetObjectAttributeIndex(int objectType, int objectIndex, const char *attribName)
By default attributes are not loaded.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
const char * GetElementResultArrayName(int index)
virtual void SetDisplacementMagnitude(float s)
Geometric locations can include displacements.
int GetObjectAttributeStatus(int objectType, int objectIndex, int attribIndex)
By default attributes are not loaded.
int GetNumberOfNodeMapArrays()
int GetGlobalResultArrayStatus(const char *name)
virtual vtkIdType GetTotalNumberOfNodes()
virtual void SetAnimateModeShapes(vtkTypeBool flag)
If this flag is on (the default) and HasModeShapes is also on, then this reader will report a continu...
virtual void SetGenerateImplicitElementIdArray(vtkTypeBool g)
const char * GetEdgeSetArrayName(int index)
int GetNumberOfElementBlockArrays()
void SetPointResultArrayStatus(const char *name, int flag)
const char * GetFaceBlockArrayName(int index)
static const char * GetImplicitEdgeIdArrayName()
int GetVariableID(const char *type, const char *name)
Return the id of the type,name variable.
void SetNodeSetArrayStatus(const char *name, int flag)
int GetNumberOfEdgeMapArrays()
int GetSideSetResultArrayStatus(const char *name)
void SetSqueezePoints(bool sp)
Should the reader output only points used by elements in the output mesh, or all the points.
virtual void SetGenerateFileIdArray(vtkTypeBool f)
void SetFaceSetResultArrayStatus(const char *name, int flag)
int GetNumberOfFaceSetResultArrays()
const char * GetObjectName(int objectType, int objectIndex)
void SetCacheSize(double CacheSize)
Set the size of the cache in MiB.
static int GetGlobalElementID(vtkDataSet *data, int localID, int searchType)
int GetElementSetArrayStatus(const char *name)
vtkGetFilePathMacro(FileName)
Specify file name of the Exodus file.
const char * GetObjectArrayName(int objectType, int arrayIndex)
By default arrays are not loaded.
ObjectType
Extra cell data array that can be generated.
int GetNumberOfObjectArrayComponents(int objectType, int arrayIndex)
By default arrays are not loaded.
static const char * GetObjectIdArrayName()
Extra cell data array that can be generated.
vtkTypeBool GetApplyDisplacements()
Geometric locations can include displacements.
int GetObjectStatus(int objectType, const char *objectName)
const char * GetPointResultArrayName(int index)
int GetNumberOfElementResultArrays()
int GetObjectArrayStatus(int objectType, const char *arrayName)
By default arrays are not loaded.
void SetEdgeSetResultArrayStatus(const char *name, int flag)
static int GetGlobalElementID(vtkDataSet *data, int localID)
static vtkExodusIIReader * New()
int GetNodeSetArrayStatus(const char *name)
const char * GetElementSetResultArrayName(int index)
const char * GetEdgeSetResultArrayName(int index)
int GetFaceSetResultArrayStatus(const char *name)
const char * GetAssemblyArrayName(int arrayIdx)
By default all assemblies are loaded.
const char * GetElementSetArrayName(int index)
int GetPartArrayStatus(const char *)
By default all parts are loaded.
static vtkInformationIntegerKey * GLOBAL_TEMPORAL_VARIABLE()
Exodus reader outputs global variables and global temporal variables, together with some other variab...
void SetObjectArrayStatus(int objectType, const char *arrayName, int status)
By default arrays are not loaded.
const char * GetElementBlockArrayName(int index)
dynamic, self-adjusting array of float
Base class for graph data types.
a simple class to control print indentation
dynamic, self-adjusting array of int
Superclass for algorithms that produce only vtkMultiBlockDataSet as output.
virtual std::string GetObjectName() const
Set/get the name of this object for reporting purposes.
Read Exodus II files (.exii)
represent and manipulate 3D points
record modification and/or execution time
dataset represents arbitrary combinations of all possible cell types
vtkTypeUInt32 vtkMTimeType