VTK
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Friends | List of all members
vtkExodusIIReaderPrivate Class Reference

This class holds metadata for an Exodus file. More...

#include <vtkExodusIIReaderPrivate.h>

Inheritance diagram for vtkExodusIIReaderPrivate:
[legend]
Collaboration diagram for vtkExodusIIReaderPrivate:
[legend]

Classes

struct  ArrayInfoType
 A struct to hold information about time-varying arrays. More...
 
struct  AssemblyInfoType
 
struct  BlockInfoType
 A struct to hold information about Exodus blocks. More...
 
struct  BlockSetInfoType
 A struct to hold information about Exodus blocks or sets (they have some members in common) More...
 
struct  MapInfoType
 A struct to hold information about Exodus maps. More...
 
struct  MaterialInfoType
 
struct  ObjectInfoType
 A struct to hold information about Exodus objects (blocks, sets, maps) More...
 
struct  PartInfoType
 A struct to hold information about Exodus blocks. More...
 
struct  SetInfoType
 A struct to hold information about Exodus sets. More...
 

Public Types

enum  GlomTypes {
  Scalar =0, Vector2 =1, Vector3 =2, SymmetricTensor =3,
  IntegrationPoint =4
}
 Tags to indicate how single-component Exodus arrays are glommed (aggregated) into multi-component VTK arrays. More...
 
enum  ArraySourceTypes { Result =0, Attribute =1, Map =2, Generated =3 }
 Tags to indicate the source of values for an array. More...
 
typedef vtkObject Superclass
 

Public Member Functions

void PrintData (ostream &os, vtkIndent indent)
 
virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class. More...
 
vtkExodusIIReaderPrivateNewInstance () const
 
int OpenFile (const char *filename)
 Open an ExodusII file for reading. Returns 0 on success. More...
 
int CloseFile ()
 Close any ExodusII file currently open for reading. Returns 0 on success. More...
 
int RequestInformation ()
 Get metadata for an open file with handle exoid. More...
 
vtkMutableDirectedGraphGetSIL ()
 Returns the SIL. This valid only after BuildSIL() has been called. More...
 
int RequestData (vtkIdType timeStep, vtkMultiBlockDataSet *output)
 Read requested data and store in unstructured grid. More...
 
int SetUpEmptyGrid (vtkMultiBlockDataSet *output)
 Description: Prepare a data set with the proper structure and arrays but no cells. More...
 
void Reset ()
 Reset the class so that another file may be read. More...
 
void ResetSettings ()
 Return user-specified variables to their default values. More...
 
void ResetCache ()
 Clears out any data in the cache and restores it to its initial state. More...
 
void SetCacheSize (double size)
 Set the size of the cache in MiB. More...
 
virtual double GetCacheSize ()
 Get the size of the cache in MiB. More...
 
int GetNumberOfTimeSteps ()
 Return the number of time steps in the open file. More...
 
virtual int GetSqueezePoints ()
 Return whether subsequent RequestData() calls will produce the minimal point set required to represent the output. More...
 
void SetSqueezePoints (int sp)
 Set whether subsequent RequestData() calls will produce the minimal point set required to represent the output. More...
 
virtual void SqueezePointsOn ()
 Convenience routines that for producing (or not) the minimal point set required to represent the output. More...
 
virtual void SqueezePointsOff ()
 
int GetNumberOfNodes ()
 Return the number of nodes in the output (depends on SqueezePoints) More...
 
int GetNumberOfObjectsOfType (int otype)
 Returns the number of objects of a given type (e.g., EX_ELEM_BLOCK, EX_NODE_SET, ...). More...
 
int GetNumberOfObjectArraysOfType (int otype)
 Returns the number of arrays defined over objects of a given type (e.g., EX_ELEM_BLOCK, EX_NODE_SET, ...). More...
 
const char * GetObjectName (int otype, int i)
 For a given object type, returns the name of the i-th object. More...
 
int GetObjectId (int otype, int i)
 For a given object type, return the user-assigned ID of the i-th object. More...
 
int GetObjectSize (int otype, int i)
 For a given object type, return the size of the i-th object. More...
 
int GetObjectStatus (int otype, int i)
 For a given object type, returns the status of the i-th object. More...
 
int GetUnsortedObjectStatus (int otype, int i)
 For a given object type, returns the status of the i-th object, where i is an index into the unsorted object array. More...
 
void SetObjectStatus (int otype, int i, int stat)
 For a given object type, sets the status of the i-th object. More...
 
void SetUnsortedObjectStatus (int otype, int i, int stat)
 For a given object type, sets the status of the i-th object, where i is an index into the unsorted object array. More...
 
const char * GetObjectArrayName (int otype, int i)
 For a given object type, returns the name of the i-th array. More...
 
int GetNumberOfObjectArrayComponents (int otype, int i)
 For a given object type, returns the number of components of the i-th array. More...
 
int GetObjectArrayStatus (int otype, int i)
 For a given object type, returns the status of the i-th array. More...
 
void SetObjectArrayStatus (int otype, int i, int stat)
 For a given object type, sets the status of the i-th array. More...
 
int GetNumberOfObjectAttributes (int objectType, int objectIndex)
 Unlike object arrays, attributes are only defined over blocks (not sets) and are defined on a per-block (not a per-block-type) basis. More...
 
const char * GetObjectAttributeName (int objectType, int objectIndex, int attributeIndex)
 
int GetObjectAttributeIndex (int objectType, int objectIndex, const char *attribName)
 
int GetObjectAttributeStatus (int objectType, int objectIndex, int attribIndex)
 
void SetObjectAttributeStatus (int objectType, int objectIndex, int attribIndex, int status)
 
virtual vtkTypeBool GetGenerateObjectIdArray ()
 Generate an array containing the block or set ID associated with each cell. More...
 
virtual void SetGenerateObjectIdArray (vtkTypeBool)
 
virtual void SetGenerateGlobalElementIdArray (vtkTypeBool)
 
virtual vtkTypeBool GetGenerateGlobalElementIdArray ()
 
virtual void SetGenerateGlobalNodeIdArray (vtkTypeBool)
 
virtual vtkTypeBool GetGenerateGlobalNodeIdArray ()
 
virtual void SetGenerateImplicitElementIdArray (vtkTypeBool)
 
virtual vtkTypeBool GetGenerateImplicitElementIdArray ()
 
virtual void SetGenerateImplicitNodeIdArray (vtkTypeBool)
 
virtual vtkTypeBool GetGenerateImplicitNodeIdArray ()
 
virtual void SetGenerateFileIdArray (vtkTypeBool)
 Should we generate an array defined over all cells (whether they are members of blocks or sets) indicating the source file? More...
 
virtual vtkTypeBool GetGenerateFileIdArray ()
 
virtual void SetFileId (int)
 Set/get the number that identifies this file in a series of files (defaults to 0). More...
 
virtual int GetFileId ()
 
virtual void SetApplyDisplacements (vtkTypeBool d)
 
virtual vtkTypeBool GetApplyDisplacements ()
 
virtual void SetDisplacementMagnitude (double s)
 
virtual double GetDisplacementMagnitude ()
 
virtual void SetHasModeShapes (int)
 
virtual int GetHasModeShapes ()
 
virtual void SetModeShapeTime (double)
 
virtual double GetModeShapeTime ()
 
virtual void SetAnimateModeShapes (int)
 
virtual int GetAnimateModeShapes ()
 
virtual void SetIgnoreFileTime (bool)
 
virtual bool GetIgnoreFileTime ()
 
vtkDataArrayFindDisplacementVectors (int timeStep)
 
const struct ex_init_params * GetModelParams () const
 
virtual void SetParser (vtkExodusIIReaderParser *)
 
virtual vtkExodusIIReaderParserGetParser ()
 
void SetTimesOverrides (const std::vector< double > &times)
 
int GetNumberOfParts ()
 
const char * GetPartName (int idx)
 
const char * GetPartBlockInfo (int idx)
 
int GetPartStatus (int idx)
 
