#include <MemfemMeshReader.hpp>
Inherits AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >.
Public Member Functions | |
MemfemMeshReader (const std::string &rPathBaseName) | |
virtual | ~MemfemMeshReader () |
Private Member Functions | |
std::vector< std::vector < double > > | TokenizeStringsToDoubles (const std::vector< std::string > &rRawData) |
std::vector< std::vector < unsigned > > | TokenizeStringsToInts (const std::vector< std::string > &rRawData, unsigned dimensionOfObject, bool readHeader) |
Concrete version of the AbstractCachedMeshReader class. A MemfemMeshReader takes the base name of a set of Memfem mesh files (ie. the path and name of the files without the suffices). Once constructed the public methods of the AbstractCachedMeshReader (std::vector<double> GetNextNode(); etc) can be called to interrogate the data.
Definition at line 43 of file MemfemMeshReader.hpp.
MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::MemfemMeshReader | ( | const std::string & | rPathBaseName | ) | [inline] |
The constructor takes the base name of a set of Memfem mesh files (ie. the path and name of the files without the suffices) and allows the data to be queried.
Typical use: AbstractMeshReader* pMeshReader = new MemfemMeshReader("pdes/tests/meshdata/Memfem_slab");
rPathBaseName | the base name of the files from which to read the mesh data |
Definition at line 39 of file MemfemMeshReader.cpp.
References EXCEPTION, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetRawDataFromFile(), AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mElementData, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mElementRawData, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mFaceData, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mFaceRawData, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mNodeData, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mNodeRawData, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mpElementIterator, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mpFaceIterator, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mpNodeIterator, MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::TokenizeStringsToDoubles(), and MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::TokenizeStringsToInts().
MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::~MemfemMeshReader | ( | ) | [inline, virtual] |
Destructor.
Definition at line 107 of file MemfemMeshReader.cpp.
std::vector< std::vector< double > > MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::TokenizeStringsToDoubles | ( | const std::vector< std::string > & | rRawData | ) | [inline, private] |
TokenizeStringsToDoubles is specific to reading node data which came from a Memfem file. Each string is expected to be 3 doubles (representing x,y,z) Return value is a vector where each item is a vector of doubles which represents position. Indices are implicit in the vector.
rRawData | the node data to be read |
Definition at line 111 of file MemfemMeshReader.cpp.
Referenced by MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::MemfemMeshReader().
std::vector< std::vector< unsigned > > MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::TokenizeStringsToInts | ( | const std::vector< std::string > & | rRawData, | |
unsigned | dimensionOfObject, | |||
bool | readHeader | |||
) | [inline, private] |
TokenizeStringsToInts is for reading element or boundary face data which came from a Memfem file. Each string is expected to be: 3 or 4 node indices ( 3 indices for a face, 4 for a tetrahedron) a region marker? (if it's an element) NB: Region markers are currently ignored. Return value is a vector where each item is a vector of ints which represents indices of nodes.
rRawData | the element or boundary face data to be read | |
dimensionOfObject | the number of lines of data to be read | |
readHeader | whether to read the header |
Definition at line 144 of file MemfemMeshReader.cpp.
Referenced by MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::MemfemMeshReader().