Coverage for plugins/klayout-pex-plugin-gmsh/src/klayout_pex_plugins/gmsh/__init__.py: 100%

6 statements  

« prev     ^ index     » next       coverage.py v7.17.2, created at 2026-11-06 13:14 +0000

1# 

2# -------------------------------------------------------------------------------- 

3# SPDX-FileCopyrightText: 2026 Martin Jan Köhler and Harald Pretl 

4# Johannes Kepler University, Institute for Integrated Circuits. 

5# 

6# This file is part of klayout-pex-plugin-gmsh 

7# (see https://github.com/iic-jku/klayout-pex-plugin-gmsh). 

8# 

9# This program is free software: you can redistribute it and/or modify 

10# it under the terms of the GNU General Public License as published by 

11# the Free Software Foundation, either version 3 of the License, or 

12# (at your option) any later version. 

13# 

14# This program is distributed in the hope that it will be useful, 

15# but WITHOUT ANY WARRANTY; without even the implied warranty of 

16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 

17# GNU General Public License for more details. 

18# 

19# You should have received a copy of the GNU General Public License 

20# along with this program. If not, see <http://www.gnu.org/licenses/>. 

21# SPDX-License-Identifier: GPL-3.0-or-later 

22# -------------------------------------------------------------------------------- 

23# 

24 

25""" 

26gmsh volume meshes of PEX25D scenes: the KLayout-PEX exporter ``gmsh``, and the 

27mesh builder the FEM exporters (Elmer, Palace) share. 

28 

29gmsh and KLayout load on export, so plugin discovery works without them. 

30""" 

31 

32from .exporter import GmshSceneExporter 

33from .mesh import LENGTH_UNIT_M, OUTER_BOUNDARY, MeshResult, PhysicalGroup, write_mesh 

34from .options import GmshMeshOptions, parse_options 

35 

36 

37def create_exporter() -> GmshSceneExporter: 

38 return GmshSceneExporter() 

39 

40 

41__all__ = [ 

42 'GmshMeshOptions', 

43 'GmshSceneExporter', 

44 'LENGTH_UNIT_M', 

45 'MeshResult', 

46 'OUTER_BOUNDARY', 

47 'PhysicalGroup', 

48 'create_exporter', 

49 'parse_options', 

50 'write_mesh', 

51]