OpenFOAM: API Guide
v2006
The open source CFD toolbox
DynamicField.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) 2011-2016 OpenFOAM Foundation
9
Copyright (C) 2017 OpenCFD Ltd.
10
-------------------------------------------------------------------------------
11
License
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
#include "
DynamicField.H
"
30
31
// * * * * * * * * * * * * * * * IOstream Operators * * * * * * * * * * * * //
32
33
template
<
class
T,
int
SizeMin>
34
Foam::DynamicField<T, SizeMin>::DynamicField
(
Istream
& is)
35
:
36
Field
<
T
>(is),
37
capacity_(
Field
<
T
>::size())
38
{}
39
40
41
template
<
class
T,
int
SizeMin>
42
Foam::tmp<Foam::DynamicField<T, SizeMin>
>
43
Foam::DynamicField<T, SizeMin>::clone
()
const
44
{
45
return
tmp<DynamicField<T, SizeMin>
>
::New
(*
this
);
46
}
47
48
49
// * * * * * * * * * * * * * * * IOstream Operator * * * * * * * * * * * * * //
50
51
template
<
class
T,
int
SizeMin>
52
Foam::Ostream
& Foam::operator<<
53
(
54
Ostream
& os,
55
const
DynamicField<T, SizeMin>
& lst
56
)
57
{
58
os << static_cast<const Field<T>&>(lst);
59
return
os;
60
}
61
62
63
template
<
class
T,
int
SizeMin>
64
Foam::Istream
& Foam::operator>>
65
(
66
Istream& is,
67
DynamicField<T, SizeMin>& lst
68
)
69
{
70
is >>
static_cast<
Field<T>&
>
(lst);
71
lst.capacity_ = lst.Field<T>::size();
72
73
return
is;
74
}
75
76
77
// ************************************************************************* //
Foam::tmp
A class for managing temporary objects.
Definition:
PtrList.H:59
Foam::DynamicField
Dynamically sized Field.
Definition:
DynamicField.H:51
Foam::Field
Generic templated field type.
Definition:
Field.H:63
Foam::Istream
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
Definition:
Istream.H:61
Foam::DynamicField::DynamicField
constexpr DynamicField() noexcept
Construct null.
Definition:
DynamicFieldI.H:60
T
const volScalarField & T
Definition:
createFieldRefs.H:2
Foam::New
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tdf1, const word &name, const dimensionSet &dimensions)
Global function forwards to reuseTmpDimensionedField::New.
Definition:
DimensionedFieldReuseFunctions.H:105
Foam::DynamicField::clone
tmp< DynamicField< T, SizeMin > > clone() const
Clone.
Definition:
DynamicField.C:43
DynamicField.H
Foam::Ostream
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Definition:
Ostream.H:56
src
OpenFOAM
fields
Fields
DynamicField
DynamicField.C
Generated by
1.8.17
OPENFOAM® is a registered
trademark
of OpenCFD Ltd.