int GetPartStatus (const vtkStdString &name)
 
void SetPartStatus (int idx, int on)
 
void SetPartStatus (const vtkStdString &name, int flag)
 
int GetNumberOfMaterials ()
 
const char * GetMaterialName (int idx)
 
int GetMaterialStatus (int idx)
 
int GetMaterialStatus (const vtkStdString &name)
 
void SetMaterialStatus (int idx, int on)
 
void SetMaterialStatus (const vtkStdString &name, int flag)
 
int GetNumberOfAssemblies ()
 
const char * GetAssemblyName (int idx)
 
int GetAssemblyStatus (int idx)
 
int GetAssemblyStatus (const vtkStdString &name)
 
void SetAssemblyStatus (int idx, int on)
 
void SetAssemblyStatus (const vtkStdString &name, int flag)
 
void SetFastPathObjectType (vtkExodusIIReader::ObjectType type)
 
void SetFastPathObjectId (vtkIdType id)
 
virtual void SetFastPathIdType (const char *)
 
bool IsXMLMetadataValid ()
 
void GetInitialObjectStatus (int otype, ObjectInfoType *info)
 For a given object type, looks for an object in the collection of initial objects of the same name, or if the name is empty, then of the same id as "info". More...
 
void GetInitialObjectArrayStatus (int otype, ArrayInfoType *info)
 For a given array type, looks for an object in the collection of initial objects of the same name, or if the name is empty, then of the same id as "info". More...
 
void SetInitialObjectStatus (int otype, const char *name, int stat)
 For a given object type, creates and stores an ObjectInfoType object using the given name and status. More...
 
void SetInitialObjectArrayStatus (int otype, const char *name, int stat)
 For a given array type, creates and stores an ArrayInfoType object using the given name and status. More...
 
int UpdateTimeInformation ()
 
- Public Member Functions inherited from vtkObject
 vtkBaseTypeMacro (vtkObject, vtkObjectBase)
 
virtual void DebugOn ()
 Turn debugging output on. More...
 
virtual void DebugOff ()
 Turn debugging output off. More...
 
bool GetDebug ()
 Get the value of the debug flag. More...
 
void SetDebug (bool debugFlag)
 Set the value of the debug flag. More...
 
virtual void Modified ()
 Update the modification time for this object. More...
 
virtual vtkMTimeType GetMTime ()
 Return this object's modified time. More...
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses. More...
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
vtkTypeBool HasObserver (unsigned long event)
 
