VTK
vtkExodusIIReader.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkExodusIIReader.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 /*----------------------------------------------------------------------------
16  Copyright (c) Sandia Corporation
17  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
18 ----------------------------------------------------------------------------*/
19 
39 #ifndef vtkExodusIIReader_h
40 #define vtkExodusIIReader_h
41 
42 #include "vtkIOExodusModule.h" // For export macro
44 
45 class vtkDataArray;
46 class vtkDataSet;
47 class vtkExodusIICache;
49 class vtkFloatArray;
50 class vtkGraph;
51 class vtkIntArray;
52 class vtkPoints;
54 
56 {
57 public:
58  static vtkExodusIIReader *New();
60  void PrintSelf(ostream& os, vtkIndent indent);
61 
63  int CanReadFile(const char* fname);
64 
65  //virtual void Modified();
66 
69  virtual unsigned long GetMTime();
70 
74  virtual unsigned long GetMetadataMTime();
75 
77 
78  virtual void SetFileName( const char* fname );
79  vtkGetStringMacro(FileName);
81 
83 
84  virtual void SetXMLFileName( const char* fname );
85  vtkGetStringMacro(XMLFileName);
87 
89 
90  vtkSetMacro(TimeStep, int);
91  vtkGetMacro(TimeStep, int);
93 
95 
97  void SetModeShape(int val)
98  {
99  this->SetTimeStep(val-1);
100  }
102 
104 
108  vtkGetVector2Macro(ModeShapesRange, int);
110 
112 
115  vtkGetVector2Macro(TimeStepRange,int);
117 
119 
128  virtual void SetGenerateObjectIdCellArray( int g );
129  int GetGenerateObjectIdCellArray();
130  vtkBooleanMacro(GenerateObjectIdCellArray, int);
131  static const char *GetObjectIdArrayName() { return "ObjectId"; }
133 
134  virtual void SetGenerateGlobalElementIdArray( int g );
135  int GetGenerateGlobalElementIdArray();
136  vtkBooleanMacro(GenerateGlobalElementIdArray, int);
137 
138  virtual void SetGenerateGlobalNodeIdArray( int g );
139  int GetGenerateGlobalNodeIdArray();
140  vtkBooleanMacro(GenerateGlobalNodeIdArray, int);
141 
142  virtual void SetGenerateImplicitElementIdArray( int g );
143  int GetGenerateImplicitElementIdArray();
144  vtkBooleanMacro(GenerateImplicitElementIdArray, int);
145 
146  virtual void SetGenerateImplicitNodeIdArray( int g );
147  int GetGenerateImplicitNodeIdArray();
148  vtkBooleanMacro(GenerateImplicitNodeIdArray, int);
149 
150  virtual void SetGenerateFileIdArray( int f );
151  int GetGenerateFileIdArray();
152  vtkBooleanMacro(GenerateFileIdArray, int);
153  virtual void SetFileId( int f );
154  int GetFileId();
155 
156 //BTX
158 
163  enum {
164  SEARCH_TYPE_ELEMENT=0,
168  ID_NOT_FOUND=-234121312
169  };
170  // NOTE: GetNumberOfObjectTypes must be updated whenever you add an entry to enum ObjectType {...}
171  enum ObjectType {
172  // match Exodus macros from exodusII.h and exodusII_ext.h
173  EDGE_BLOCK = 6,
174  FACE_BLOCK = 8,
175  ELEM_BLOCK = 1,
176  NODE_SET = 2,
177  EDGE_SET = 7,
178  FACE_SET = 9,
179  SIDE_SET = 3,
180  ELEM_SET = 10,
181  NODE_MAP = 5,
182  EDGE_MAP = 11,
183  FACE_MAP = 12,
184  ELEM_MAP = 4,
185  GLOBAL = 13,
186  NODAL = 14,
187  // extended values (not in Exodus headers) for use with SetAllArrayStatus:
188  ASSEMBLY = 60,
189  PART = 61,
190  MATERIAL = 62,
191  HIERARCHY = 63,
192  // extended values (not in Exodus headers) for use in cache keys:
193  QA_RECORDS = 103,
194  INFO_RECORDS = 104,
195  GLOBAL_TEMPORAL = 102,
196  NODAL_TEMPORAL = 101,
197  ELEM_BLOCK_TEMPORAL = 100,
198  GLOBAL_CONN = 99,
199  ELEM_BLOCK_ELEM_CONN = 98,
200  ELEM_BLOCK_FACE_CONN = 97,
201  ELEM_BLOCK_EDGE_CONN = 96,
202  FACE_BLOCK_CONN = 95,
203  EDGE_BLOCK_CONN = 94,
204  ELEM_SET_CONN = 93,
205  SIDE_SET_CONN = 92,
206  FACE_SET_CONN = 91,
207  EDGE_SET_CONN = 90,
208  NODE_SET_CONN = 89,
209  NODAL_COORDS = 88,
210  OBJECT_ID = 87,
211  IMPLICIT_ELEMENT_ID = 108,
212  IMPLICIT_NODE_ID = 107,
213  GLOBAL_ELEMENT_ID = 86,
214  GLOBAL_NODE_ID = 85,
215  ELEMENT_ID = 84,
216  NODE_ID = 83,
217  NODAL_SQUEEZEMAP = 82,
218  ELEM_BLOCK_ATTRIB = 81,
219  FACE_BLOCK_ATTRIB = 80,
220  EDGE_BLOCK_ATTRIB = 79,
221  FACE_ID = 105,
222  EDGE_ID = 106,
223  ENTITY_COUNTS = 109
224  };
225 //ETX
226  static const char* GetGlobalElementIdArrayName() { return "GlobalElementId"; }
227  static const char* GetPedigreeElementIdArrayName() { return "PedigreeElementId"; }
228  static int GetGlobalElementID( vtkDataSet *data, int localID );
229  static int GetGlobalElementID ( vtkDataSet *data, int localID,
230  int searchType );
231  static const char* GetImplicitElementIdArrayName() { return "ImplicitElementId"; }
233 
234  static const char* GetGlobalFaceIdArrayName() { return "GlobalFaceId"; }
235  static const char* GetPedigreeFaceIdArrayName() { return "PedigreeFaceId"; }
236  static int GetGlobalFaceID( vtkDataSet *data, int localID );
237  static int GetGlobalFaceID ( vtkDataSet *data, int localID,
238  int searchType );
239  static const char* GetImplicitFaceIdArrayName() { return "ImplicitFaceId"; }
240 
241  static const char* GetGlobalEdgeIdArrayName() { return "GlobalEdgeId"; }
242  static const char* GetPedigreeEdgeIdArrayName() { return "PedigreeEdgeId"; }
243  static int GetGlobalEdgeID( vtkDataSet *data, int localID );
244  static int GetGlobalEdgeID ( vtkDataSet *data, int localID,
245  int searchType );
246  static const char* GetImplicitEdgeIdArrayName() { return "ImplicitEdgeId"; }
247 
249 
253  static const char* GetGlobalNodeIdArrayName() { return "GlobalNodeId"; }
254  static const char* GetPedigreeNodeIdArrayName() { return "PedigreeNodeId"; }
255  static int GetGlobalNodeID( vtkDataSet *data, int localID );
256  static int GetGlobalNodeID( vtkDataSet *data, int localID,
257  int searchType );
258  static const char* GetImplicitNodeIdArrayName() { return "ImplicitNodeId"; }
260 
263  static const char* GetSideSetSourceElementIdArrayName() { return "SourceElementId"; }
264 
267  static const char* GetSideSetSourceElementSideArrayName() { return "SourceElementSide"; }
269 
273  virtual void SetApplyDisplacements( int d );
274  int GetApplyDisplacements();
275  vtkBooleanMacro(ApplyDisplacements, int);
276  virtual void SetDisplacementMagnitude( float s );
277  float GetDisplacementMagnitude();
279 
281 
284  virtual void SetHasModeShapes( int ms );
285  int GetHasModeShapes();
286  vtkBooleanMacro(HasModeShapes,int);
288 
290 
296  virtual void SetModeShapeTime( double phase );
297  double GetModeShapeTime();
299 
301 
306  virtual void SetAnimateModeShapes(int flag);
307  int GetAnimateModeShapes();
308  vtkBooleanMacro(AnimateModeShapes, int);
310 
312 
313  const char* GetTitle();
314  int GetDimensionality();
315  int GetNumberOfTimeSteps();
317 
318  int GetNumberOfNodesInFile();
319  int GetNumberOfEdgesInFile();
320  int GetNumberOfFacesInFile();
321  int GetNumberOfElementsInFile();
322 
323  int GetObjectTypeFromName( const char* name );
324  const char* GetObjectTypeName( int );
325 
326  int GetNumberOfNodes();
327  int GetNumberOfObjects( int objectType );
328  int GetNumberOfEntriesInObject( int objectType, int objectIndex );
329  int GetObjectId( int objectType, int objectIndex );
330  const char* GetObjectName( int objectType, int objectIndex );
331  int GetObjectIndex( int objectType, const char* objectName );
332  int GetObjectIndex( int objectType, int id );
333  int GetObjectStatus( int objectType, int objectIndex );
334  int GetObjectStatus( int objectType, const char* objectName )
335  { return this->GetObjectStatus( objectType, this->GetObjectIndex( objectType, objectName ) ); }
336  void SetObjectStatus( int objectType, int objectIndex, int status );
337  void SetObjectStatus( int objectType, const char* objectName, int status );
338 
340 
345  int GetNumberOfObjectArrays( int objectType );
346  const char* GetObjectArrayName( int objectType, int arrayIndex );
347  int GetObjectArrayIndex( int objectType, const char* arrayName );
348  int GetNumberOfObjectArrayComponents( int objectType, int arrayIndex );
349  int GetObjectArrayStatus( int objectType, int arrayIndex );
350  int GetObjectArrayStatus( int objectType, const char* arrayName )
351  { return this->GetObjectArrayStatus( objectType, this->GetObjectArrayIndex( objectType, arrayName ) ); }
352  void SetObjectArrayStatus( int objectType, int arrayIndex, int status );
353  void SetObjectArrayStatus( int objectType, const char* arrayName, int status );
355 
357 
362  int GetNumberOfObjectAttributes( int objectType, int objectIndex );
363  const char* GetObjectAttributeName( int objectType, int objectIndex, int attribIndex );
364  int GetObjectAttributeIndex( int objectType, int objectIndex, const char* attribName );
365  int GetObjectAttributeStatus( int objectType, int objectIndex, int attribIndex );
366  int GetObjectAttributeStatus( int objectType, int objectIndex, const char* attribName )
367  { return this->GetObjectAttributeStatus( objectType, objectIndex,
368  this->GetObjectAttributeIndex( objectType, objectIndex, attribName ) ); }
369  void SetObjectAttributeStatus( int objectType, int objectIndex, int attribIndex, int status );
370  void SetObjectAttributeStatus( int objectType, int objectIndex, const char* attribName, int status )
371  { this->SetObjectAttributeStatus( objectType, objectIndex,
372  this->GetObjectAttributeIndex( objectType, objectIndex, attribName ), status ); }
374 
375  virtual vtkIdType GetTotalNumberOfNodes();
376  virtual vtkIdType GetTotalNumberOfEdges();
377  virtual vtkIdType GetTotalNumberOfFaces();
378  virtual vtkIdType GetTotalNumberOfElements();
379 
381 
385  int GetNumberOfPartArrays();
386  const char* GetPartArrayName(int arrayIdx);
387  int GetPartArrayID( const char *name );
388  const char* GetPartBlockInfo(int arrayIdx);
389  void SetPartArrayStatus(int index, int flag);
390  void SetPartArrayStatus(const char*, int flag);
391  int GetPartArrayStatus(int index);
392  int GetPartArrayStatus(const char*);
394 
395 
397 
401  int GetNumberOfMaterialArrays();
402  const char* GetMaterialArrayName(int arrayIdx);
403  int GetMaterialArrayID( const char *name );
404  void SetMaterialArrayStatus(int index, int flag);
405  void SetMaterialArrayStatus(const char*, int flag);
406  int GetMaterialArrayStatus(int index);
407  int GetMaterialArrayStatus(const char*);
409 
411 
415  int GetNumberOfAssemblyArrays();
416  const char* GetAssemblyArrayName(int arrayIdx);
417  int GetAssemblyArrayID( const char *name );
418  void SetAssemblyArrayStatus(int index, int flag);
419  void SetAssemblyArrayStatus(const char*, int flag);
420  int GetAssemblyArrayStatus(int index);
421  int GetAssemblyArrayStatus(const char*);
423 
425 
432  int GetNumberOfHierarchyArrays();
433  const char* GetHierarchyArrayName(int arrayIdx);
434  void SetHierarchyArrayStatus(int index, int flag);
435  void SetHierarchyArrayStatus(const char*, int flag);
436  int GetHierarchyArrayStatus(int index);
437  int GetHierarchyArrayStatus(const char*);
439 
440  vtkGetMacro(DisplayType,int);
441  virtual void SetDisplayType(int type);
442 
444  int IsValidVariable( const char *type, const char *name );
445 
447  int GetVariableID ( const char *type, const char *name );
448 
449  void SetAllArrayStatus( int otype, int status );
450  // Helper functions
451  //static int StringsEqual(const char* s1, char* s2);
452  //static void StringUppercase(const char* str, char* upperstr);
453  //static char *StrDupWithNew(const char *s);
454 
455  // time series query functions
456  int GetTimeSeriesData( int ID, const char *vName, const char *vType,
457  vtkFloatArray *result );
458 
459 
460 
462  { return this->GetNumberOfObjects(EDGE_BLOCK); }
463  const char* GetEdgeBlockArrayName(int index)
464  { return this->GetObjectName(EDGE_BLOCK, index); }
465  int GetEdgeBlockArrayStatus(const char* name)
466  { return this->GetObjectStatus(EDGE_BLOCK, name); }
467  void SetEdgeBlockArrayStatus(const char* name, int flag)
468  { this->SetObjectStatus(EDGE_BLOCK, name, flag); }
469 
471  { return this->GetNumberOfObjects(FACE_BLOCK); }
472  const char* GetFaceBlockArrayName(int index)
473  { return this->GetObjectName(FACE_BLOCK, index); }
474  int GetFaceBlockArrayStatus(const char* name)
475  { return this->GetObjectStatus(FACE_BLOCK, name); }
476  void SetFaceBlockArrayStatus(const char* name, int flag)
477  { this->SetObjectStatus(FACE_BLOCK, name, flag); }
478 
480  { return this->GetNumberOfObjects(ELEM_BLOCK); }
482  { return this->GetObjectName(ELEM_BLOCK, index); }
484  { return this->GetObjectStatus(ELEM_BLOCK, name); }
485  void SetElementBlockArrayStatus(const char* name, int flag)
486  { this->SetObjectStatus(ELEM_BLOCK, name, flag); }
487 
489  { return this->GetNumberOfObjectArrays(GLOBAL); }
491  { return this->GetObjectArrayName(GLOBAL, index); }
493  { return this->GetObjectArrayStatus(GLOBAL, name); }
494  void SetGlobalResultArrayStatus(const char* name, int flag)
495  { this->SetObjectArrayStatus(GLOBAL, name, flag); }
496 
498  { return this->GetNumberOfObjectArrays(NODAL); }
500  { return this->GetObjectArrayName(NODAL, index); }
502  { return this->GetObjectArrayStatus(NODAL, name); }
503  void SetPointResultArrayStatus(const char* name, int flag)
504  { this->SetObjectArrayStatus(NODAL, name, flag); }
505 
507  { return this->GetNumberOfObjectArrays(EDGE_BLOCK); }
508  const char* GetEdgeResultArrayName(int index)
509  { return this->GetObjectArrayName(EDGE_BLOCK, index); }
511  { return this->GetObjectArrayStatus(EDGE_BLOCK, name); }
512  void SetEdgeResultArrayStatus(const char* name, int flag)
513  { this->SetObjectArrayStatus(EDGE_BLOCK, name, flag); }
514 
516  { return this->GetNumberOfObjectArrays(FACE_BLOCK); }
517  const char* GetFaceResultArrayName(int index)
518  { return this->GetObjectArrayName(FACE_BLOCK, index); }
520  { return this->GetObjectArrayStatus(FACE_BLOCK, name); }
521  void SetFaceResultArrayStatus(const char* name, int flag)
522  { this->SetObjectArrayStatus(FACE_BLOCK, name, flag); }
523 
525  { return this->GetNumberOfObjectArrays(ELEM_BLOCK); }
527  { return this->GetObjectArrayName(ELEM_BLOCK, index); }
529  { return this->GetObjectArrayStatus(ELEM_BLOCK, name); }
530  void SetElementResultArrayStatus(const char* name, int flag)
531  { this->SetObjectArrayStatus(ELEM_BLOCK, name, flag); }
532 
533 
535  { return this->GetNumberOfObjects(NODE_MAP); }
536  const char* GetNodeMapArrayName(int index)
537  { return this->GetObjectName(NODE_MAP, index); }
538  int GetNodeMapArrayStatus(const char* name)
539  { return this->GetObjectStatus(NODE_MAP, name); }
540  void SetNodeMapArrayStatus(const char* name, int flag)
541  { this->SetObjectStatus(NODE_MAP, name, flag); }
542 
544  { return this->GetNumberOfObjects(EDGE_MAP); }
545  const char* GetEdgeMapArrayName(int index)
546  { return this->GetObjectName(EDGE_MAP, index); }
547  int GetEdgeMapArrayStatus(const char* name)
548  { return this->GetObjectStatus(EDGE_MAP, name); }
549  void SetEdgeMapArrayStatus(const char* name, int flag)
550  { this->SetObjectStatus(EDGE_MAP, name, flag); }
551 
553  { return this->GetNumberOfObjects(FACE_MAP); }
554  const char* GetFaceMapArrayName(int index)
555  { return this->GetObjectName(FACE_MAP, index); }
556  int GetFaceMapArrayStatus(const char* name)
557  { return this->GetObjectStatus(FACE_MAP, name); }
558  void SetFaceMapArrayStatus(const char* name, int flag)
559  { this->SetObjectStatus(FACE_MAP, name, flag); }
560 
562  { return this->GetNumberOfObjects(ELEM_MAP); }
563  const char* GetElementMapArrayName(int index)
564  { return this->GetObjectName(ELEM_MAP, index); }
566  { return this->GetObjectStatus(ELEM_MAP, name); }
567  void SetElementMapArrayStatus(const char* name, int flag)
568  { this->SetObjectStatus(ELEM_MAP, name, flag); }
569 
571  { return this->GetNumberOfObjects(NODE_SET); }
572  const char* GetNodeSetArrayName(int index)
573  { return this->GetObjectName(NODE_SET, index); }
574  int GetNodeSetArrayStatus(const char* name)
575  { return this->GetObjectStatus(NODE_SET, name); }
576  void SetNodeSetArrayStatus(const char* name, int flag)
577  { this->SetObjectStatus(NODE_SET, name, flag); }
578 
580  { return this->GetNumberOfObjects(SIDE_SET); }
581  const char* GetSideSetArrayName(int index)
582  { return this->GetObjectName(SIDE_SET, index); }
583  int GetSideSetArrayStatus(const char* name)
584  { return this->GetObjectStatus(SIDE_SET, name); }
585  void SetSideSetArrayStatus(const char* name, int flag)
586  { this->SetObjectStatus(SIDE_SET, name, flag); }
587 
589  { return this->GetNumberOfObjects(EDGE_SET); }
590  const char* GetEdgeSetArrayName(int index)
591  { return this->GetObjectName(EDGE_SET, index); }
592  int GetEdgeSetArrayStatus(const char* name)
593  { return this->GetObjectStatus(EDGE_SET, name); }
594  void SetEdgeSetArrayStatus(const char* name, int flag)
595  { this->SetObjectStatus(EDGE_SET, name, flag); }
596 
598  { return this->GetNumberOfObjects(FACE_SET); }
599  const char* GetFaceSetArrayName(int index)
600  { return this->GetObjectName(FACE_SET, index); }
601  int GetFaceSetArrayStatus(const char* name)
602  { return this->GetObjectStatus(FACE_SET, name); }
603  void SetFaceSetArrayStatus(const char* name, int flag)
604  { this->SetObjectStatus(FACE_SET, name, flag); }
605 
607  { return this->GetNumberOfObjects(ELEM_SET); }
608  const char* GetElementSetArrayName(int index)
609  { return this->GetObjectName(ELEM_SET, index); }
611  { return this->GetObjectStatus(ELEM_SET, name); }
612  void SetElementSetArrayStatus(const char* name, int flag)
613  { this->SetObjectStatus(ELEM_SET, name, flag); }
614 
615 
617  { return this->GetNumberOfObjectArrays(NODE_SET); }
619  { return this->GetObjectArrayName(NODE_SET, index); }
621  { return this->GetObjectArrayStatus(NODE_SET, name); }
622  void SetNodeSetResultArrayStatus(const char* name, int flag)
623  { this->SetObjectArrayStatus(NODE_SET, name, flag); }
624 
626  { return this->GetNumberOfObjectArrays(SIDE_SET); }
628  { return this->GetObjectArrayName(SIDE_SET, index); }
630  { return this->GetObjectArrayStatus(SIDE_SET, name); }
631  void SetSideSetResultArrayStatus(const char* name, int flag)
632  { this->SetObjectArrayStatus(SIDE_SET, name, flag); }
633 
635  { return this->GetNumberOfObjectArrays(EDGE_SET); }
637  { return this->GetObjectArrayName(EDGE_SET, index); }
639  { return this->GetObjectArrayStatus(EDGE_SET, name); }
640  void SetEdgeSetResultArrayStatus(const char* name, int flag)
641  { this->SetObjectArrayStatus(EDGE_SET, name, flag); }
642 
644  { return this->GetNumberOfObjectArrays(FACE_SET); }
646  { return this->GetObjectArrayName(FACE_SET, index); }
648  { return this->GetObjectArrayStatus(FACE_SET, name); }
649  void SetFaceSetResultArrayStatus(const char* name, int flag)
650  { this->SetObjectArrayStatus(FACE_SET, name, flag); }
651 
653  { return this->GetNumberOfObjectArrays(ELEM_SET); }
655  { return this->GetObjectArrayName(ELEM_SET, index); }
657  { return this->GetObjectArrayStatus(ELEM_SET, name); }
658  void SetElementSetResultArrayStatus(const char* name, int flag)
659  { this->SetObjectArrayStatus(ELEM_SET, name, flag); }
660 
665  void Reset();
666 
672  void ResetSettings();
673 
675  void ResetCache();
676 
678  void SetCacheSize(double CacheSize);
679 
681  double GetCacheSize();
682 
684 
693  void SetSqueezePoints(bool sp);
694  bool GetSqueezePoints();
696 
697  virtual void Dump();
698 
701  vtkGraph* GetSIL();
702 
704 
705  vtkGetMacro(SILUpdateStamp, int);
707 
708 protected:
711 
712  // helper for finding IDs
713  static int GetIDHelper ( const char *arrayName, vtkDataSet *data, int localID, int searchType );
714  static int GetGlobalID( const char *arrayName, vtkDataSet *data, int localID, int searchType );
715 
716  virtual void SetMetadata( vtkExodusIIReaderPrivate* );
717  vtkGetObjectMacro(Metadata,vtkExodusIIReaderPrivate);
718 
724  bool FindXMLFile();
725 
726  // Time query function. Called by ExecuteInformation().
727  // Fills the TimestepValues array.
728  void GetAllTimes(vtkInformationVector*);
729 
731  void AdvertiseTimeSteps( vtkInformation* outputInfo );
732 
736  //int RequestDataOverTime( vtkInformation *, vtkInformationVector **, vtkInformationVector *);
737 
738  // Parameters for controlling what is read in.
739  char* FileName;
740  char* XMLFileName;
741  int TimeStep;
742  int TimeStepRange[2];
745 
746  // Information specific for exodus files.
747 
748  //1=display Block names
749  //2=display Part names
750  //3=display Material names
752 
753  // Metadata containing a description of the currently open file.
755 
757 
758  friend class vtkPExodusIIReader;
759 private:
760  vtkExodusIIReader(const vtkExodusIIReader&); // Not implemented
761  void operator=(const vtkExodusIIReader&); // Not implemented
762 
763  void AddDisplacements(vtkUnstructuredGrid* output);
764  int ModeShapesRange[2];
765 };
766 
767 #endif
const char * GetEdgeResultArrayName(int index)
static const char * GetGlobalNodeIdArrayName()
const char * GetSideSetResultArrayName(int index)
static const char * GetImplicitElementIdArrayName()
const char * GetEdgeSetArrayName(int index)
void SetElementSetResultArrayStatus(const char *name, int flag)
int GetFaceMapArrayStatus(const char *name)
const char * GetEdgeSetResultArrayName(int index)
void SetEdgeResultArrayStatus(const char *name, int flag)
void SetNodeSetArrayStatus(const char *name, int flag)
Store vtkAlgorithm input/output information.
const char * GetEdgeBlockArrayName(int index)
void SetNodeMapArrayStatus(const char *name, int flag)
void SetEdgeSetResultArrayStatus(const char *name, int flag)
abstract class to specify dataset behavior
Definition: vtkDataSet.h:61
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
Definition: vtkTimeStamp.h:34
int GetElementSetResultArrayStatus(const char *name)
int GetElementBlockArrayStatus(const char *name)
const char * GetElementSetArrayName(int index)
dynamic, self-adjusting array of float
Definition: vtkFloatArray.h:45
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)
int vtkIdType
Definition: vtkType.h:247
This class holds metadata for an Exodus file.
Superclass for algorithms that produce only vtkMultiBlockDataSet as output.
void SetPointResultArrayStatus(const char *name, int flag)
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()
Base class for graph data types.
Definition: vtkGraph.h:288
int GetNodeSetArrayStatus(const char *name)
dynamic, self-adjusting array of int
Definition: vtkIntArray.h:49
void SetEdgeMapArrayStatus(const char *name, int flag)
int GetNumberOfNodeSetResultArrays()
int GetSideSetArrayStatus(const char *name)
const char * GetNodeSetResultArrayName(int index)
const char * GetElementMapArrayName(int index)
virtual unsigned long GetMTime()
a simple class to control print indentation
Definition: vtkIndent.h:38
void SetElementSetArrayStatus(const char *name, int flag)
static const char * GetObjectIdArrayName()
Read Exodus II files (.exii)
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)
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:54
void SetFaceMapArrayStatus(const char *name, int flag)
vtkTimeStamp XMLFileNameMTime
static const char * GetGlobalEdgeIdArrayName()
static const char * GetGlobalFaceIdArrayName()
static const char * GetPedigreeFaceIdArrayName()
#define VTKIOEXODUS_EXPORT
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)
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)
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)
Store zero or more vtkInformation instances.
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)
static const char * GetSideSetSourceElementSideArrayName()
represent and manipulate 3D points
Definition: vtkPoints.h:38
const char * GetElementSetResultArrayName(int index)
void SetEdgeSetArrayStatus(const char *name, int flag)
vtkExodusIIReaderPrivate * Metadata
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
int GetFaceResultArrayStatus(const char *name)
vtkTimeStamp FileNameMTime