Line data Source code
1 : // *****************************************************************************
2 : /*!
3 : \file src/IO/NetgenMeshWriter.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 writer class declaration
10 : \details Netgen mesh writer class declaration. Only supports tetrahedra.
11 : */
12 : // *****************************************************************************
13 : #ifndef NetgenMeshWriter_h
14 : #define NetgenMeshWriter_h
15 :
16 : #include <iosfwd>
17 :
18 : #include "Writer.hpp"
19 :
20 : namespace tk {
21 :
22 : class UnsMesh;
23 :
24 : //! Netgen mesh-based writer
25 : //! \details Mesh reader class facilitating reading a mesh from a file saved by
26 : //! the Netgen mesh generator
27 : //! \see http://sourceforge.net/apps/mediawiki/netgen-mesher
28 : class NetgenMeshWriter : public Writer {
29 :
30 : public:
31 : //! Constructor
32 5 : explicit NetgenMeshWriter( const std::string& filename )
33 5 : : Writer( filename ) {}
34 :
35 : //! Write Netgen mesh
36 : void writeMesh( const UnsMesh& mesh );
37 :
38 : private:
39 : //! Write nodes
40 : void writeNodes( const UnsMesh& mesh );
41 :
42 : //! Write elements, i.e., connectivity
43 : void writeElements( const UnsMesh& mesh );
44 : };
45 :
46 : } // tk::
47 :
48 : #endif // NetgenMeshWriter_h
|