outputFilterOutputControl.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------* \
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration |
5  \\ / A nd | Copyright (C) 2011-2014 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::outputFilterOutputControl
26 
27 Description
28  An output control for function objects.
29  The default is time-step execution at every interval.
30 
31 SourceFiles
32  outputFilterOutputControl.C
33 
34 \*---------------------------------------------------------------------------*/
35 
36 #ifndef outputFilterOutputControl_H
37 #define outputFilterOutputControl_H
38 
39 #include "dictionary.H"
40 #include "Time.H"
41 #include "NamedEnum.H"
42 
43 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
44 
45 namespace Foam
46 {
47 
48 /*---------------------------------------------------------------------------*\
49  Class outputFilterOutputControl Declaration
50 \*---------------------------------------------------------------------------*/
51 
53 {
54 public:
55 
56  //- The output control options
57  enum outputControls
58  {
66  ocNone
67  };
68 
69 
70 private:
71 
72  // Private data
73 
74  //- Time object
75  const Time& time_;
76 
77  //- Prefix
78  const word prefix_;
79 
80  //- String representation of outputControls enums
82 
83  //- Type of output
85 
86  //- The execution interval (in time steps) when using \c timeStep mode,
87  // a value <= 1 means execute at every time step
89 
90  //- Dumping counter for ocOutputTime or index dump for ocAdjustableTime
92 
93  //- Dump each deltaT (adjust Ttime)
94  scalar writeInterval_;
95 
96 
97  // Private Member Functions
98 
99  //- Disallow default bitwise copy construct and assignment
102 
103 
104 public:
105 
106  // Constructors
107 
108  //- Construct from Time object and dictionary
110  (
111  const Time&,
112  const dictionary&,
113  const word& prefix
114  );
115 
116 
117  //- Destructor
119 
120 
121  // Member Functions
122 
123  //- Read from dictionary
124  void read(const dictionary&);
125 
126  //- Return const access to the Time object
127  const Time& time() const
128  {
129  return time_;
130  }
131 
132  //- Flag to indicate whether to output
133  bool output();
134 
135  //- Return outputControl
137  {
138  return outputControl_;
139  }
140 
141  //- Return writeInterval
142  scalar writeInterval() const
143  {
144  return writeInterval_;
145  }
146 
147  //- Return outputTimeLastDump
148  label outputTimeLastDump() const
149  {
150  return outputTimeLastDump_;
151  }
152 };
153 
154 
155 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
156 
157 } // End namespace Foam
158 
159 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
160 
161 #endif
162 
163 // ************************************************************************* //
Foam::outputFilterOutputControl::outputFilterOutputControl
outputFilterOutputControl(const outputFilterOutputControl &)
Disallow default bitwise copy construct and assignment.
Foam::outputFilterOutputControl::outputControl_
outputControls outputControl_
Type of output.
Definition: outputFilterOutputControl.H:83
Foam::Time
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
Definition: Time.H:68
Foam::outputFilterOutputControl::outputControlNames_
static const NamedEnum< outputControls, 8 > outputControlNames_
String representation of outputControls enums.
Definition: outputFilterOutputControl.H:80
Foam::outputFilterOutputControl::ocAdjustableTime
@ ocAdjustableTime
Definition: outputFilterOutputControl.H:60
Foam::word
A class for handling words, derived from string.
Definition: word.H:59
Foam::outputFilterOutputControl::ocRunTime
@ ocRunTime
Definition: outputFilterOutputControl.H:61
Foam::outputFilterOutputControl::ocCpuTime
@ ocCpuTime
Definition: outputFilterOutputControl.H:63
NamedEnum.H
Foam::outputFilterOutputControl::writeInterval_
scalar writeInterval_
Dump each deltaT (adjust Ttime)
Definition: outputFilterOutputControl.H:93
Foam::outputFilterOutputControl::operator=
void operator=(const outputFilterOutputControl &)
Foam::outputFilterOutputControl::prefix_
const word prefix_
Prefix.
Definition: outputFilterOutputControl.H:77
Foam::outputFilterOutputControl::ocClockTime
@ ocClockTime
Definition: outputFilterOutputControl.H:62
Foam::outputFilterOutputControl::outputInterval_
label outputInterval_
The execution interval (in time steps) when using timeStep mode,.
Definition: outputFilterOutputControl.H:87
Foam::outputFilterOutputControl::ocOnEnd
@ ocOnEnd
Definition: outputFilterOutputControl.H:64
Foam::outputFilterOutputControl::outputTimeLastDump_
label outputTimeLastDump_
Dumping counter for ocOutputTime or index dump for ocAdjustableTime.
Definition: outputFilterOutputControl.H:90
Foam::outputFilterOutputControl::~outputFilterOutputControl
~outputFilterOutputControl()
Destructor.
Definition: outputFilterOutputControl.C:74
Foam::label
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Definition: label.H:59
Foam::outputFilterOutputControl::ocOutputTime
@ ocOutputTime
Definition: outputFilterOutputControl.H:59
Foam::outputFilterOutputControl::outputControls
outputControls
The output control options.
Definition: outputFilterOutputControl.H:56
Foam::outputFilterOutputControl::outputTimeLastDump
label outputTimeLastDump() const
Return outputTimeLastDump.
Definition: outputFilterOutputControl.H:147
Foam::dictionary
A list of keyword definitions, which are a keyword followed by any number of values (e....
Definition: dictionary.H:137
Foam::outputFilterOutputControl::output
bool output()
Flag to indicate whether to output.
Definition: outputFilterOutputControl.C:127
Foam::outputFilterOutputControl::ocNone
@ ocNone
Definition: outputFilterOutputControl.H:65
Foam
Namespace for OpenFOAM.
Definition: combustionModel.C:30
Foam::outputFilterOutputControl::outputControl
outputControls outputControl() const
Return outputControl.
Definition: outputFilterOutputControl.H:135
Foam::outputFilterOutputControl
An output control for function objects. The default is time-step execution at every interval.
Definition: outputFilterOutputControl.H:51
Foam::outputFilterOutputControl::time_
const Time & time_
Time object.
Definition: outputFilterOutputControl.H:74
dictionary.H
Foam::outputFilterOutputControl::ocTimeStep
@ ocTimeStep
Definition: outputFilterOutputControl.H:58
Foam::outputFilterOutputControl::time
const Time & time() const
Return const access to the Time object.
Definition: outputFilterOutputControl.H:126
Foam::outputFilterOutputControl::read
void read(const dictionary &)
Read from dictionary.
Definition: outputFilterOutputControl.C:80
Foam::outputFilterOutputControl::writeInterval
scalar writeInterval() const
Return writeInterval.
Definition: outputFilterOutputControl.H:141
Foam::NamedEnum< outputControls, 8 >