OGS
FEFLOWGeoInterface.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
4#pragma once
5
6#include <libxml/tree.h>
7
8#include <iosfwd>
9#include <string>
10#include <vector>
11
12namespace GeoLib
13{
14class GEOObjects;
15class Point;
16class Polyline;
17} // namespace GeoLib
18
19namespace FileIO
20{
25{
26public:
36 static void readFEFLOWFile(const std::string& filename,
37 GeoLib::GEOObjects& geo_objects);
38
44 static void readSuperMesh(std::ifstream& in, unsigned dimension,
45 std::vector<GeoLib::Point*>& points,
46 std::vector<GeoLib::Polyline*>& lines);
47
48private:
50 static void readPoints(xmlNodePtr nodesEle, const xmlChar* tag, int dim,
51 std::vector<GeoLib::Point*>& points);
52};
53} // namespace FileIO
static void readFEFLOWFile(const std::string &filename, GeoLib::GEOObjects &geo_objects)
static void readPoints(xmlNodePtr nodesEle, const xmlChar *tag, int dim, std::vector< GeoLib::Point * > &points)
static void readSuperMesh(std::ifstream &in, unsigned dimension, std::vector< GeoLib::Point * > &points, std::vector< GeoLib::Polyline * > &lines)
Container class for geometric objects.
Definition GEOObjects.h:46
Class Polyline consists mainly of a reference to a point vector and a vector that stores the indices ...
Definition Polyline.h:29