vtkTypeBool HasObserver (const char *event)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
vtkCommandGetCommand (unsigned long tag)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
void RemoveObserver (vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
void RemoveObservers (unsigned long event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
void RemoveObservers (const char *event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
vtkTypeBool HasObserver (unsigned long event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
vtkTypeBool HasObserver (const char *event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Allow user to set the AbortFlagOn() with the return value of the callback method. More...
 
int InvokeEvent (unsigned long event, void *callData)
 This method invokes an event and return whether the event was aborted or not. More...
 
int InvokeEvent (const char *event, void *callData)
 This method invokes an event and return whether the event was aborted or not. More...
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 Return the class name as a string. More...
 
virtual void Delete ()
 Delete a VTK object. More...
 
virtual void FastDelete ()
 Delete a reference to this object. More...
 
void InitializeObjectBase ()
 
void Print (ostream &os)
 Print an object to an ostream. More...
 
virtual void Register (vtkObjectBase *o)
 Increase the reference count (mark as used by another object). More...
 
virtual void UnRegister (vtkObjectBase *o)
 Decrease the reference count (release by another object). More...
 
int GetReferenceCount ()
 Return the current reference count of this object. More...
 
void SetReferenceCount (int)
 Sets the reference count. More...
 
void PrintRevisions (ostream &)
 Legacy. More...
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses. More...
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses. More...
 

Static Public Member Functions

static vtkExodusIIReaderPrivateNew ()
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkExodusIIReaderPrivateSafeDownCast (vtkObjectBase *o)
 
static const char * GetObjectIdArrayName ()
 
static const char * GetGlobalElementIdArrayName ()
 
static const char * GetGlobalNodeIdArrayName ()
 
static const char * GetImplicitElementIdArrayName ()
 
static const char * GetImplicitNodeIdArrayName ()
 
static const char * GetFileIdArrayName ()
 
static const char * GetGlobalVariableValuesArrayName ()
 
static const char * GetGlobalVariableNamesArrayName ()
 
- Static Public Member Functions inherited from vtkObject
static vtkObjectNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
 
static void BreakOnError ()
 This method is called when vtkErrorMacro executes. More...
 
static void SetGlobalWarningDisplay (int val)
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static void GlobalWarningDisplayOn ()
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static void GlobalWarningDisplayOff ()
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static int GetGlobalWarningDisplay ()
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
- Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool IsTypeOf (const char *name)
 Return 1 if this class type is the same type of (or a subclass of) the named class. More...
 
static vtkObjectBaseNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
 

Public Attributes

vtkTimeStamp InformationTimeStamp
 Time stamp from last time we were in RequestInformation. More...
 
bool ProducedFastPathOutput
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkExodusIIReaderPrivate ()
 
 ~vtkExodusIIReaderPrivate () override
 
void BuildSIL ()
 Build SIL. This must be called only after RequestInformation(). More...
 
int VerifyIntegrationPointGlom (int nn, char **np, vtksys::RegularExpression &re, vtkStdString &field, vtkStdString &ele)
 Returns true when order and text of names are consistent with integration points. More...
 
void GlomArrayNames (int i, int num_obj, int num_vars, char **var_names, int *truth_tab)
 Aggregate Exodus array names into VTK arrays with multiple components. More...
 
void PrepareGeneratedArrayInfo ()
 Add generated array information to array info lists. More...
 
int AssembleOutputConnectivity (vtkIdType timeStep, int otyp, int oidx, int conntypidx, BlockSetInfoType *bsinfop, vtkUnstructuredGrid *output)
 Read connectivity information and populate an unstructured grid with cells corresponding to a single block or set. More...
 
int AssembleOutputPoints (vtkIdType timeStep, BlockSetInfoType *bsinfop, vtkUnstructuredGrid *output)
 Fill the output grid's point coordinates array. More...
 
int AssembleOutputPointArrays (vtkIdType timeStep, BlockSetInfoType *bsinfop, vtkUnstructuredGrid *output)
 Add the requested arrays to the output grid's point data. More...
 
int AssembleOutputCellArrays (vtkIdType timeStep, int otyp, int oidx, BlockSetInfoType *bsinfop, vtkUnstructuredGrid *output)
 Add the requested arrays to the output grid's cell data. More...
 
int AssembleOutputProceduralArrays (vtkIdType timeStep, int otyp, int oidx, vtkUnstructuredGrid *output)
 Add procedurally generated arrays to an output mesh. More...
 
int AssembleOutputGlobalArrays (vtkIdType timeStep, int otyp, int oidx, BlockSetInfoType *bsinfop, vtkUnstructuredGrid *output)
 Add mesh-global field data such as QA records to the output mesh. More...
 
int AssembleOutputPointMaps (vtkIdType timeStep, BlockSetInfoType *bsinfop, vtkUnstructuredGrid *output)
 Add maps to an output mesh. More...
 
int AssembleOutputCellMaps (vtkIdType timeStep, int otyp, int oidx, BlockSetInfoType *bsinfop, vtkUnstructuredGrid *output)
 
int AssembleArraysOverTime (vtkMultiBlockDataSet *output)
 Add fast-path time-varying data to field data of an output block or set. More...
 
vtkIdType GetPolyhedronFaceConnectivity (vtkIdType fileLocalFaceId, vtkIdType *&facePtIds)
 Fetch the face-connectivity for one face of one polyhedron. More...
 
void FreePolyhedronFaceArrays ()
 Free any arrays held by PolyhedralFaceConnArrays (for polyhedral-face-connectivity lookup). More...
 
void InsertBlockPolyhedra (BlockInfoType *binfo, vtkIntArray *facesPerCell, vtkIdTypeArray *exoCellConn)
 Insert polyhedral cells (called from InsertBlockCells when a block is polyhedral). More...
 
void InsertBlockCells (int otyp, int obj, int conn_type, int timeStep, BlockInfoType *binfop)
 Insert cells from a specified block into a mesh. More...
 
void InsertSetCells (int otyp, int obj, int conn_type, int timeStep, SetInfoType *sinfop)
 Insert cells from a specified set into a mesh. More...
 
void AddPointArray (vtkDataArray *src, BlockSetInfoType *bsinfop, vtkUnstructuredGrid *output)
 Add a point array to an output grid's point data, squeezing if necessary. More...
 
void InsertSetNodeCopies (vtkIdTypeArray *refs, int otyp, int obj, SetInfoType *sinfo)
 Insert cells referenced by a node set. More...
 
void InsertSetCellCopies (vtkIdTypeArray *refs, int otyp, int obj, SetInfoType *sinfo)
 Insert cells referenced by an edge, face, or element set. More...
 
void InsertSetSides (vtkIdTypeArray *refs, int otyp, int obj, SetInfoType *sinfo)
 Insert cells referenced by a side set. More...
 
vtkDataArrayGetCacheOrRead (vtkExodusIICacheKey)
 Return an array for the specified cache key. More...
 
int GetConnTypeIndexFromConnType (int ctyp)
 Return the index of an object type (in a private list of all object types). More...
 
int GetObjectTypeIndexFromObjectType (int otyp)
 Return the index of an object type (in a private list of all object types). More...
 
int GetNumberOfObjectsAtTypeIndex (int typeIndex)
 Return the number of objects of the given type. More...
 
ObjectInfoTypeGetObjectInfo (int typeIndex, int objectIndex)
 Return a pointer to the ObjectInfo of the specified type and index. More...
 
ObjectInfoTypeGetSortedObjectInfo (int objectType, int objectIndex)
 Return a pointer to the ObjectInfo of the specified type and index, but using indices sorted by object ID. More...
 
ObjectInfoTypeGetUnsortedObjectInfo (int objectType, int objectIndex)
 Return a pointer to the ObjectInfo of the specified type and index, but using indices sorted by object ID. More...
 
int GetBlockIndexFromFileGlobalId (int otyp, int refId)
 Get the index of the block containing the entity referenced by the specified file-global ID. More...
 
BlockInfoTypeGetBlockFromFileGlobalId (int otyp, int refId)
 Get the block containing the entity referenced by the specified file-global ID. More...
 
vtkIdType GetSqueezePointId (BlockSetInfoType *bsinfop, int i)
 Find or create a new SqueezePoint ID (unique sequential list of points referenced by cells in blocks/sets with Status == 1) More...
 
void DetermineVtkCellType (BlockInfoType &binfo)
 Determine the VTK cell type for a given edge/face/element block. More...
 
ArrayInfoTypeFindArrayInfoByName (int otyp, const char *name)
 Find an ArrayInfo object for a specific object type using the name as a key. More...
 
int IsObjectTypeBlock (int otyp)
 Does the specified object type match? Avoid using these... More...
 
int IsObjectTypeSet (int otyp)
 
int IsObjectTypeMap (int otyp)
 
int GetObjectTypeFromMapType (int mtyp)
 Given a map type (NODE_MAP, EDGE_MAP, ...) return the associated object type (NODAL, EDGE_BLOCK, ...) or vice-versa. More...
 
int GetMapTypeFromObjectType (int otyp)
 
int GetTemporalTypeFromObjectType (int otyp)
 
int GetSetTypeFromSetConnType (int sctyp)
 Given a set connectivity type (NODE_SET_CONN, ...), return the associated object type (NODE_SET, ...) or vice-versa. More...
 
int GetBlockConnTypeFromBlockType (int btyp)
 Given a block type (EDGE_BLOCK, ...), return the associated block connectivity type (EDGE_BLOCK_CONN, ...) or vice-versa. More...
 
void RemoveBeginningAndTrailingSpaces (int len, char **names, int maxNameLength)
 Function to trim space from names retrieved with ex_get_var_names. More...
 
void ClearConnectivityCaches ()
 Delete any cached connectivity information (for all blocks and sets) More...
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
 ~vtkObject () override
 
void RegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr)
 These methods allow a command to exclusively grab all events. More...
 
void InternalReleaseFocus ()
 These methods allow a command to exclusively grab all events. More...
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void CollectRevisions (ostream &)
 
virtual void ReportReferences (vtkGarbageCollector *)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Protected Attributes

std::map< int, std::vector< BlockInfoType > > BlockInfo
 Maps a block type (EX_ELEM_BLOCK, EX_FACE_BLOCK, ...) to a list of blocks of that type. More...
 
std::map< int, std::vector< SetInfoType > > SetInfo
 Maps a set type (EX_ELEM_SET, ..., EX_NODE_SET) to a list of sets of that type. More...
 
std::map< int, std::vector< MapInfoType > > MapInfo
 Maps a map type (EX_ELEM_MAP, ..., EX_NODE_MAP) to a list of maps of that type. More...
 
std::vector< PartInfoTypePartInfo
 
std::vector< MaterialInfoTypeMaterialInfo
 
std::vector< AssemblyInfoTypeAssemblyInfo
 
std::map< int, std::vector< int > > SortedObjectIndices
 Maps an object type to vector of indices that reorder objects of that type by their IDs. More...
 
std::map< int, std::vector< ArrayInfoType > > ArrayInfo
 Maps an object type (EX_ELEM_BLOCK, EX_NODE_SET, ...) to a list of arrays. More...
 
std::map< int, std::vector< ArrayInfoType > > InitialArrayInfo
 Maps an object type (EX_ELEM_BLOCK, EX_NODE_SET, ...) to a list of arrays defined on that type. More...
 
std::map< int, std::vector< ObjectInfoType > > InitialObjectInfo
 Maps an object type (EX_ELEM_BLOCK, EX_NODE_SET, ...) to a list of objects defined on that type. More...
 
int AppWordSize
 These aren't the variables you're looking for. More...
 
int DiskWordSize
 
float ExodusVersion
 The version of Exodus that wrote the currently open file (or a negative number otherwise). More...
 
int Exoid
 The handle of the currently open file. More...
 
struct ex_init_params ModelParameters
 Parameters describing the currently open Exodus file. More...
 
std::vector< doubleTimes
 A list of time steps for which results variables are stored. More...
 
bool SkipUpdateTimeInformation
 
double ModeShapeTime
 The time value. More...
 
vtkTypeBool GenerateObjectIdArray
 
vtkTypeBool GenerateGlobalIdArray
 
vtkTypeBool GenerateFileIdArray
 
vtkTypeBool GenerateGlobalElementIdArray
 
vtkTypeBool GenerateGlobalNodeIdArray
 
vtkTypeBool GenerateImplicitElementIdArray
 
vtkTypeBool GenerateImplicitNodeIdArray
 
int FileId
 Defaults to 0. More...
 
vtkExodusIICacheCache
 A least-recently-used cache to hold raw arrays. More...
 
double CacheSize
 The size of the cache in MiB. More...
 
vtkTypeBool ApplyDisplacements
 
float DisplacementMagnitude
 
vtkTypeBool HasModeShapes
 
vtkTypeBool AnimateModeShapes
 
bool IgnoreFileTime
 
int SqueezePoints
 Should the reader output only points used by elements in the output mesh, or all the points. More...
 
vtkExodusIIReaderParent
 Pointer to owning reader... More...
 
vtkExodusIIReaderParserParser
 
std::map< int, std::vector< std::vector< vtkIdType > > > PolyhedralFaceConnArrays
 Face connectivity for polyhedra. More...
 
vtkExodusIIReader::ObjectType FastPathObjectType
 
vtkIdType FastPathObjectId
 
char * FastPathIdType
 
vtkMutableDirectedGraphSIL
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Friends

class vtkExodusIIReader
 
class vtkPExodusIIReader
 

Detailed Description

This class holds metadata for an Exodus file.

Definition at line 23 of file vtkExodusIIReaderPrivate.h.

Member Typedef Documentation

Definition at line 28 of file vtkExodusIIReaderPrivate.h.

Member Enumeration Documentation

Tags to indicate how single-component Exodus arrays are glommed (aggregated) into multi-component VTK arrays.

Enumerator
Scalar 

The array is a scalar.

Vector2 

The array is a 2-D vector.

Vector3 

The array is a 3-D vector.

SymmetricTensor 

The array is a symmetric tensor.

IntegrationPoint 

The array is a set of integration point values.

Definition at line 390 of file vtkExodusIIReaderPrivate.h.

Tags to indicate the source of values for an array.

Enumerator
Result 

The array is composed of results variables.

Attribute 

The array is composed of attributes.

Map 

The array has a corresponding entry in MapInfo.

Generated 

The array is procedurally generated (e.g., BlockId)

Definition at line 400 of file vtkExodusIIReaderPrivate.h.

Constructor & Destructor Documentation

vtkExodusIIReaderPrivate::vtkExodusIIReaderPrivate ( )
protected
vtkExodusIIReaderPrivate::~vtkExodusIIReaderPrivate ( )
overrideprotected

Member Function Documentation

static vtkExodusIIReaderPrivate* vtkExodusIIReaderPrivate::New ( )
static
void vtkExodusIIReaderPrivate::PrintData ( ostream &  os,
vtkIndent  indent 
)
static vtkTypeBool vtkExodusIIReaderPrivate::IsTypeOf ( const char *  type)
static
virtual vtkTypeBool vtkExodusIIReaderPrivate::IsA ( const char *  name)
virtual

Return 1 if this class is the same type of (or a subclass of) the named class.

Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObjectBase.

static vtkExodusIIReaderPrivate* vtkExodusIIReaderPrivate::SafeDownCast ( vtkObjectBase o)
static
virtual vtkObjectBase* vtkExodusIIReaderPrivate::NewInstanceInternal ( ) const
protectedvirtual
vtkExodusIIReaderPrivate* vtkExodusIIReaderPrivate::NewInstance ( ) const
int vtkExodusIIReaderPrivate::OpenFile ( const char *  filename)

Open an ExodusII file for reading. Returns 0 on success.

int vtkExodusIIReaderPrivate::CloseFile ( )

Close any ExodusII file currently open for reading. Returns 0 on success.

int vtkExodusIIReaderPrivate::RequestInformation ( )

Get metadata for an open file with handle exoid.

vtkMutableDirectedGraph* vtkExodusIIReaderPrivate::GetSIL ( )
inline

Returns the SIL. This valid only after BuildSIL() has been called.

Definition at line 41 of file vtkExodusIIReaderPrivate.h.

int vtkExodusIIReaderPrivate::RequestData ( vtkIdType  timeStep,
vtkMultiBlockDataSet output 
)

Read requested data and store in unstructured grid.

int vtkExodusIIReaderPrivate::SetUpEmptyGrid ( vtkMultiBlockDataSet output)

Description: Prepare a data set with the proper structure and arrays but no cells.

This is used by the parallel reader when a process has no files assigned to it.

void vtkExodusIIReaderPrivate::Reset ( )

Reset the class so that another file may be read.

This does not change any user-specified parameters, such as which generated arrays should be present, whether there are mode shapes or time steps, etc. Note that which arrays should be loaded is a more delicate issue; if you set these after RequestInformation has been called, these will not be saved. Any settings you make before RequestInformation is called will be saved because they are stored in InitialArrayInfo and InitialObjectInfo.

void vtkExodusIIReaderPrivate::ResetSettings ( )

Return user-specified variables to their default values.

Calling ResetSettings() and then Reset() will return the class to a state just like it was after New() was called.

void vtkExodusIIReaderPrivate::ResetCache ( )

Clears out any data in the cache and restores it to its initial state.

void vtkExodusIIReaderPrivate::SetCacheSize ( double  size)

Set the size of the cache in MiB.

virtual double vtkExodusIIReaderPrivate::GetCacheSize ( )
virtual

Get the size of the cache in MiB.

int vtkExodusIIReaderPrivate::GetNumberOfTimeSteps ( )
inline

Return the number of time steps in the open file.

You must have called RequestInformation() before invoking this member function.

Definition at line 85 of file vtkExodusIIReaderPrivate.h.

virtual int vtkExodusIIReaderPrivate::GetSqueezePoints ( )
virtual

Return whether subsequent RequestData() calls will produce the minimal point set required to represent the output.

void vtkExodusIIReaderPrivate::SetSqueezePoints ( int  sp)

Set whether subsequent RequestData() calls will produce the minimal point set required to represent the output.

virtual void vtkExodusIIReaderPrivate::SqueezePointsOn ( )
virtual

Convenience routines that for producing (or not) the minimal point set required to represent the output.

virtual void vtkExodusIIReaderPrivate::SqueezePointsOff ( )
virtual
int vtkExodusIIReaderPrivate::GetNumberOfNodes ( )

Return the number of nodes in the output (depends on SqueezePoints)

int vtkExodusIIReaderPrivate::GetNumberOfObjectsOfType ( int  otype)

Returns the number of objects of a given type (e.g., EX_ELEM_BLOCK, EX_NODE_SET, ...).

You must have called RequestInformation before invoking this member function.

int vtkExodusIIReaderPrivate::GetNumberOfObjectArraysOfType ( int  otype)

Returns the number of arrays defined over objects of a given type (e.g., EX_ELEM_BLOCK, EX_NODE_SET, ...).

You must have called RequestInformation before invoking this member function.

N.B.: This method will eventually disappear. Really, what we should be providing is an interface to query the arrays defined on a particular object, not a class of objects. However, until the reader outputs multiblock datasets, we can't be that specific.

const char* vtkExodusIIReaderPrivate::GetObjectName ( int  otype,
int  i 
)

For a given object type, returns the name of the i-th object.

You must have called RequestInformation before invoking this member function.

int vtkExodusIIReaderPrivate::GetObjectId ( int  otype,
int  i 
)

For a given object type, return the user-assigned ID of the i-th object.

You must have called RequestInformation before invoking this member function.

int vtkExodusIIReaderPrivate::GetObjectSize ( int  otype,
int  i 
)

For a given object type, return the size of the i-th object.

The size is the number of entries. As an example, for an element block, it is the number of elements. You must have called RequestInformation before invoking this member function.

int vtkExodusIIReaderPrivate::GetObjectStatus ( int  otype,
int  i 
)

For a given object type, returns the status of the i-th object.

You must have called RequestInformation before invoking this member function.

int vtkExodusIIReaderPrivate::GetUnsortedObjectStatus ( int  otype,
int  i 
)

For a given object type, returns the status of the i-th object, where i is an index into the unsorted object array.

You must have called RequestInformation before invoking this member function.

void vtkExodusIIReaderPrivate::SetObjectStatus ( int  otype,
int  i,
int  stat 
)

For a given object type, sets the status of the i-th object.

You must have called RequestInformation before invoking this member function.

void vtkExodusIIReaderPrivate::SetUnsortedObjectStatus ( int  otype,
int  i,
int  stat 
)

For a given object type, sets the status of the i-th object, where i is an index into the unsorted object array.

You must have called RequestInformation before invoking this member function.

const char* vtkExodusIIReaderPrivate::GetObjectArrayName ( int  otype,
int  i 
)

For a given object type, returns the name of the i-th array.

You must have called RequestInformation before invoking this member function.

int vtkExodusIIReaderPrivate::GetNumberOfObjectArrayComponents ( int  otype,
int  i 
)

For a given object type, returns the number of components of the i-th array.

You must have called RequestInformation before invoking this member function.

int vtkExodusIIReaderPrivate::GetObjectArrayStatus ( int  otype,
int  i 
)

For a given object type, returns the status of the i-th array.

You must have called RequestInformation before invoking this member function.

void vtkExodusIIReaderPrivate::SetObjectArrayStatus ( int  otype,
int  i,
int  stat 
)

For a given object type, sets the status of the i-th array.

You must have called RequestInformation before invoking this member function.

int vtkExodusIIReaderPrivate::GetNumberOfObjectAttributes ( int  objectType,
int  objectIndex 
)

Unlike object arrays, attributes are only defined over blocks (not sets) and are defined on a per-block (not a per-block-type) basis.

In other words, there is no truth table for attributes. This means the interface is different because each block can have a different number of attributes with different names.

const char* vtkExodusIIReaderPrivate::GetObjectAttributeName ( int  objectType,
int  objectIndex,
int  attributeIndex 
)
int vtkExodusIIReaderPrivate::GetObjectAttributeIndex ( int  objectType,
int  objectIndex,
const char *  attribName 
)
int vtkExodusIIReaderPrivate::GetObjectAttributeStatus ( int  objectType,
int  objectIndex,
int  attribIndex 
)
void vtkExodusIIReaderPrivate::SetObjectAttributeStatus ( int  objectType,
int  objectIndex,
int  attribIndex,
int  status 
)
virtual vtkTypeBool vtkExodusIIReaderPrivate::GetGenerateObjectIdArray ( )
virtual

Generate an array containing the block or set ID associated with each cell.

virtual void vtkExodusIIReaderPrivate::SetGenerateObjectIdArray ( vtkTypeBool  )
virtual
static const char* vtkExodusIIReaderPrivate::GetObjectIdArrayName ( )
inlinestatic

Definition at line 214 of file vtkExodusIIReaderPrivate.h.

virtual void vtkExodusIIReaderPrivate::SetGenerateGlobalElementIdArray ( vtkTypeBool  )
virtual
virtual vtkTypeBool vtkExodusIIReaderPrivate::GetGenerateGlobalElementIdArray ( )
virtual
static const char* vtkExodusIIReaderPrivate::GetGlobalElementIdArrayName ( )
inlinestatic

Definition at line 218 of file vtkExodusIIReaderPrivate.h.

virtual void vtkExodusIIReaderPrivate::SetGenerateGlobalNodeIdArray ( vtkTypeBool  )
virtual
virtual vtkTypeBool vtkExodusIIReaderPrivate::GetGenerateGlobalNodeIdArray ( )
virtual
static const char* vtkExodusIIReaderPrivate::GetGlobalNodeIdArrayName ( )
inlinestatic

Definition at line 222 of file vtkExodusIIReaderPrivate.h.

virtual void vtkExodusIIReaderPrivate::SetGenerateImplicitElementIdArray ( vtkTypeBool  )
virtual
virtual vtkTypeBool vtkExodusIIReaderPrivate::GetGenerateImplicitElementIdArray ( )
virtual
static const char* vtkExodusIIReaderPrivate::GetImplicitElementIdArrayName ( )
inlinestatic

Definition at line 226 of file vtkExodusIIReaderPrivate.h.

virtual void vtkExodusIIReaderPrivate::SetGenerateImplicitNodeIdArray ( vtkTypeBool  )
virtual
virtual vtkTypeBool vtkExodusIIReaderPrivate::GetGenerateImplicitNodeIdArray ( )
virtual
static const char* vtkExodusIIReaderPrivate::GetImplicitNodeIdArrayName ( )
inlinestatic

Definition at line 230 of file vtkExodusIIReaderPrivate.h.

virtual void vtkExodusIIReaderPrivate::SetGenerateFileIdArray ( vtkTypeBool  )
virtual

Should we generate an array defined over all cells (whether they are members of blocks or sets) indicating the source file?

virtual vtkTypeBool vtkExodusIIReaderPrivate::GetGenerateFileIdArray ( )
virtual
static const char* vtkExodusIIReaderPrivate::GetFileIdArrayName ( )
inlinestatic

Definition at line 237 of file vtkExodusIIReaderPrivate.h.

virtual void vtkExodusIIReaderPrivate::SetFileId ( int  )
virtual

Set/get the number that identifies this file in a series of files (defaults to 0).

virtual int vtkExodusIIReaderPrivate::GetFileId ( )
virtual
static const char* vtkExodusIIReaderPrivate::GetGlobalVariableValuesArrayName ( )
inlinestatic

Definition at line 243 of file vtkExodusIIReaderPrivate.h.

static const char* vtkExodusIIReaderPrivate::GetGlobalVariableNamesArrayName ( )
inlinestatic

Definition at line 245 of file vtkExodusIIReaderPrivate.h.

virtual void vtkExodusIIReaderPrivate::SetApplyDisplacements ( vtkTypeBool  d)
virtual
virtual vtkTypeBool vtkExodusIIReaderPrivate::GetApplyDisplacements ( )
virtual
virtual void vtkExodusIIReaderPrivate::SetDisplacementMagnitude ( double  s)
virtual
virtual double vtkExodusIIReaderPrivate::GetDisplacementMagnitude ( )
virtual
virtual void vtkExodusIIReaderPrivate::SetHasModeShapes ( int  )
virtual
virtual int vtkExodusIIReaderPrivate::GetHasModeShapes ( )
virtual
virtual void vtkExodusIIReaderPrivate::SetModeShapeTime ( double  )
virtual
virtual double vtkExodusIIReaderPrivate::GetModeShapeTime ( )
virtual
virtual void vtkExodusIIReaderPrivate::SetAnimateModeShapes ( int  )
virtual
virtual int vtkExodusIIReaderPrivate::GetAnimateModeShapes ( )
virtual
virtual void vtkExodusIIReaderPrivate::SetIgnoreFileTime ( bool  )
virtual
virtual bool vtkExodusIIReaderPrivate::GetIgnoreFileTime ( )
virtual
vtkDataArray* vtkExodusIIReaderPrivate::FindDisplacementVectors ( int  timeStep)
const struct ex_init_params* vtkExodusIIReaderPrivate::GetModelParams ( ) const
inline

Definition at line 268 of file vtkExodusIIReaderPrivate.h.

virtual void vtkExodusIIReaderPrivate::SetParser ( vtkExodusIIReaderParser )
virtual
virtual vtkExodusIIReaderParser* vtkExodusIIReaderPrivate::GetParser ( )
virtual
void vtkExodusIIReaderPrivate::SetTimesOverrides ( const std::vector< double > &  times)
inline

Definition at line 421 of file vtkExodusIIReaderPrivate.h.

int vtkExodusIIReaderPrivate::GetNumberOfParts ( )
const char* vtkExodusIIReaderPrivate::GetPartName ( int  idx)
const char* vtkExodusIIReaderPrivate::GetPartBlockInfo ( int  idx)
int vtkExodusIIReaderPrivate::GetPartStatus ( int  idx)
int vtkExodusIIReaderPrivate::GetPartStatus ( const vtkStdString name)
void vtkExodusIIReaderPrivate::SetPartStatus ( int  idx,
int  on 
)
void vtkExodusIIReaderPrivate::SetPartStatus ( const vtkStdString name,
int  flag 
)
int vtkExodusIIReaderPrivate::GetNumberOfMaterials ( )
const char* vtkExodusIIReaderPrivate::GetMaterialName ( int  idx)
int vtkExodusIIReaderPrivate::GetMaterialStatus ( int  idx)
int vtkExodusIIReaderPrivate::GetMaterialStatus ( const vtkStdString name)
void vtkExodusIIReaderPrivate::SetMaterialStatus ( int  idx,
int  on 
)
void vtkExodusIIReaderPrivate::SetMaterialStatus ( const vtkStdString name,
int  flag 
)
int vtkExodusIIReaderPrivate::GetNumberOfAssemblies ( )
const char* vtkExodusIIReaderPrivate::GetAssemblyName ( int  idx)
int vtkExodusIIReaderPrivate::GetAssemblyStatus ( int  idx)
int vtkExodusIIReaderPrivate::GetAssemblyStatus ( const vtkStdString name)
void vtkExodusIIReaderPrivate::SetAssemblyStatus ( int  idx,
int  on 
)
void vtkExodusIIReaderPrivate::SetAssemblyStatus ( const vtkStdString name,
int  flag 
)
void vtkExodusIIReaderPrivate::SetFastPathObjectType ( vtkExodusIIReader::ObjectType  type)
inline

Definition at line 453 of file vtkExodusIIReaderPrivate.h.

void vtkExodusIIReaderPrivate::SetFastPathObjectId ( vtkIdType  id)
inline

Definition at line 455 of file vtkExodusIIReaderPrivate.h.

virtual void vtkExodusIIReaderPrivate::SetFastPathIdType ( const char *  )
virtual
bool vtkExodusIIReaderPrivate::IsXMLMetadataValid ( )
void vtkExodusIIReaderPrivate::GetInitialObjectStatus ( int  otype,
ObjectInfoType info 
)

For a given object type, looks for an object in the collection of initial objects of the same name, or if the name is empty, then of the same id as "info".

If found, info's Status is set to the status of the found object. You DO NOT need to have called RequestInformation before invoking this member function.

void vtkExodusIIReaderPrivate::GetInitialObjectArrayStatus ( int  otype,
ArrayInfoType info 
)

For a given array type, looks for an object in the collection of initial objects of the same name, or if the name is empty, then of the same id as "info".

If found, info's Status is set to the status of the found object. You DO NOT need to have called RequestInformation before invoking this member function.

void vtkExodusIIReaderPrivate::SetInitialObjectStatus ( int  otype,
const char *  name,
int  stat 
)

For a given object type, creates and stores an ObjectInfoType object using the given name and status.

If the name contains a "ID: %d" substring, then it is used to initialize the ObjectInfoType.Id value. You DO NOT need to have called RequestInformation before invoking this member function.

void vtkExodusIIReaderPrivate::SetInitialObjectArrayStatus ( int  otype,
const char *  name,
int  stat 
)

For a given array type, creates and stores an ArrayInfoType object using the given name and status.

You DO NOT need to have called RequestInformation before invoking this member function.

int vtkExodusIIReaderPrivate::UpdateTimeInformation ( )
void vtkExodusIIReaderPrivate::BuildSIL ( )
protected

Build SIL. This must be called only after RequestInformation().

int vtkExodusIIReaderPrivate::VerifyIntegrationPointGlom ( int  nn,
char **  np,
vtksys::RegularExpression &  re,
vtkStdString field,
vtkStdString ele 
)
protected

Returns true when order and text of names are consistent with integration points.

Called from GlomArrayNames().

void vtkExodusIIReaderPrivate::GlomArrayNames ( int  i,
int  num_obj,
int  num_vars,
char **  var_names,
int truth_tab 
)
protected

Aggregate Exodus array names into VTK arrays with multiple components.

void vtkExodusIIReaderPrivate::PrepareGeneratedArrayInfo ( )
protected

Add generated array information to array info lists.

int vtkExodusIIReaderPrivate::AssembleOutputConnectivity ( vtkIdType  timeStep,
int  otyp,
int  oidx,
int  conntypidx,
BlockSetInfoType bsinfop,
vtkUnstructuredGrid output 
)
protected

Read connectivity information and populate an unstructured grid with cells corresponding to a single block or set.

If the connectivity hasn't changed since the last time RequestData was called, this copies a cache to the output.

Otherwise, this routine iterates over all block and set types. For each type, it iterates over all objects of that type. For each object whose status is 1, it reads that object's connectivity entries from cache or disk and inserts cells into CachedConnectivity. If SqueezePoints is on, then connectivity entries are translated as required and PointMap is populated. Finally, CachedConnectivity is shallow-copied to the output.

AssembleOutputConnectivity returns 1 if cache was used, 0 otherwise.

int vtkExodusIIReaderPrivate::AssembleOutputPoints ( vtkIdType  timeStep,
BlockSetInfoType bsinfop,
vtkUnstructuredGrid output 
)
protected

Fill the output grid's point coordinates array.

Returns 1 on success, 0 on failure. Failure occurs when the Exodus library is unable to read the point coordindates array. This can be caused when there is not enough memory or there is a file I/O problem.

int vtkExodusIIReaderPrivate::AssembleOutputPointArrays ( vtkIdType  timeStep,
BlockSetInfoType bsinfop,
vtkUnstructuredGrid output 
)
protected

Add the requested arrays to the output grid's point data.

This adds time-varying results arrays to the grid's vtkPointData object.

int vtkExodusIIReaderPrivate::AssembleOutputCellArrays ( vtkIdType  timeStep,
int  otyp,
int  oidx,
BlockSetInfoType bsinfop,
vtkUnstructuredGrid output 
)
protected

Add the requested arrays to the output grid's cell data.

This adds time-varying results arrays to the grid's vtkCellData object.

int vtkExodusIIReaderPrivate::AssembleOutputProceduralArrays ( vtkIdType  timeStep,
int  otyp,
int  oidx,
vtkUnstructuredGrid output 
)
protected

Add procedurally generated arrays to an output mesh.

Currently, the only array that is procedurally generated is the object id array. Others may be added in the future.

int vtkExodusIIReaderPrivate::AssembleOutputGlobalArrays ( vtkIdType  timeStep,
int  otyp,
int  oidx,
BlockSetInfoType bsinfop,
vtkUnstructuredGrid output 
)
protected

Add mesh-global field data such as QA records to the output mesh.

int vtkExodusIIReaderPrivate::AssembleOutputPointMaps ( vtkIdType  timeStep,
BlockSetInfoType bsinfop,
vtkUnstructuredGrid output 
)
protected

Add maps to an output mesh.

Maps are special integer arrays that may serve as GlobalId fields in vtkDataSetAttributes objects. Maps may be procedurally generated if no map is contained in a file. Maps are not time-varying.

int vtkExodusIIReaderPrivate::AssembleOutputCellMaps ( vtkIdType  timeStep,
int  otyp,
int  oidx,
BlockSetInfoType bsinfop,
vtkUnstructuredGrid output 
)
protected
int vtkExodusIIReaderPrivate::AssembleArraysOverTime ( vtkMultiBlockDataSet output)
protected

Add fast-path time-varying data to field data of an output block or set.

vtkIdType vtkExodusIIReaderPrivate::GetPolyhedronFaceConnectivity ( vtkIdType  fileLocalFaceId,
vtkIdType *&  facePtIds 
)
protected

Fetch the face-connectivity for one face of one polyhedron.

The number of points (or zero) is returned and facePtIds holds a pointer to the connectivity upon exit. The pointer is owned by this object's PolyhedralFaceConnArrays member and must be freed by calling FreePolyhedronFaceConnectivity(). However, you should only free the cache after processing all of the faces of interest (it is currently called once per polyhedral element block) so that the cost of generating the cache can be amortized across many calls.

The point IDs returned in facePtIds do not include any mapping due to SqueezePoints (i.e., GetSqueezePointId is not called on each point). This is because multiple blocks may refer to the same face, but each block will have a different vtkPoints object.

void vtkExodusIIReaderPrivate::FreePolyhedronFaceArrays ( )
protected

Free any arrays held by PolyhedralFaceConnArrays (for polyhedral-face-connectivity lookup).

void vtkExodusIIReaderPrivate::InsertBlockPolyhedra ( BlockInfoType binfo,
vtkIntArray facesPerCell,
vtkIdTypeArray exoCellConn 
)
protected

Insert polyhedral cells (called from InsertBlockCells when a block is polyhedral).

void vtkExodusIIReaderPrivate::InsertBlockCells ( int  otyp,
int  obj,
int  conn_type,
int  timeStep,
BlockInfoType binfop 
)
protected

Insert cells from a specified block into a mesh.

void vtkExodusIIReaderPrivate::InsertSetCells ( int  otyp,
int  obj,
int  conn_type,
int  timeStep,
SetInfoType sinfop 
)
protected

Insert cells from a specified set into a mesh.

void vtkExodusIIReaderPrivate::AddPointArray ( vtkDataArray src,
BlockSetInfoType bsinfop,
vtkUnstructuredGrid output 
)
protected

Add a point array to an output grid's point data, squeezing if necessary.

void vtkExodusIIReaderPrivate::InsertSetNodeCopies ( vtkIdTypeArray refs,
int  otyp,
int  obj,
SetInfoType sinfo 
)
protected

Insert cells referenced by a node set.

void vtkExodusIIReaderPrivate::InsertSetCellCopies ( vtkIdTypeArray refs,
int  otyp,
int  obj,
SetInfoType sinfo 
)
protected

Insert cells referenced by an edge, face, or element set.

void vtkExodusIIReaderPrivate::InsertSetSides ( vtkIdTypeArray refs,
int  otyp,
int  obj,
SetInfoType sinfo 
)
protected

Insert cells referenced by a side set.

vtkDataArray* vtkExodusIIReaderPrivate::GetCacheOrRead ( vtkExodusIICacheKey  )
protected

Return an array for the specified cache key.

If the array was not cached, read it from the file. This function can still return 0 if you are foolish enough to request an array not present in the file, grasshopper.

int vtkExodusIIReaderPrivate::GetConnTypeIndexFromConnType ( int  ctyp)
protected

Return the index of an object type (in a private list of all object types).

This returns a 0-based index if the object type was found and -1 if it was not.

int vtkExodusIIReaderPrivate::GetObjectTypeIndexFromObjectType ( int  otyp)
protected

Return the index of an object type (in a private list of all object types).

This returns a 0-based index if the object type was found and -1 if it was not.

int vtkExodusIIReaderPrivate::GetNumberOfObjectsAtTypeIndex ( int  typeIndex)
protected

Return the number of objects of the given type.

The integer typeIndex is not the type of the object (e.g., EX_ELEM_BLOCK), but is rather the index into the list of all object types (see obj_types in vtkExodusIIReader.cxx).

ObjectInfoType* vtkExodusIIReaderPrivate::GetObjectInfo ( int  typeIndex,
int  objectIndex 
)
protected

Return a pointer to the ObjectInfo of the specified type and index.

The integer typeIndex is not the type of the object (e.g., EX_ELEM_BLOCK), but is rather the index into the list of all object types (see obj_types in vtkExodusIIReader.cxx). The integer objectIndex is not the ID of the object (i.e., the ID stored in the Exodus file), but is rather the index into the list of all objects of the given type.

ObjectInfoType* vtkExodusIIReaderPrivate::GetSortedObjectInfo ( int  objectType,
int  objectIndex 
)
protected

Return a pointer to the ObjectInfo of the specified type and index, but using indices sorted by object ID.

This is the same as GetObjectInfo() except that it uses the SortedObjectIndices member to permute the requested objectIndex and it takes an object type (e.g., EX_ELEM_BLOCK) rather than an object type index.

ObjectInfoType* vtkExodusIIReaderPrivate::GetUnsortedObjectInfo ( int  objectType,
int  objectIndex 
)
protected

Return a pointer to the ObjectInfo of the specified type and index, but using indices sorted by object ID.

This is the same as GetSortedObjectInfo() except that objectIndex directly indexes the object info array rather SortedObjectIndices, and it takes an object type (e.g., EX_ELEM_BLOCK) rather than an object type index.

int vtkExodusIIReaderPrivate::GetBlockIndexFromFileGlobalId ( int  otyp,
int  refId 
)
protected

Get the index of the block containing the entity referenced by the specified file-global ID.

In this case, an entity is an edge, face, or element.

BlockInfoType* vtkExodusIIReaderPrivate::GetBlockFromFileGlobalId ( int  otyp,
int  refId 
)
protected

Get the block containing the entity referenced by the specified file-global ID.

In this case, an entity is an edge, face, or element.

vtkIdType vtkExodusIIReaderPrivate::GetSqueezePointId ( BlockSetInfoType bsinfop,
int  i 
)
protected

Find or create a new SqueezePoint ID (unique sequential list of points referenced by cells in blocks/sets with Status == 1)

void vtkExodusIIReaderPrivate::DetermineVtkCellType ( BlockInfoType binfo)
protected

Determine the VTK cell type for a given edge/face/element block.

ArrayInfoType* vtkExodusIIReaderPrivate::FindArrayInfoByName ( int  otyp,
const char *  name 
)
protected

Find an ArrayInfo object for a specific object type using the name as a key.

int vtkExodusIIReaderPrivate::IsObjectTypeBlock ( int  otyp)
protected

Does the specified object type match? Avoid using these...

they aren't robust against new types being implemented.

int vtkExodusIIReaderPrivate::IsObjectTypeSet ( int  otyp)
protected
int vtkExodusIIReaderPrivate::IsObjectTypeMap ( int  otyp)
protected
int vtkExodusIIReaderPrivate::GetObjectTypeFromMapType ( int  mtyp)
protected

Given a map type (NODE_MAP, EDGE_MAP, ...) return the associated object type (NODAL, EDGE_BLOCK, ...) or vice-versa.

int vtkExodusIIReaderPrivate::GetMapTypeFromObjectType ( int  otyp)
protected
int vtkExodusIIReaderPrivate::GetTemporalTypeFromObjectType ( int  otyp)
protected
int vtkExodusIIReaderPrivate::GetSetTypeFromSetConnType ( int  sctyp)
protected

Given a set connectivity type (NODE_SET_CONN, ...), return the associated object type (NODE_SET, ...) or vice-versa.

int vtkExodusIIReaderPrivate::GetBlockConnTypeFromBlockType ( int  btyp)
protected

Given a block type (EDGE_BLOCK, ...), return the associated block connectivity type (EDGE_BLOCK_CONN, ...) or vice-versa.

void vtkExodusIIReaderPrivate::RemoveBeginningAndTrailingSpaces ( int  len,
char **  names,
int  maxNameLength 
)
protected

Function to trim space from names retrieved with ex_get_var_names.

This was added because some meshes had displacement arrays named "DISPX ", "DISPY ", "DISPZ " (note trailing spaces), which prevented glomming and use of the vector field for displacements.

void vtkExodusIIReaderPrivate::ClearConnectivityCaches ( )
protected

Delete any cached connectivity information (for all blocks and sets)

Friends And Related Function Documentation

friend class vtkExodusIIReader
friend

Definition at line 412 of file vtkExodusIIReaderPrivate.h.

friend class vtkPExodusIIReader
friend

Definition at line 413 of file vtkExodusIIReaderPrivate.h.

Member Data Documentation

vtkTimeStamp vtkExodusIIReaderPrivate::InformationTimeStamp

Time stamp from last time we were in RequestInformation.

Definition at line 410 of file vtkExodusIIReaderPrivate.h.

bool vtkExodusIIReaderPrivate::ProducedFastPathOutput

Definition at line 495 of file vtkExodusIIReaderPrivate.h.

std::map<int,std::vector<BlockInfoType> > vtkExodusIIReaderPrivate::BlockInfo
protected

Maps a block type (EX_ELEM_BLOCK, EX_FACE_BLOCK, ...) to a list of blocks of that type.

Definition at line 747 of file vtkExodusIIReaderPrivate.h.

std::map<int,std::vector<SetInfoType> > vtkExodusIIReaderPrivate::SetInfo
protected

Maps a set type (EX_ELEM_SET, ..., EX_NODE_SET) to a list of sets of that type.

Definition at line 751 of file vtkExodusIIReaderPrivate.h.

std::map<int,std::vector<MapInfoType> > vtkExodusIIReaderPrivate::MapInfo
protected

Maps a map type (EX_ELEM_MAP, ..., EX_NODE_MAP) to a list of maps of that type.

In old-style files, the only entries will be a single node and a single element map which have no specified ID number or name. In that case, an ID of 0 and a name of "Default" will be given to both.

Definition at line 757 of file vtkExodusIIReaderPrivate.h.

std::vector<PartInfoType> vtkExodusIIReaderPrivate::PartInfo
protected

Definition at line 759 of file vtkExodusIIReaderPrivate.h.

std::vector<MaterialInfoType> vtkExodusIIReaderPrivate::MaterialInfo
protected

Definition at line 760 of file vtkExodusIIReaderPrivate.h.

std::vector<AssemblyInfoType> vtkExodusIIReaderPrivate::AssemblyInfo
protected

Definition at line 761 of file vtkExodusIIReaderPrivate.h.

std::map<int,std::vector<int> > vtkExodusIIReaderPrivate::SortedObjectIndices
protected

Maps an object type to vector of indices that reorder objects of that type by their IDs.

This is used by the user interface to access blocks, sets, and maps in ascending order. It is not used internally.

Definition at line 767 of file vtkExodusIIReaderPrivate.h.

std::map<int,std::vector<ArrayInfoType> > vtkExodusIIReaderPrivate::ArrayInfo
protected

Maps an object type (EX_ELEM_BLOCK, EX_NODE_SET, ...) to a list of arrays.

Definition at line 770 of file vtkExodusIIReaderPrivate.h.

std::map<int,std::vector<ArrayInfoType> > vtkExodusIIReaderPrivate::InitialArrayInfo
protected

Maps an object type (EX_ELEM_BLOCK, EX_NODE_SET, ...) to a list of arrays defined on that type.

Used to store initial status of arrays before RequestInformation can be called.

Definition at line 776 of file vtkExodusIIReaderPrivate.h.

std::map<int,std::vector<ObjectInfoType> > vtkExodusIIReaderPrivate::InitialObjectInfo
protected

Maps an object type (EX_ELEM_BLOCK, EX_NODE_SET, ...) to a list of objects defined on that type.

Used to store initial status of objects before RequestInformation can be called.

Definition at line 782 of file vtkExodusIIReaderPrivate.h.

int vtkExodusIIReaderPrivate::AppWordSize
protected

These aren't the variables you're looking for.

Definition at line 785 of file vtkExodusIIReaderPrivate.h.

int vtkExodusIIReaderPrivate::DiskWordSize
protected

Definition at line 786 of file vtkExodusIIReaderPrivate.h.

float vtkExodusIIReaderPrivate::ExodusVersion
protected

The version of Exodus that wrote the currently open file (or a negative number otherwise).

Definition at line 791 of file vtkExodusIIReaderPrivate.h.

int vtkExodusIIReaderPrivate::Exoid
protected

The handle of the currently open file.

Definition at line 794 of file vtkExodusIIReaderPrivate.h.

struct ex_init_params vtkExodusIIReaderPrivate::ModelParameters
protected

Parameters describing the currently open Exodus file.

Definition at line 797 of file vtkExodusIIReaderPrivate.h.

std::vector<double> vtkExodusIIReaderPrivate::Times
protected

A list of time steps for which results variables are stored.

Definition at line 800 of file vtkExodusIIReaderPrivate.h.

bool vtkExodusIIReaderPrivate::SkipUpdateTimeInformation
protected

Definition at line 801 of file vtkExodusIIReaderPrivate.h.

double vtkExodusIIReaderPrivate::ModeShapeTime
protected

The time value.

This is used internally when HasModeShapes is true and ignored otherwise.

Definition at line 806 of file vtkExodusIIReaderPrivate.h.

vtkTypeBool vtkExodusIIReaderPrivate::GenerateObjectIdArray
protected

Definition at line 808 of file vtkExodusIIReaderPrivate.h.

vtkTypeBool vtkExodusIIReaderPrivate::GenerateGlobalIdArray
protected

Definition at line 809 of file vtkExodusIIReaderPrivate.h.

vtkTypeBool vtkExodusIIReaderPrivate::GenerateFileIdArray
protected

Definition at line 810 of file vtkExodusIIReaderPrivate.h.

vtkTypeBool vtkExodusIIReaderPrivate::GenerateGlobalElementIdArray
protected

Definition at line 811 of file vtkExodusIIReaderPrivate.h.

vtkTypeBool vtkExodusIIReaderPrivate::GenerateGlobalNodeIdArray
protected

Definition at line 812 of file vtkExodusIIReaderPrivate.h.

vtkTypeBool vtkExodusIIReaderPrivate::GenerateImplicitElementIdArray
protected

Definition at line 813 of file vtkExodusIIReaderPrivate.h.

vtkTypeBool vtkExodusIIReaderPrivate::GenerateImplicitNodeIdArray
protected

Definition at line 814 of file vtkExodusIIReaderPrivate.h.

int vtkExodusIIReaderPrivate::FileId
protected

Defaults to 0.

Set by vtkPExodusIIReader on each entry of ReaderList. Used to generate the file ID array over all output cells.

Definition at line 819 of file vtkExodusIIReaderPrivate.h.

vtkExodusIICache* vtkExodusIIReaderPrivate::Cache
protected

A least-recently-used cache to hold raw arrays.

Definition at line 822 of file vtkExodusIIReaderPrivate.h.

double vtkExodusIIReaderPrivate::CacheSize
protected

The size of the cache in MiB.

Definition at line 825 of file vtkExodusIIReaderPrivate.h.

vtkTypeBool vtkExodusIIReaderPrivate::ApplyDisplacements
protected

Definition at line 827 of file vtkExodusIIReaderPrivate.h.

float vtkExodusIIReaderPrivate::DisplacementMagnitude
protected

Definition at line 828 of file vtkExodusIIReaderPrivate.h.

vtkTypeBool vtkExodusIIReaderPrivate::HasModeShapes
protected

Definition at line 829 of file vtkExodusIIReaderPrivate.h.

vtkTypeBool vtkExodusIIReaderPrivate::AnimateModeShapes
protected

Definition at line 830 of file vtkExodusIIReaderPrivate.h.

bool vtkExodusIIReaderPrivate::IgnoreFileTime
protected

Definition at line 832 of file vtkExodusIIReaderPrivate.h.

int vtkExodusIIReaderPrivate::SqueezePoints
protected

Should the reader output only points used by elements in the output mesh, or all the points.

Outputting all the points is much faster since the point array can be read straight from disk and the mesh connectivity need not be altered. Squeezing the points down to the minimum set needed to produce the output mesh is useful for glyphing and other point-based operations. On large parallel datasets, loading all the points implies loading all the points on all processes and performing subsequent filtering on a much larger set.

By default, SqueezePoints is true for backwards compatibility.

Definition at line 845 of file vtkExodusIIReaderPrivate.h.

vtkExodusIIReader* vtkExodusIIReaderPrivate::Parent
protected

Pointer to owning reader...

this is not registered in order to avoid circular references.

Definition at line 850 of file vtkExodusIIReaderPrivate.h.

vtkExodusIIReaderParser* vtkExodusIIReaderPrivate::Parser
protected

Definition at line 852 of file vtkExodusIIReaderPrivate.h.

std::map<int, std::vector< std::vector< vtkIdType > > > vtkExodusIIReaderPrivate::PolyhedralFaceConnArrays
protected

Face connectivity for polyhedra.

This is a map from face block index to ragged connectivity arrays for each face in a block. We store the ragged arrays of face connectivity without squeeze-points applied since multiple blocks (with different squeeze-points) can refer to the same face.

Definition at line 862 of file vtkExodusIIReaderPrivate.h.

vtkExodusIIReader::ObjectType vtkExodusIIReaderPrivate::FastPathObjectType
protected

Definition at line 864 of file vtkExodusIIReaderPrivate.h.

vtkIdType vtkExodusIIReaderPrivate::FastPathObjectId
protected

Definition at line 865 of file vtkExodusIIReaderPrivate.h.

char* vtkExodusIIReaderPrivate::FastPathIdType
protected

Definition at line 866 of file vtkExodusIIReaderPrivate.h.

vtkMutableDirectedGraph* vtkExodusIIReaderPrivate::SIL
protected

Definition at line 868 of file vtkExodusIIReaderPrivate.h.


The documentation for this class was generated from the following file: