37#ifndef _TRIANGLESMESHREADER_HPP_
38#define _TRIANGLESMESHREADER_HPP_
43#include "AbstractMeshReader.hpp"
51template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
55 friend class TestTrianglesMeshReader;
143 unsigned orderOfElements=1,
144 unsigned orderOfBoundaryElements=1,
145 bool readContainingElementsForBoundaryElements=
false);
223 std::vector<double>
GetNode(
unsigned index);
332 template<
class T_DATA>
334 std::vector<T_DATA>& rDataPacket,
const unsigned& rNumAttributes,
335 std::vector<double>& rAttributes);
std::string GetMeshFileBaseName()
std::ifstream mCableElementsFile
unsigned mNumCableElements
ElementData GetFaceData(unsigned index)
std::vector< double > mNodeAttributes
unsigned mNumNodeAttributes
std::streamoff mNodeItemWidth
bool mReadContainingElementOfBoundaryElement
unsigned GetNumElementAttributes() const
std::vector< double > GetNextNode()
unsigned mNumElementAttributes
std::string mFilesBaseName
unsigned GetNumFaceAttributes() const
unsigned mNumCableElementAttributes
unsigned GetOrderOfBoundaryElements()
bool IsFileFormatBinary()
ElementData GetNextElementData()
ElementData GetNextCableElementData()
std::streamoff mElementItemWidth
char * mElementFileReadBuffer
std::vector< double > GetNodeAttributes()
unsigned mMaxContainingElements
std::streampos mNodeFileDataStart
unsigned mMaxNodeBdyMarker
std::vector< unsigned > GetContainingElementIndices(unsigned index)
char * mNodeFileReadBuffer
ElementData GetNextFaceData()
std::vector< double > GetNode(unsigned index)
unsigned GetOrderOfElements()
unsigned GetNumElements() const
unsigned GetNumCableElements() const
bool GetReadContainingElementOfBoundaryElement()
unsigned mCableElementsRead
bool HasNodePermutation()
std::ifstream mElementsFile
std::streampos mFaceFileDataStart
unsigned mNodesPerBoundaryElement
unsigned mNodesPerElement
void GetNextItemFromStream(std::ifstream &rFileStream, unsigned expectedItemNumber, std::vector< T_DATA > &rDataPacket, const unsigned &rNumAttributes, std::vector< double > &rAttributes)
void EnsureIndexingFromZero(std::vector< unsigned > &rNodeIndices)
unsigned GetNumNodes() const
unsigned mNumFaceAttributes
std::streamoff mFaceItemWidth
std::vector< unsigned > mPermutationVector
unsigned GetNumCableElementAttributes() const
std::vector< unsigned > mInversePermutationVector
std::vector< unsigned > mOneDimBoundary
unsigned mOrderOfElements
bool mNodePermutationDefined
unsigned GetNumFaces() const
void SetNodePermutation(std::vector< unsigned > &rPermutationVector)
unsigned mNumElementNodes
unsigned mOrderOfBoundaryElements
std::streamoff mNclItemWidth
const std::vector< unsigned > & rGetNodePermutation()
void OpenCableElementsFile()
std::streampos mElementFileDataStart
char * mFaceFileReadBuffer
void GetNextLineFromStream(std::ifstream &rFileStream, std::string &rRawLine)
unsigned mBoundaryFacesRead
void SetReadBufferSize(unsigned bufferSize)
ElementData GetElementData(unsigned index)
std::streampos mNclFileDataStart