OpenFOAM
8
The OpenFOAM Foundation
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
sigStopAtWriteNow.H
Go to the documentation of this file.
1
/*---------------------------------------------------------------------------*\
2
========= |
3
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4
\\ / O peration | Website: https://openfoam.org
5
\\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation
6
\\/ M anipulation |
7
-------------------------------------------------------------------------------
8
License
9
This file is part of OpenFOAM.
10
11
OpenFOAM is free software: you can redistribute it and/or modify it
12
under the terms of the GNU General Public License as published by
13
the Free Software Foundation, either version 3 of the License, or
14
(at your option) any later version.
15
16
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19
for more details.
20
21
You should have received a copy of the GNU General Public License
22
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23
24
Class
25
Foam::sigStopAtWriteNow
26
27
Description
28
Signal handler for interrupt defined by
29
OptimisationSwitches::stopAtWriteNowSignal
30
31
Write and stop the job.
32
33
SourceFiles
34
sigStopAtWriteNow.C
35
36
\*---------------------------------------------------------------------------*/
37
38
#ifndef sigStopAtWriteNow_H
39
#define sigStopAtWriteNow_H
40
41
#include <signal.h>
42
43
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
44
45
namespace
Foam
46
{
47
48
class
Time;
49
50
/*---------------------------------------------------------------------------*\
51
Class sigStopAtWriteNow Declaration
52
\*---------------------------------------------------------------------------*/
53
54
class
sigStopAtWriteNow
55
{
56
// Private Data
57
58
//- Number of signal to use
59
static
int
signal_;
60
61
//- Pointer to Time
62
static
Time
const
* runTimePtr_;
63
64
//- Saved old signal trapping setting
65
static
struct
sigaction oldAction_;
66
67
68
// Private Member Functions
69
70
static
void
sigHandler(
int
);
71
72
73
public
:
74
75
//- wip. Have setter have access to signal_
76
friend
class
addstopAtWriteNowSignalToOpt
;
77
78
79
// Constructors
80
81
//- Construct null
82
sigStopAtWriteNow
();
83
84
//- Construct from components
85
sigStopAtWriteNow
(
const
bool
verbose,
const
Time
&
runTime
);
86
87
88
//- Destructor
89
~sigStopAtWriteNow
();
90
91
92
// Member Functions
93
94
//- (re)set signal catcher
95
static
void
set
(
const
bool
verbose);
96
97
//- Is active?
98
bool
active
()
const
;
99
};
100
101
102
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
103
104
}
// End namespace Foam
105
106
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
107
108
#endif
109
110
// ************************************************************************* //
Foam::sigStopAtWriteNow::~sigStopAtWriteNow
~sigStopAtWriteNow()
Destructor.
Definition:
sigStopAtWriteNow.C:127
runTime
engineTime & runTime
Definition:
createEngineTime.H:13
Foam::sigStopAtWriteNow::active
bool active() const
Is active?
Definition:
sigStopAtWriteNow.C:180
Foam::Time
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
Definition:
Time.H:68
Foam::addstopAtWriteNowSignalToOpt
Definition:
sigStopAtWriteNow.C:44
Foam::sigStopAtWriteNow
Signal handler for interrupt defined by OptimisationSwitches::stopAtWriteNowSignal.
Definition:
sigStopAtWriteNow.H:53
Foam::sigStopAtWriteNow::sigStopAtWriteNow
sigStopAtWriteNow()
Construct null.
Definition:
sigStopAtWriteNow.C:109
Foam
Namespace for OpenFOAM.
Definition:
atmBoundaryLayer.H:213
src
OSspecific
POSIX
signals
sigStopAtWriteNow.H
Generated by
1.8.13