Loading [MathJax]/extensions/tex2jax.js
PISM, A Parallel Ice Sheet Model
2.2.2-d6b3a29ca committed by Constantine Khrulev on 2025-03-28
Toggle main menu visibility
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
z
Variables
a
b
c
d
f
g
h
i
k
l
m
n
r
s
t
u
v
w
Typedefs
Enumerations
a
b
c
d
e
f
i
k
l
m
n
p
r
t
u
v
Enumerator
_
a
b
c
d
e
f
g
h
i
l
m
n
p
q
s
t
u
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
c
d
f
g
h
l
m
p
s
v
w
Enumerations
Enumerator
c
d
e
f
h
i
j
m
n
o
p
r
s
t
w
y
Related Symbols
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
p
r
s
t
u
w
z
Functions
a
b
c
d
e
f
g
h
i
l
m
p
r
s
u
Variables
b
c
d
e
g
h
k
l
m
n
p
r
s
t
u
w
z
Typedefs
Macros
_
a
b
c
g
h
i
k
m
n
r
s
t
u
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
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
};
36
class
SigInstaller
{
…
};
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