writeFileTemplates.C
Go to the documentation of this file.
1/*---------------------------------------------------------------------------*\
2 ========= |
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4 \\ / O peration |
5 \\ / A nd | www.openfoam.com
6 \\/ M anipulation |
7-------------------------------------------------------------------------------
8 Copyright (C) 2013-2016 OpenFOAM Foundation
9 Copyright (C) 2022 OpenCFD Ltd.
10-------------------------------------------------------------------------------
11License
12 This file is part of OpenFOAM.
13
14 OpenFOAM is free software: you can redistribute it and/or modify it
15 under the terms of the GNU General Public License as published by
16 the Free Software Foundation, either version 3 of the License, or
17 (at your option) any later version.
18
19 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
20 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
21 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22 for more details.
23
24 You should have received a copy of the GNU General Public License
25 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
26
27\*---------------------------------------------------------------------------*/
28
29// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
30
31template<class Type>
33(
34 Ostream& os,
35 const string& property,
36 const Type& value
37) const
38{
39 os << setw(1) << '#' << setw(1) << ' '
40 << setf(ios_base::left) << setw(charWidth() - 2) << property.c_str()
41 << setw(1) << ':' << setw(1) << ' ' << value << nl;
42}
43
44
45template<class Type>
47(
48 Ostream& os,
49 const Type& val
50) const
51{
52 for (direction cmpt = 0; cmpt < pTraits<Type>::nComponents; ++cmpt)
53 {
54 os << ' ' << component(val, cmpt);
55 }
56}
57
58
59// ************************************************************************* //
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Definition: Ostream.H:62
void writeHeaderValue(Ostream &os, const string &property, const Type &value) const
Write a (commented) header property and value pair.
virtual label charWidth() const
Return width of character stream output.
Definition: writeFile.C:262
void writeValue(Ostream &os, const Type &val) const
Write a given value to stream with the space delimiter.
OBJstream os(runTime.globalPath()/outputName)
Smanip< ios_base::fmtflags > setf(const ios_base::fmtflags flags)
Definition: IOmanip.H:169
void component(FieldField< Field, typename FieldField< Field, Type >::cmptType > &sf, const FieldField< Field, Type > &f, const direction d)
Omanip< int > setw(const int i)
Definition: IOmanip.H:199
uint8_t direction
Definition: direction.H:56
constexpr char nl
The newline '\n' character (0x0a)
Definition: Ostream.H:53