36 #ifndef NEKTAR_SPATIALDOMAINS_MGXML_H
37 #define NEKTAR_SPATIALDOMAINS_MGXML_H
44 namespace SpatialDomains
59 std::string &outfilename,
60 bool defaultExp =
false,
66 std::vector<std::set<unsigned int>> elements,
67 std::vector<unsigned int> partitions);
100 void ResolveGeomRef(
const std::string &prevToken,
const std::string &token,
103 const std::string &token,
106 const std::string &token,
109 const std::string &token,
122 void WriteDomain(TiXmlElement *geomTag, std::vector<CompositeMap> &domain);
#define SPATIAL_DOMAINS_EXPORT
static std::shared_ptr< DataType > AllocateSharedPtr(const Args &...args)
Allocate a shared pointer from the memory pool.
Base class for a spectral/hp element mesh.
virtual void ReadGeometry(LibUtilities::DomainRangeShPtr rng, bool fillGraph)
void ResolveGeomRef1D(const std::string &prevToken, const std::string &token, CompositeSharedPtr &composite)
void WriteDefaultExpansion(TiXmlElement *root)
virtual void ReadElements2D()
virtual void WriteEdges(TiXmlElement *geomTag, SegGeomMap &edges)
static MeshGraphSharedPtr create()
virtual void ReadCurves()
void ResolveGeomRef(const std::string &prevToken, const std::string &token, CompositeSharedPtr &composite)
void ResolveGeomRef3D(const std::string &prevToken, const std::string &token, CompositeSharedPtr &composite)
virtual void WriteVertices(TiXmlElement *geomTag, PointGeomMap &verts)
void WriteDomain(TiXmlElement *geomTag, std::vector< CompositeMap > &domain)
virtual void ReadElements3D()
static std::string className
virtual void WriteQuads(TiXmlElement *faceTag, QuadGeomMap &quads)
virtual void WriteCurves(TiXmlElement *geomTag, CurveMap &edges, CurveMap &faces)
CompositeOrdering CreateCompositeOrdering()
void WriteComposites(TiXmlElement *geomTag, CompositeMap &comps)
virtual void WriteGeometry(std::string &outfilename, bool defaultExp=false, const LibUtilities::FieldMetaDataMap &metadata=LibUtilities::NullFieldMetaDataMap)
Write out an XML file containing the GEOMETRY block representing this MeshGraph instance inside a NEK...
virtual void WriteTets(TiXmlElement *elmtTag, TetGeomMap &tets)
virtual void WritePyrs(TiXmlElement *elmtTag, PyrGeomMap &pyrs)
virtual void ReadElements1D()
virtual void WriteTris(TiXmlElement *faceTag, TriGeomMap &tris)
virtual void WritePrisms(TiXmlElement *elmtTag, PrismGeomMap &pris)
void ResolveGeomRef2D(const std::string &prevToken, const std::string &token, CompositeSharedPtr &composite)
virtual void ReadVertices()
void WriteXMLGeometry(std::string outname, std::vector< std::set< unsigned int >> elements, std::vector< unsigned int > partitions)
virtual void WriteHexs(TiXmlElement *elmtTag, HexGeomMap &hexs)
virtual void PartitionMesh(LibUtilities::SessionReaderSharedPtr session)
std::map< std::string, std::string > FieldMetaDataMap
std::shared_ptr< SessionReader > SessionReaderSharedPtr
static FieldMetaDataMap NullFieldMetaDataMap
std::shared_ptr< DomainRange > DomainRangeShPtr
std::map< int, TriGeomSharedPtr > TriGeomMap
std::map< int, std::vector< unsigned int > > CompositeOrdering
std::map< int, PyrGeomSharedPtr > PyrGeomMap
std::map< int, QuadGeomSharedPtr > QuadGeomMap
std::map< int, SegGeomSharedPtr > SegGeomMap
std::unordered_map< int, CurveSharedPtr > CurveMap
std::map< int, CompositeSharedPtr > CompositeMap
std::map< int, TetGeomSharedPtr > TetGeomMap
std::shared_ptr< MeshGraph > MeshGraphSharedPtr
std::map< int, PrismGeomSharedPtr > PrismGeomMap
std::shared_ptr< Composite > CompositeSharedPtr
std::map< int, HexGeomSharedPtr > HexGeomMap
std::map< int, PointGeomSharedPtr > PointGeomMap
The above copyright notice and this permission notice shall be included.