Branch data Line data Source code
1 : : // *****************************************************************************
2 : : /*!
3 : : \file src/IO/NetgenMeshReader.hpp
4 : : \copyright 2012-2015 J. Bakosi,
5 : : 2016-2018 Los Alamos National Security, LLC.,
6 : : 2019-2021 Triad National Security, LLC.,
7 : : 2022-2025 J. Bakosi
8 : : All rights reserved. See the LICENSE file for details.
9 : : \brief Netgen mesh reader class declaration
10 : : \details Netgen mesh reader class declaration. Only supports tetrahedra.
11 : : */
12 : : // *****************************************************************************
13 : : #ifndef NetgenMeshReader_h
14 : : #define NetgenMeshReader_h
15 : :
16 : : #include <iosfwd>
17 : :
18 : : #include "Reader.hpp"
19 : :
20 : : namespace tk {
21 : :
22 : : class UnsMesh;
23 : :
24 : : //! \brief NetgenMeshReader : tk::Reader
25 : : //! \details Mesh reader class facilitating reading a mesh from a file saved by
26 : : //! the Netgen mesh generator:
27 : : //! http://sourceforge.net/apps/mediawiki/netgen-mesher.
28 : 3 : class NetgenMeshReader : public Reader {
29 : :
30 : : public:
31 : : //! Constructor
32 : 3 : explicit NetgenMeshReader( const std::string& filename ) :
33 [ + - ][ + - ]: 3 : Reader( filename ) {}
34 : :
35 : : //! Read Netgen mesh
36 : : void readMesh( UnsMesh& mesh );
37 : :
38 : : private:
39 : : //! Read nodes
40 : : void readNodes( UnsMesh& mesh );
41 : :
42 : : //! Read element connectivity
43 : : void readElements( UnsMesh& mesh );
44 : : };
45 : :
46 : : } // tk::
47 : :
48 : : #endif // NetgenMeshReader_h
|