PISM, A Parallel Ice Sheet Model
2.2.2-d6b3a29ca committed by Constantine Khrulev on 2025-03-28
Loading...
Searching...
No Matches
src
pythonbindings
pism_python.hh
Go to the documentation of this file.
1
// Copyright (C) 2011, 2014, 2015 David Maxwell and Constantine Khroulev
2
//
3
// This file is part of PISM.
4
//
5
// PISM is free software; you can redistribute it and/or modify it under the
6
// terms of the GNU General Public License as published by the Free Software
7
// Foundation; either version 3 of the License, or (at your option) any later
8
// version.
9
//
10
// PISM is distributed in the hope that it will be useful, but WITHOUT ANY
11
// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12
// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
13
// details.
14
//
15
// You should have received a copy of the GNU General Public License
16
// along with PISM; if not, write to the Free Software
17
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18
19
20
#ifndef _PISM_PYTHON_
21
#define _PISM_PYTHON_
22
23
namespace
pism
{
24
25
//! @brief Code added for use in Python wrappers.
26
namespace
python {
27
28
void
set_abort_on_sigint
(
bool
abort);
29
30
int
check_signal
();
31
void
sigint_handler
(
int
sig);
32
33
extern
bool
gSIGINT_is_fatal
;
34
35
//! Installs a signal handler on construction; deinstalls on destruction.
36
class
SigInstaller
37
{
38
public
:
39
//! Installs handle \a new_handler for signal \a sig.
40
SigInstaller
(
int
sig,
void
(*new_handler)(
int
));
41
//! Restores the signal handler to its previous value.
42
void
release
();
43
44
~SigInstaller
();
45
private
:
46
void (*
m_old_handler
)(
int
);
47
int
m_sig
;
48
};
49
50
}
// end of namespace python
51
}
// end of namespace pism
52
53
#endif
int
pism::python::SigInstaller::release
void release()
Restores the signal handler to its previous value.
Definition
pism_python.cc:38
pism::python::SigInstaller::~SigInstaller
~SigInstaller()
Definition
pism_python.cc:45
pism::python::SigInstaller::m_sig
int m_sig
Definition
pism_python.hh:47
pism::python::SigInstaller::m_old_handler
void(* m_old_handler)(int)
Definition
pism_python.hh:46
pism::python::SigInstaller
Installs a signal handler on construction; deinstalls on destruction.
Definition
pism_python.hh:37
pism::python::sigint_handler
void sigint_handler(int sig)
Definition
pism_python.cc:60
pism::python::set_abort_on_sigint
void set_abort_on_sigint(bool abort)
Definition
pism_python.cc:29
pism::python::gSIGINT_is_fatal
bool gSIGINT_is_fatal
Definition
pism_python.cc:50
pism::python::check_signal
int check_signal()
Definition
pism_python.cc:52
pism
Definition
AgeColumnSystem.cc:23
Generated by
1.9.8