00001 #ifndef PATRANNEUTRALMESHREADER_H
00002 #define PATRANNEUTRALMESHREADER_H
00003
00004 #include "SundanceDefs.h"
00005
00006 #include "MeshReader.h"
00007
00008
00009 namespace Sundance
00010 {
00011
00012 using namespace TSF;
00013 using std::string;
00014
00015 using std::ostream;
00016
00017
00018
00019
00020
00021 class PATRANNeutralMeshReader : public MeshReaderBase
00022 {
00023 public:
00024
00025 PATRANNeutralMeshReader(const string& filename)
00026 : filename_(filename) {;}
00027
00028
00029 virtual Mesh getMesh() const ;
00030
00031 private:
00032
00033 void readPacketHeader(istream& is, int& packetType) const ;
00034
00035
00036 void readHeader(istream& is) const ;
00037
00038
00039 void readSummary(istream& is, int& nPoints, int& nElements) const ;
00040
00041
00042 void readPoints(istream& is, int nPoints) const ;
00043
00044
00045 void readElements(istream& is, int nElements) const ;
00046
00047 string filename_;
00048 };
00049
00050
00051 }
00052 #endif