40 #ifndef vtkExodusIIReader_h 41 #define vtkExodusIIReader_h 43 #include "vtkIOExodusModule.h" 66 virtual int CanReadFile(
const char* fname);
86 virtual void SetFileName(
const char* fname );
87 vtkGetStringMacro(FileName);
94 virtual void SetXMLFileName(
const char* fname );
95 vtkGetStringMacro(XMLFileName);
102 vtkSetMacro(TimeStep,
int);
103 vtkGetMacro(TimeStep,
int);
112 this->SetTimeStep(val-1);
122 vtkGetVector2Macro(ModeShapesRange,
int);
131 vtkGetVector2Macro(TimeStepRange,
int);
146 virtual void SetGenerateObjectIdCellArray(
vtkTypeBool g );
148 vtkBooleanMacro(GenerateObjectIdCellArray,
vtkTypeBool);
152 virtual void SetGenerateGlobalElementIdArray(
vtkTypeBool g );
154 vtkBooleanMacro(GenerateGlobalElementIdArray,
vtkTypeBool);
156 virtual void SetGenerateGlobalNodeIdArray(
vtkTypeBool g );
158 vtkBooleanMacro(GenerateGlobalNodeIdArray,
vtkTypeBool);
160 virtual void SetGenerateImplicitElementIdArray(
vtkTypeBool g );
162 vtkBooleanMacro(GenerateImplicitElementIdArray,
vtkTypeBool);
164 virtual void SetGenerateImplicitNodeIdArray(
vtkTypeBool g );
166 vtkBooleanMacro(GenerateImplicitNodeIdArray,
vtkTypeBool);
168 virtual void SetGenerateFileIdArray(
vtkTypeBool f );
172 virtual void SetFileId(
int f );
183 SEARCH_TYPE_ELEMENT=0,
187 ID_NOT_FOUND=-234121312
214 GLOBAL_TEMPORAL = 102,
215 NODAL_TEMPORAL = 101,
216 ELEM_BLOCK_TEMPORAL = 100,
218 ELEM_BLOCK_ELEM_CONN = 98,
219 ELEM_BLOCK_FACE_CONN = 97,
220 ELEM_BLOCK_EDGE_CONN = 96,
221 FACE_BLOCK_CONN = 95,
222 EDGE_BLOCK_CONN = 94,
230 IMPLICIT_ELEMENT_ID = 108,
231 IMPLICIT_NODE_ID = 107,
232 GLOBAL_ELEMENT_ID = 86,
236 NODAL_SQUEEZEMAP = 82,
237 ELEM_BLOCK_ATTRIB = 81,
238 FACE_BLOCK_ATTRIB = 80,
239 EDGE_BLOCK_ATTRIB = 79,
249 static int GetGlobalElementID (
vtkDataSet *data,
int localID,
255 static int GetGlobalFaceID(
vtkDataSet *data,
int localID );
256 static int GetGlobalFaceID (
vtkDataSet *data,
int localID,
262 static int GetGlobalEdgeID(
vtkDataSet *data,
int localID );
263 static int GetGlobalEdgeID (
vtkDataSet *data,
int localID,
276 static int GetGlobalNodeID(
vtkDataSet *data,
int localID );
277 static int GetGlobalNodeID(
vtkDataSet *data,
int localID,
301 virtual void SetApplyDisplacements(
vtkTypeBool d );
304 virtual void SetDisplacementMagnitude(
float s );
305 float GetDisplacementMagnitude();
327 virtual void SetModeShapeTime(
double phase );
328 double GetModeShapeTime();
339 virtual void SetAnimateModeShapes(
vtkTypeBool flag);
352 virtual void SetIgnoreFileTime(
bool flag);
353 bool GetIgnoreFileTime();
354 vtkBooleanMacro(IgnoreFileTime,
bool);
361 const char* GetTitle();
362 int GetDimensionality();
363 int GetNumberOfTimeSteps();
366 int GetNumberOfNodesInFile();
367 int GetNumberOfEdgesInFile();
368 int GetNumberOfFacesInFile();
369 int GetNumberOfElementsInFile();
371 int GetObjectTypeFromName(
const char*
name );
372 const char* GetObjectTypeName(
int );
374 int GetNumberOfNodes();
375 int GetNumberOfObjects(
int objectType );
376 int GetNumberOfEntriesInObject(
int objectType,
int objectIndex );
377 int GetObjectId(
int objectType,
int objectIndex );
378 const char* GetObjectName(
int objectType,
int objectIndex );
379 int GetObjectIndex(
int objectType,
const char* objectName );
380 int GetObjectIndex(
int objectType,
int id );
381 int GetObjectStatus(
int objectType,
int objectIndex );
383 {
return this->GetObjectStatus( objectType, this->GetObjectIndex( objectType, objectName ) ); }
384 void SetObjectStatus(
int objectType,
int objectIndex,
int status );
385 void SetObjectStatus(
int objectType,
const char* objectName,
int status );
394 int GetNumberOfObjectArrays(
int objectType );
395 const char* GetObjectArrayName(
int objectType,
int arrayIndex );
396 int GetObjectArrayIndex(
int objectType,
const char* arrayName );
397 int GetNumberOfObjectArrayComponents(
int objectType,
int arrayIndex );
398 int GetObjectArrayStatus(
int objectType,
int arrayIndex );
400 {
return this->GetObjectArrayStatus( objectType, this->GetObjectArrayIndex( objectType, arrayName ) ); }
401 void SetObjectArrayStatus(
int objectType,
int arrayIndex,
int status );
402 void SetObjectArrayStatus(
int objectType,
const char* arrayName,
int status );
412 int GetNumberOfObjectAttributes(
int objectType,
int objectIndex );
413 const char* GetObjectAttributeName(
int objectType,
int objectIndex,
int attribIndex );
414 int GetObjectAttributeIndex(
int objectType,
int objectIndex,
const char* attribName );
415 int GetObjectAttributeStatus(
int objectType,
int objectIndex,
int attribIndex );
417 {
return this->GetObjectAttributeStatus( objectType, objectIndex,
418 this->GetObjectAttributeIndex( objectType, objectIndex, attribName ) ); }
419 void SetObjectAttributeStatus(
int objectType,
int objectIndex,
int attribIndex,
int status );
421 { this->SetObjectAttributeStatus( objectType, objectIndex,
422 this->GetObjectAttributeIndex( objectType, objectIndex, attribName ), status ); }
425 virtual vtkIdType GetTotalNumberOfNodes();
426 virtual vtkIdType GetTotalNumberOfEdges();
427 virtual vtkIdType GetTotalNumberOfFaces();
428 virtual vtkIdType GetTotalNumberOfElements();
436 int GetNumberOfPartArrays();
437 const char* GetPartArrayName(
int arrayIdx);
438 int GetPartArrayID(
const char *name );
439 const char* GetPartBlockInfo(
int arrayIdx);
440 void SetPartArrayStatus(
int index,
int flag);
441 void SetPartArrayStatus(
const char*,
int flag);
442 int GetPartArrayStatus(
int index);
443 int GetPartArrayStatus(
const char*);
454 int GetNumberOfMaterialArrays();
455 const char* GetMaterialArrayName(
int arrayIdx);
456 int GetMaterialArrayID(
const char *name );
457 void SetMaterialArrayStatus(
int index,
int flag);
458 void SetMaterialArrayStatus(
const char*,
int flag);
459 int GetMaterialArrayStatus(
int index);
460 int GetMaterialArrayStatus(
const char*);
470 int GetNumberOfAssemblyArrays();
471 const char* GetAssemblyArrayName(
int arrayIdx);
472 int GetAssemblyArrayID(
const char *name );
473 void SetAssemblyArrayStatus(
int index,
int flag);
474 void SetAssemblyArrayStatus(
const char*,
int flag);
475 int GetAssemblyArrayStatus(
int index);
476 int GetAssemblyArrayStatus(
const char*);
489 int GetNumberOfHierarchyArrays();
490 const char* GetHierarchyArrayName(
int arrayIdx);
491 void SetHierarchyArrayStatus(
int index,
int flag);
492 void SetHierarchyArrayStatus(
const char*,
int flag);
493 int GetHierarchyArrayStatus(
int index);
494 int GetHierarchyArrayStatus(
const char*);
497 vtkGetMacro(DisplayType,
int);
498 virtual void SetDisplayType(
int type);
503 int IsValidVariable(
const char *type,
const char *name );
508 int GetVariableID (
const char *type,
const char *name );
510 void SetAllArrayStatus(
int otype,
int status );
517 int GetTimeSeriesData(
int ID,
const char *vName,
const char *vType,
523 {
return this->GetNumberOfObjects(EDGE_BLOCK); }
525 {
return this->GetObjectName(EDGE_BLOCK, index); }
527 {
return this->GetObjectStatus(EDGE_BLOCK, name); }
529 { this->SetObjectStatus(EDGE_BLOCK, name, flag); }
532 {
return this->GetNumberOfObjects(FACE_BLOCK); }
534 {
return this->GetObjectName(FACE_BLOCK, index); }
536 {
return this->GetObjectStatus(FACE_BLOCK, name); }
538 { this->SetObjectStatus(FACE_BLOCK, name, flag); }
541 {
return this->GetNumberOfObjects(ELEM_BLOCK); }
543 {
return this->GetObjectName(ELEM_BLOCK, index); }
545 {
return this->GetObjectStatus(ELEM_BLOCK, name); }
547 { this->SetObjectStatus(ELEM_BLOCK, name, flag); }
550 {
return this->GetNumberOfObjectArrays(GLOBAL); }
552 {
return this->GetObjectArrayName(GLOBAL, index); }
554 {
return this->GetObjectArrayStatus(GLOBAL, name); }
556 { this->SetObjectArrayStatus(GLOBAL, name, flag); }
559 {
return this->GetNumberOfObjectArrays(NODAL); }
561 {
return this->GetObjectArrayName(NODAL, index); }
563 {
return this->GetObjectArrayStatus(NODAL, name); }
565 { this->SetObjectArrayStatus(NODAL, name, flag); }
568 {
return this->GetNumberOfObjectArrays(EDGE_BLOCK); }
570 {
return this->GetObjectArrayName(EDGE_BLOCK, index); }
572 {
return this->GetObjectArrayStatus(EDGE_BLOCK, name); }
574 { this->SetObjectArrayStatus(EDGE_BLOCK, name, flag); }
577 {
return this->GetNumberOfObjectArrays(FACE_BLOCK); }
579 {
return this->GetObjectArrayName(FACE_BLOCK, index); }
581 {
return this->GetObjectArrayStatus(FACE_BLOCK, name); }
583 { this->SetObjectArrayStatus(FACE_BLOCK, name, flag); }
586 {
return this->GetNumberOfObjectArrays(ELEM_BLOCK); }
588 {
return this->GetObjectArrayName(ELEM_BLOCK, index); }
590 {
return this->GetObjectArrayStatus(ELEM_BLOCK, name); }
592 { this->SetObjectArrayStatus(ELEM_BLOCK, name, flag); }
596 {
return this->GetNumberOfObjects(NODE_MAP); }
598 {
return this->GetObjectName(NODE_MAP, index); }
600 {
return this->GetObjectStatus(NODE_MAP, name); }
602 { this->SetObjectStatus(NODE_MAP, name, flag); }
605 {
return this->GetNumberOfObjects(EDGE_MAP); }
607 {
return this->GetObjectName(EDGE_MAP, index); }
609 {
return this->GetObjectStatus(EDGE_MAP, name); }
611 { this->SetObjectStatus(EDGE_MAP, name, flag); }
614 {
return this->GetNumberOfObjects(FACE_MAP); }
616 {
return this->GetObjectName(FACE_MAP, index); }
618 {
return this->GetObjectStatus(FACE_MAP, name); }
620 { this->SetObjectStatus(FACE_MAP, name, flag); }
623 {
return this->GetNumberOfObjects(ELEM_MAP); }
625 {
return this->GetObjectName(ELEM_MAP, index); }
627 {
return this->GetObjectStatus(ELEM_MAP, name); }
629 { this->SetObjectStatus(ELEM_MAP, name, flag); }
632 {
return this->GetNumberOfObjects(NODE_SET); }
634 {
return this->GetObjectName(NODE_SET, index); }
636 {
return this->GetObjectStatus(NODE_SET, name); }
638 { this->SetObjectStatus(NODE_SET, name, flag); }
641 {
return this->GetNumberOfObjects(SIDE_SET); }
643 {
return this->GetObjectName(SIDE_SET, index); }
645 {
return this->GetObjectStatus(SIDE_SET, name); }
647 { this->SetObjectStatus(SIDE_SET, name, flag); }
650 {
return this->GetNumberOfObjects(EDGE_SET); }
652 {
return this->GetObjectName(EDGE_SET, index); }
654 {
return this->GetObjectStatus(EDGE_SET, name); }
656 { this->SetObjectStatus(EDGE_SET, name, flag); }
659 {
return this->GetNumberOfObjects(FACE_SET); }
661 {
return this->GetObjectName(FACE_SET, index); }
663 {
return this->GetObjectStatus(FACE_SET, name); }
665 { this->SetObjectStatus(FACE_SET, name, flag); }
668 {
return this->GetNumberOfObjects(ELEM_SET); }
670 {
return this->GetObjectName(ELEM_SET, index); }
672 {
return this->GetObjectStatus(ELEM_SET, name); }
674 { this->SetObjectStatus(ELEM_SET, name, flag); }
678 {
return this->GetNumberOfObjectArrays(NODE_SET); }
680 {
return this->GetObjectArrayName(NODE_SET, index); }
682 {
return this->GetObjectArrayStatus(NODE_SET, name); }
684 { this->SetObjectArrayStatus(NODE_SET, name, flag); }
687 {
return this->GetNumberOfObjectArrays(SIDE_SET); }
689 {
return this->GetObjectArrayName(SIDE_SET, index); }
691 {
return this->GetObjectArrayStatus(SIDE_SET, name); }
693 { this->SetObjectArrayStatus(SIDE_SET, name, flag); }
696 {
return this->GetNumberOfObjectArrays(EDGE_SET); }
698 {
return this->GetObjectArrayName(EDGE_SET, index); }
700 {
return this->GetObjectArrayStatus(EDGE_SET, name); }
702 { this->SetObjectArrayStatus(EDGE_SET, name, flag); }
705 {
return this->GetNumberOfObjectArrays(FACE_SET); }
707 {
return this->GetObjectArrayName(FACE_SET, index); }
709 {
return this->GetObjectArrayStatus(FACE_SET, name); }
711 { this->SetObjectArrayStatus(FACE_SET, name, flag); }
714 {
return this->GetNumberOfObjectArrays(ELEM_SET); }
716 {
return this->GetObjectArrayName(ELEM_SET, index); }
718 {
return this->GetObjectArrayStatus(ELEM_SET, name); }
720 { this->SetObjectArrayStatus(ELEM_SET, name, flag); }
740 void ResetSettings();
750 void SetCacheSize(
double CacheSize);
755 double GetCacheSize();
770 void SetSqueezePoints(
bool sp);
771 bool GetSqueezePoints();
786 vtkGetMacro(SILUpdateStamp,
int);
794 int GetMaxNameLength();
802 static int GetIDHelper (
const char *arrayName,
vtkDataSet *data,
int localID,
int searchType );
803 static int GetGlobalID(
const char *arrayName,
vtkDataSet *data,
int localID,
int searchType );
832 int TimeStepRange[2];
854 int ModeShapesRange[2];
const char * GetEdgeResultArrayName(int index)
static const char * GetGlobalNodeIdArrayName()
Extra point data array that can be generated.
const char * GetSideSetResultArrayName(int index)
int GetNumberOfElementSetArrays()
static const char * GetImplicitElementIdArrayName()
const char * GetEdgeSetArrayName(int index)
void SetElementSetResultArrayStatus(const char *name, int flag)
int GetNumberOfGlobalResultArrays()
int GetFaceMapArrayStatus(const char *name)
const char * GetEdgeSetResultArrayName(int index)
void SetEdgeResultArrayStatus(const char *name, int flag)
void SetNodeSetArrayStatus(const char *name, int flag)
int GetNumberOfElementMapArrays()
vtkTypeUInt32 vtkMTimeType
const char * GetEdgeBlockArrayName(int index)
void SetNodeMapArrayStatus(const char *name, int flag)
int GetNumberOfEdgeMapArrays()
void SetEdgeSetResultArrayStatus(const char *name, int flag)
abstract class to specify dataset behavior
int GetGlobalResultArrayStatus(const char *name)
static const char * GetImplicitFaceIdArrayName()
int GetEdgeSetResultArrayStatus(const char *name)
const char * GetNodeSetArrayName(int index)
void SetEdgeBlockArrayStatus(const char *name, int flag)
void SetNodeSetResultArrayStatus(const char *name, int flag)
void SetSideSetArrayStatus(const char *name, int flag)
record modification and/or execution time
int GetElementSetResultArrayStatus(const char *name)
int GetElementBlockArrayStatus(const char *name)
const char * GetElementSetArrayName(int index)
int GetNumberOfFaceSetArrays()
dynamic, self-adjusting array of float
int GetNumberOfFaceSetResultArrays()
const char * GetFaceSetResultArrayName(int index)
const char * GetFaceSetArrayName(int index)
int GetNumberOfEdgeSetResultArrays()
int GetNumberOfElementResultArrays()
int GetElementResultArrayStatus(const char *name)
int ProcessRequest(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
see vtkAlgorithm for details
void SetElementResultArrayStatus(const char *name, int flag)
int GetEdgeResultArrayStatus(const char *name)
ObjectType
Extra cell data array that can be generated.
This class holds metadata for an Exodus file.
int GetNumberOfEdgeResultArrays()
Superclass for algorithms that produce only vtkMultiBlockDataSet as output.
void SetPointResultArrayStatus(const char *name, int flag)
int GetNumberOfEdgeSetArrays()
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
const char * GetEdgeMapArrayName(int index)
int GetNodeSetResultArrayStatus(const char *name)
void SetFaceBlockArrayStatus(const char *name, int flag)
const char * GetGlobalResultArrayName(int index)
int GetNumberOfSideSetResultArrays()
int GetElementSetArrayStatus(const char *name)
static vtkMultiBlockDataSetAlgorithm * New()
static const char * GetImplicitNodeIdArrayName()
Extra point data array that can be generated.
int GetNumberOfPointResultArrays()
Base class for graph data types.
int GetNodeSetArrayStatus(const char *name)
dynamic, self-adjusting array of int
void SetEdgeMapArrayStatus(const char *name, int flag)
int GetNumberOfNodeSetResultArrays()
int GetSideSetArrayStatus(const char *name)
const char * GetNodeSetResultArrayName(int index)
const char * GetElementMapArrayName(int index)
a simple class to control print indentation
void SetElementSetArrayStatus(const char *name, int flag)
int GetNumberOfFaceBlockArrays()
static const char * GetObjectIdArrayName()
Extra cell data array that can be generated.
Read Exodus II files (.exii)
int GetElementMapArrayStatus(const char *name)
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...
const char * GetNodeMapArrayName(int index)
dataset represents arbitrary combinations of all possible cell types
void SetFaceSetArrayStatus(const char *name, int flag)
int GetNumberOfFaceMapArrays()
abstract superclass for arrays of numeric data
virtual vtkMTimeType GetMTime()
Return this object's modified time.
void SetFaceMapArrayStatus(const char *name, int flag)
vtkTimeStamp XMLFileNameMTime
static const char * GetGlobalEdgeIdArrayName()
static const char * GetGlobalFaceIdArrayName()
int GetNumberOfEdgeBlockArrays()
static const char * GetPedigreeFaceIdArrayName()
int GetEdgeBlockArrayStatus(const char *name)
int GetObjectArrayStatus(int objectType, const char *arrayName)
By default arrays are not loaded.
static const char * GetPedigreeElementIdArrayName()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
const char * GetFaceBlockArrayName(int index)
static const char * GetPedigreeNodeIdArrayName()
Extra point data array that can be generated.
const char * GetElementResultArrayName(int index)
void SetSideSetResultArrayStatus(const char *name, int flag)
int GetEdgeSetArrayStatus(const char *name)
const char * GetFaceResultArrayName(int index)
int GetNumberOfElementSetResultArrays()
const char * GetSideSetArrayName(int index)
int GetNodeMapArrayStatus(const char *name)
static const char * GetPedigreeEdgeIdArrayName()
Read exodus 2 files .ex2.
int GetFaceSetResultArrayStatus(const char *name)
static const char * GetImplicitEdgeIdArrayName()
void SetGlobalResultArrayStatus(const char *name, int flag)
int GetEdgeMapArrayStatus(const char *name)
int GetObjectStatus(int objectType, const char *objectName)
void SetElementBlockArrayStatus(const char *name, int flag)
int GetObjectAttributeStatus(int objectType, int objectIndex, const char *attribName)
By default attributes are not loaded.
void SetObjectAttributeStatus(int objectType, int objectIndex, const char *attribName, int status)
By default attributes are not loaded.
int GetPointResultArrayStatus(const char *name)
const char * GetFaceMapArrayName(int index)
void SetModeShape(int val)
Convenience method to set the mode-shape which is same as this->SetTimeStep(val-1);.
void SetFaceResultArrayStatus(const char *name, int flag)
int GetFaceBlockArrayStatus(const char *name)
const char * GetPointResultArrayName(int index)
int GetSideSetResultArrayStatus(const char *name)
int GetNumberOfSideSetArrays()
const char * GetElementBlockArrayName(int index)
int GetFaceSetArrayStatus(const char *name)
void SetElementMapArrayStatus(const char *name, int flag)
static const char * GetGlobalElementIdArrayName()
void SetFaceSetResultArrayStatus(const char *name, int flag)
int GetNumberOfElementBlockArrays()
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...
int GetNumberOfFaceResultArrays()
represent and manipulate 3D points
const char * GetElementSetResultArrayName(int index)
int GetNumberOfNodeMapArrays()
int GetNumberOfNodeSetArrays()
void SetEdgeSetArrayStatus(const char *name, int flag)
vtkExodusIIReaderPrivate * Metadata
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
int GetFaceResultArrayStatus(const char *name)
vtkTimeStamp FileNameMTime