39 #ifndef __vtkExodusIIReader_h
40 #define __vtkExodusIIReader_h
64 int CanReadFile(
const char* fname);
75 virtual unsigned long GetMetadataMTime();
79 virtual void SetFileName(
const char* fname );
80 vtkGetStringMacro(FileName);
85 virtual void SetXMLFileName(
const char* fname );
86 vtkGetStringMacro(XMLFileName);
91 vtkSetMacro(TimeStep,
int);
92 vtkGetMacro(TimeStep,
int);
100 this->SetTimeStep(val-1);
106 vtkGetVector2Macro(TimeStepRange,
int);
107 vtkSetVector2Macro(TimeStepRange,
int);
120 virtual void SetGenerateObjectIdCellArray(
int g );
121 int GetGenerateObjectIdCellArray();
122 vtkBooleanMacro(GenerateObjectIdCellArray,
int);
126 virtual void SetGenerateGlobalElementIdArray(
int g );
127 int GetGenerateGlobalElementIdArray();
128 vtkBooleanMacro(GenerateGlobalElementIdArray,
int);
130 virtual void SetGenerateGlobalNodeIdArray(
int g );
131 int GetGenerateGlobalNodeIdArray();
132 vtkBooleanMacro(GenerateGlobalNodeIdArray,
int);
134 virtual void SetGenerateImplicitElementIdArray(
int g );
135 int GetGenerateImplicitElementIdArray();
136 vtkBooleanMacro(GenerateImplicitElementIdArray,
int);
138 virtual void SetGenerateImplicitNodeIdArray(
int g );
139 int GetGenerateImplicitNodeIdArray();
140 vtkBooleanMacro(GenerateImplicitNodeIdArray,
int);
142 virtual void SetGenerateFileIdArray(
int f );
143 int GetGenerateFileIdArray();
144 vtkBooleanMacro(GenerateFileIdArray,
int);
145 virtual void SetFileId(
int f );
156 SEARCH_TYPE_ELEMENT=0,
160 ID_NOT_FOUND=-234121312
187 GLOBAL_TEMPORAL = 102,
188 NODAL_TEMPORAL = 101,
189 ELEM_BLOCK_TEMPORAL = 100,
191 ELEM_BLOCK_ELEM_CONN = 98,
192 ELEM_BLOCK_FACE_CONN = 97,
193 ELEM_BLOCK_EDGE_CONN = 96,
194 FACE_BLOCK_CONN = 95,
195 EDGE_BLOCK_CONN = 94,
203 IMPLICIT_ELEMENT_ID = 108,
204 IMPLICIT_NODE_ID = 107,
205 GLOBAL_ELEMENT_ID = 86,
209 NODAL_SQUEEZEMAP = 82,
210 ELEM_BLOCK_ATTRIB = 81,
211 FACE_BLOCK_ATTRIB = 80,
212 EDGE_BLOCK_ATTRIB = 79,
265 virtual void SetApplyDisplacements(
int d );
266 int GetApplyDisplacements();
267 vtkBooleanMacro(ApplyDisplacements,
int);
268 virtual void SetDisplacementMagnitude(
float s );
269 float GetDisplacementMagnitude();
276 virtual void SetHasModeShapes(
int ms );
277 int GetHasModeShapes();
278 vtkBooleanMacro(HasModeShapes,
int);
288 virtual void SetModeShapeTime(
double phase );
289 double GetModeShapeTime();
298 virtual void SetAnimateModeShapes(
int flag);
299 int GetAnimateModeShapes();
300 vtkBooleanMacro(AnimateModeShapes,
int);
305 const char* GetTitle();
306 int GetDimensionality();
307 int GetNumberOfTimeSteps();
310 int GetNumberOfNodesInFile();
311 int GetNumberOfEdgesInFile();
312 int GetNumberOfFacesInFile();
313 int GetNumberOfElementsInFile();
315 int GetObjectTypeFromName(
const char*
name );
316 const char* GetObjectTypeName(
int );
318 int GetNumberOfNodes();
319 int GetNumberOfObjects(
int objectType );
320 int GetNumberOfEntriesInObject(
int objectType,
int objectIndex );
321 int GetObjectId(
int objectType,
int objectIndex );
322 const char* GetObjectName(
int objectType,
int objectIndex );
323 int GetObjectIndex(
int objectType,
const char* objectName );
324 int GetObjectIndex(
int objectType,
int id );
325 int GetObjectStatus(
int objectType,
int objectIndex );
327 {
return this->GetObjectStatus( objectType, this->GetObjectIndex( objectType, objectName ) ); }
328 void SetObjectStatus(
int objectType,
int objectIndex,
int status );
329 void SetObjectStatus(
int objectType,
const char* objectName,
int status );
337 int GetNumberOfObjectArrays(
int objectType );
338 const char* GetObjectArrayName(
int objectType,
int arrayIndex );
339 int GetObjectArrayIndex(
int objectType,
const char* arrayName );
340 int GetNumberOfObjectArrayComponents(
int objectType,
int arrayIndex );
341 int GetObjectArrayStatus(
int objectType,
int arrayIndex );
343 {
return this->GetObjectArrayStatus( objectType, this->GetObjectArrayIndex( objectType, arrayName ) ); }
344 void SetObjectArrayStatus(
int objectType,
int arrayIndex,
int status );
345 void SetObjectArrayStatus(
int objectType,
const char* arrayName,
int status );
354 int GetNumberOfObjectAttributes(
int objectType,
int objectIndex );
355 const char* GetObjectAttributeName(
int objectType,
int objectIndex,
int attribIndex );
356 int GetObjectAttributeIndex(
int objectType,
int objectIndex,
const char* attribName );
357 int GetObjectAttributeStatus(
int objectType,
int objectIndex,
int attribIndex );
359 {
return this->GetObjectAttributeStatus( objectType, objectIndex,
360 this->GetObjectAttributeIndex( objectType, objectIndex, attribName ) ); }
361 void SetObjectAttributeStatus(
int objectType,
int objectIndex,
int attribIndex,
int status );
363 { this->SetObjectAttributeStatus( objectType, objectIndex,
364 this->GetObjectAttributeIndex( objectType, objectIndex, attribName ), status ); }
367 virtual vtkIdType GetTotalNumberOfNodes();
368 virtual vtkIdType GetTotalNumberOfEdges();
369 virtual vtkIdType GetTotalNumberOfFaces();
370 virtual vtkIdType GetTotalNumberOfElements();
377 int GetNumberOfPartArrays();
378 const char* GetPartArrayName(
int arrayIdx);
379 int GetPartArrayID(
const char *
name );
380 const char* GetPartBlockInfo(
int arrayIdx);
381 void SetPartArrayStatus(
int index,
int flag);
382 void SetPartArrayStatus(
const char*,
int flag);
383 int GetPartArrayStatus(
int index);
384 int GetPartArrayStatus(
const char*);
393 int GetNumberOfMaterialArrays();
394 const char* GetMaterialArrayName(
int arrayIdx);
395 int GetMaterialArrayID(
const char *
name );
396 void SetMaterialArrayStatus(
int index,
int flag);
397 void SetMaterialArrayStatus(
const char*,
int flag);
398 int GetMaterialArrayStatus(
int index);
399 int GetMaterialArrayStatus(
const char*);
407 int GetNumberOfAssemblyArrays();
408 const char* GetAssemblyArrayName(
int arrayIdx);
409 int GetAssemblyArrayID(
const char *
name );
410 void SetAssemblyArrayStatus(
int index,
int flag);
411 void SetAssemblyArrayStatus(
const char*,
int flag);
412 int GetAssemblyArrayStatus(
int index);
413 int GetAssemblyArrayStatus(
const char*);
424 int GetNumberOfHierarchyArrays();
425 const char* GetHierarchyArrayName(
int arrayIdx);
426 void SetHierarchyArrayStatus(
int index,
int flag);
427 void SetHierarchyArrayStatus(
const char*,
int flag);
428 int GetHierarchyArrayStatus(
int index);
429 int GetHierarchyArrayStatus(
const char*);
432 vtkGetMacro(DisplayType,
int);
433 virtual void SetDisplayType(
int type);
440 vtkBooleanMacro(ExodusModelMetadata,
int);
441 vtkSetMacro(ExodusModelMetadata,
int);
442 vtkGetMacro(ExodusModelMetadata,
int);
456 vtkSetMacro(PackExodusModelOntoOutput,
int);
457 vtkGetMacro(PackExodusModelOntoOutput,
int);
458 vtkBooleanMacro(PackExodusModelOntoOutput,
int);
461 int IsValidVariable(
const char *
type,
const char *
name );
464 int GetVariableID (
const char *
type,
const char *
name );
466 void SetAllArrayStatus(
int otype,
int status );
473 int GetTimeSeriesData(
int ID,
const char *vName,
const char *vType,
479 {
return this->GetNumberOfObjects(EDGE_BLOCK); }
481 {
return this->GetObjectName(EDGE_BLOCK, index); }
483 {
return this->GetObjectStatus(EDGE_BLOCK, name); }
485 { this->SetObjectStatus(EDGE_BLOCK, name, flag); }
488 {
return this->GetNumberOfObjects(FACE_BLOCK); }
490 {
return this->GetObjectName(FACE_BLOCK, index); }
492 {
return this->GetObjectStatus(FACE_BLOCK, name); }
494 { this->SetObjectStatus(FACE_BLOCK, name, flag); }
497 {
return this->GetNumberOfObjects(ELEM_BLOCK); }
499 {
return this->GetObjectName(ELEM_BLOCK, index); }
501 {
return this->GetObjectStatus(ELEM_BLOCK, name); }
503 { this->SetObjectStatus(ELEM_BLOCK, name, flag); }
506 {
return this->GetNumberOfObjectArrays(GLOBAL); }
508 {
return this->GetObjectArrayName(GLOBAL, index); }
510 {
return this->GetObjectArrayStatus(GLOBAL, name); }
512 { this->SetObjectArrayStatus(GLOBAL, name, flag); }
515 {
return this->GetNumberOfObjectArrays(NODAL); }
517 {
return this->GetObjectArrayName(NODAL, index); }
519 {
return this->GetObjectArrayStatus(NODAL, name); }
521 { this->SetObjectArrayStatus(NODAL, name, flag); }
524 {
return this->GetNumberOfObjectArrays(EDGE_BLOCK); }
526 {
return this->GetObjectArrayName(EDGE_BLOCK, index); }
528 {
return this->GetObjectArrayStatus(EDGE_BLOCK, name); }
530 { this->SetObjectArrayStatus(EDGE_BLOCK, name, flag); }
533 {
return this->GetNumberOfObjectArrays(FACE_BLOCK); }
535 {
return this->GetObjectArrayName(FACE_BLOCK, index); }
537 {
return this->GetObjectArrayStatus(FACE_BLOCK, name); }
539 { this->SetObjectArrayStatus(FACE_BLOCK, name, flag); }
542 {
return this->GetNumberOfObjectArrays(ELEM_BLOCK); }
544 {
return this->GetObjectArrayName(ELEM_BLOCK, index); }
546 {
return this->GetObjectArrayStatus(ELEM_BLOCK, name); }
548 { this->SetObjectArrayStatus(ELEM_BLOCK, name, flag); }
552 {
return this->GetNumberOfObjects(NODE_MAP); }
554 {
return this->GetObjectName(NODE_MAP, index); }
556 {
return this->GetObjectStatus(NODE_MAP, name); }
558 { this->SetObjectStatus(NODE_MAP, name, flag); }
561 {
return this->GetNumberOfObjects(EDGE_MAP); }
563 {
return this->GetObjectName(EDGE_MAP, index); }
565 {
return this->GetObjectStatus(EDGE_MAP, name); }
567 { this->SetObjectStatus(EDGE_MAP, name, flag); }
570 {
return this->GetNumberOfObjects(FACE_MAP); }
572 {
return this->GetObjectName(FACE_MAP, index); }
574 {
return this->GetObjectStatus(FACE_MAP, name); }
576 { this->SetObjectStatus(FACE_MAP, name, flag); }
579 {
return this->GetNumberOfObjects(ELEM_MAP); }
581 {
return this->GetObjectName(ELEM_MAP, index); }
583 {
return this->GetObjectStatus(ELEM_MAP, name); }
585 { this->SetObjectStatus(ELEM_MAP, name, flag); }
588 {
return this->GetNumberOfObjects(NODE_SET); }
590 {
return this->GetObjectName(NODE_SET, index); }
592 {
return this->GetObjectStatus(NODE_SET, name); }
594 { this->SetObjectStatus(NODE_SET, name, flag); }
597 {
return this->GetNumberOfObjects(SIDE_SET); }
599 {
return this->GetObjectName(SIDE_SET, index); }
601 {
return this->GetObjectStatus(SIDE_SET, name); }
603 { this->SetObjectStatus(SIDE_SET, name, flag); }
606 {
return this->GetNumberOfObjects(EDGE_SET); }
608 {
return this->GetObjectName(EDGE_SET, index); }
610 {
return this->GetObjectStatus(EDGE_SET, name); }
612 { this->SetObjectStatus(EDGE_SET, name, flag); }
615 {
return this->GetNumberOfObjects(FACE_SET); }
617 {
return this->GetObjectName(FACE_SET, index); }
619 {
return this->GetObjectStatus(FACE_SET, name); }
621 { this->SetObjectStatus(FACE_SET, name, flag); }
624 {
return this->GetNumberOfObjects(ELEM_SET); }
626 {
return this->GetObjectName(ELEM_SET, index); }
628 {
return this->GetObjectStatus(ELEM_SET, name); }
630 { this->SetObjectStatus(ELEM_SET, name, flag); }
634 {
return this->GetNumberOfObjectArrays(NODE_SET); }
636 {
return this->GetObjectArrayName(NODE_SET, index); }
638 {
return this->GetObjectArrayStatus(NODE_SET, name); }
640 { this->SetObjectArrayStatus(NODE_SET, name, flag); }
643 {
return this->GetNumberOfObjectArrays(SIDE_SET); }
645 {
return this->GetObjectArrayName(SIDE_SET, index); }
647 {
return this->GetObjectArrayStatus(SIDE_SET, name); }
649 { this->SetObjectArrayStatus(SIDE_SET, name, flag); }
652 {
return this->GetNumberOfObjectArrays(EDGE_SET); }
654 {
return this->GetObjectArrayName(EDGE_SET, index); }
656 {
return this->GetObjectArrayStatus(EDGE_SET, name); }
658 { this->SetObjectArrayStatus(EDGE_SET, name, flag); }
661 {
return this->GetNumberOfObjectArrays(FACE_SET); }
663 {
return this->GetObjectArrayName(FACE_SET, index); }
665 {
return this->GetObjectArrayStatus(FACE_SET, name); }
667 { this->SetObjectArrayStatus(FACE_SET, name, flag); }
670 {
return this->GetNumberOfObjectArrays(ELEM_SET); }
672 {
return this->GetObjectArrayName(ELEM_SET, index); }
674 {
return this->GetObjectArrayStatus(ELEM_SET, name); }
676 { this->SetObjectArrayStatus(ELEM_SET, name, flag); }
693 void SetFastPathObjectType(
const char *
type);
698 void SetFastPathIdType(
const char *
type);
714 void ResetSettings();
720 void SetCacheSize(
double CacheSize);
723 double GetCacheSize();
735 void SetSqueezePoints(
bool sp);
736 bool GetSqueezePoints();
742 virtual void UpdateTimeInformation();
752 vtkGetMacro(SILUpdateStamp,
int);
758 vtkGetMacro(ProducedFastPathOutput,
bool);
767 virtual void NewExodusModel();
770 static int GetIDHelper (
const char *arrayName,
vtkDataSet *
data,
int localID,
int searchType );
771 static int GetGlobalID(
const char *arrayName,
vtkDataSet *
data,
int localID,
int searchType );
801 int TimeStepRange[2];
const char * GetEdgeResultArrayName(int index)
GLsizei GLsizei GLenum GLenum const GLvoid * data
static const char * GetGlobalNodeIdArrayName()
const char * GetSideSetResultArrayName(int index)
int GetNumberOfElementSetArrays()
GLuint GLuint GLsizei GLenum type
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()
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)
void SetElementResultArrayStatus(const char *name, int flag)
int GetEdgeResultArrayStatus(const char *name)
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 *)
const char * GetEdgeMapArrayName(int index)
int GetNodeSetResultArrayStatus(const char *name)
void SetFaceBlockArrayStatus(const char *name, int flag)
virtual int ProcessRequest(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
const char * GetGlobalResultArrayName(int index)
int GetNumberOfSideSetResultArrays()
int GetElementSetArrayStatus(const char *name)
static vtkMultiBlockDataSetAlgorithm * New()
static const char * GetImplicitNodeIdArrayName()
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)
GLuint const GLchar * name
const char * GetNodeSetResultArrayName(int index)
const char * GetElementMapArrayName(int index)
virtual unsigned long GetMTime()
a simple class to control print indentation
void SetElementSetArrayStatus(const char *name, int flag)
int GetNumberOfFaceBlockArrays()
static const char * GetObjectIdArrayName()
int GetElementMapArrayStatus(const char *name)
static const char * GetSideSetSourceElementIdArrayName()
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
void SetFaceMapArrayStatus(const char *name, int flag)
vtkTimeStamp XMLFileNameMTime
static const char * GetGlobalEdgeIdArrayName()
static const char * GetGlobalFaceIdArrayName()
int GetNumberOfEdgeBlockArrays()
static const char * GetPedigreeFaceIdArrayName()
#define VTKIOEXODUS_EXPORT
int PackExodusModelOntoOutput
int GetEdgeBlockArrayStatus(const char *name)
int GetObjectArrayStatus(int objectType, const char *arrayName)
static const char * GetPedigreeElementIdArrayName()
const char * GetFaceBlockArrayName(int index)
static const char * GetPedigreeNodeIdArrayName()
const char * GetElementResultArrayName(int index)
bool ProducedFastPathOutput
void SetSideSetResultArrayStatus(const char *name, int flag)
int GetEdgeSetArrayStatus(const char *name)
const char * GetFaceResultArrayName(int index)
int GetNumberOfElementSetResultArrays()
const char * GetSideSetArrayName(int index)
vtkExodusModel * ExodusModel
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)
void SetObjectAttributeStatus(int objectType, int objectIndex, const char *attribName, int status)
int GetPointResultArrayStatus(const char *name)
const char * GetFaceMapArrayName(int index)
void SetModeShape(int val)
void SetFaceResultArrayStatus(const char *name, int flag)
int GetFaceBlockArrayStatus(const char *name)
void PrintSelf(ostream &os, vtkIndent indent)
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()
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 *)
int GetFaceResultArrayStatus(const char *name)
vtkTimeStamp FileNameMTime