23#ifndef vtkExodusIIReaderParser_h
24#define vtkExodusIIReaderParser_h
26#include "vtkIOExodusModule.h"
58 void Go(
const char* filename);
64 return (this->BlockID_To_VertexID.find(
id) != this->BlockID_To_VertexID.end());
80 std::map<int, vtkIdType>::iterator iter;
81 for (iter = this->BlockID_To_VertexID.begin();
82 iter != this->BlockID_To_VertexID.end();
85 blockIdsSet.insert(iter->first);
94 virtual void StartElement(
const char* tagName,
const char** attrs);
98 const char*
GetValue(
const char* attr,
const char** attrs)
101 for (i=0;attrs[i];i+=2)
103 const char*
name=strrchr(attrs[i],
':');
112 if (strcmp(attr,
name)==0)
internal parser used by vtkExodusIIReader.
vtkIdType AddVertexToSIL(const char *name)
vtkIdType AssembliesVertex
std::map< vtkIdType, std::string > PartVertexID_To_Descriptions
~vtkExodusIIReaderParser()
std::map< vtkIdType, std::string > MaterialSpecifications
void Go(const char *filename)
Trigger parsing of the XML file.
bool HasInformationAboutBlock(int id)
std::map< int, std::string > BlockID_To_Part
virtual void EndElement(const char *tagName)
std::map< int, std::string > BlockID_To_MaterialName
const char * GetValue(const char *attr, const char **attrs)
bool InMaterialAssignments
vtkIdType MaterialsVertex
vtkIdType GetPartVertex(const char *part_number_instance_string)
Returns the vertex id for the "part" with given part_number_instance_string formed as "{part-number} ...
std::string BlockPartNumberString
std::map< std::string, vtkIdType > Part_To_VertexID
vtkSmartPointer< vtkUnsignedCharArray > CrossEdgesArray
std::vector< vtkIdType > CurrentVertex
std::string GetBlockName(int id)
Given a block "id" return the name as determined from the xml.
virtual void StartElement(const char *tagName, const char **attrs)
vtkMutableDirectedGraph * SIL
vtkIdType AddCrossEdgeToSIL(vtkIdType src, vtkIdType dst)
vtkSmartPointer< vtkStringArray > NamesArray
vtkExodusIIReaderParser()
std::map< int, vtkIdType > BlockID_To_VertexID
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
std::map< std::string, vtkIdType > MaterialName_To_VertexID
vtkIdType AddChildEdgeToSIL(vtkIdType src, vtkIdType dst)
void GetBlockIds(std::set< int > &blockIdsSet)
Fills up the blockIdsSet with the block ids referred to by the XML.
static vtkExodusIIReaderParser * New()
a simple class to control print indentation
An editable directed graph.
a vtkAbstractArray subclass for strings
dynamic, self-adjusting array of unsigned char
Parse XML to handle element tags and attributes.