OpenFOAM
v2406
The open source CFD toolbox
lumpedPointIOMovement.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 | www.openfoam.com
6
\\/ M anipulation |
7
-------------------------------------------------------------------------------
8
Copyright (C) 2016-2020 OpenCFD Ltd.
9
-------------------------------------------------------------------------------
10
License
11
This file is part of OpenFOAM.
12
13
OpenFOAM is free software: you can redistribute it and/or modify it
14
under the terms of the GNU General Public License as published by
15
the Free Software Foundation, either version 3 of the License, or
16
(at your option) any later version.
17
18
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21
for more details.
22
23
You should have received a copy of the GNU General Public License
24
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25
26
Class
27
Foam::lumpedPointIOMovement
28
29
Description
30
IO-registered version of lumpedPointMovement.
31
32
SourceFiles
33
lumpedPointMovement.C
34
35
\*---------------------------------------------------------------------------*/
36
37
#ifndef lumpedPointIOMovement_H
38
#define lumpedPointIOMovement_H
39
40
#include "
lumpedPointMovement.H
"
41
#include "
regIOobject.H
"
42
#include "
className.H
"
43
44
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45
46
namespace
Foam
47
{
48
49
/*---------------------------------------------------------------------------*\
50
Class lumpedPointIOMovement Declaration
51
\*---------------------------------------------------------------------------*/
52
53
class
lumpedPointIOMovement
54
:
55
public
lumpedPointMovement
,
56
public
regIOobject
57
{
58
// Private Member Functions
59
60
//- No copy construct
61
lumpedPointIOMovement
(
const
lumpedPointIOMovement
&) =
delete
;
62
63
//- No copy assignment
64
void
operator=(
const
lumpedPointIOMovement
&) =
delete
;
65
66
67
public
:
68
69
//- Runtime type information
70
TypeNameNoDebug
(
"lumpedPointMovement"
);
71
72
73
// Static Member Functions
74
75
//- Find the movement object or nullptr if not found
76
static
lumpedPointIOMovement
*
getMovementObject
77
(
78
const
objectRegistry
& obr
79
);
80
81
//- Create a movement object in the registry by
82
//- reading system dictionary
83
static
autoPtr<lumpedPointIOMovement>
New
84
(
85
const
objectRegistry
& obr,
86
label
ownerId
= -1
87
);
88
89
90
// Constructors
91
92
//- Construct from IOobject, optionally with some owner information
93
explicit
lumpedPointIOMovement
(
const
IOobject
&
io
, label
ownerId
= -1);
94
95
96
//- Destructor
97
virtual
~lumpedPointIOMovement
() =
default
;
98
99
100
// Member Functions
101
102
//- The readData member function used by regIOobject
103
bool
readData
(
Istream
& is);
104
105
//- The writeData member function required by regIOobject
106
bool
writeData
(
Ostream
&
os
)
const
;
107
};
108
109
110
// IOstream Operators
111
Ostream
&
operator<<
(
Ostream
&
os
,
const
lumpedPointIOMovement
& obj);
112
113
114
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
115
116
}
// End namespace Foam
117
118
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
119
120
#endif
121
122
// ************************************************************************* //
Foam::lumpedPointIOMovement::TypeNameNoDebug
TypeNameNoDebug("lumpedPointMovement")
Runtime type information.
Foam::Istream
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
Definition:
Istream.H:57
Foam::lumpedPointIOMovement::writeData
bool writeData(Ostream &os) const
The writeData member function required by regIOobject.
Definition:
lumpedPointIOMovement.C:103
Foam::lumpedPointMovement::ownerId
label ownerId() const
An owner Id, if needed for bookkeeping purposes.
Definition:
lumpedPointMovementI.H:33
Foam::lumpedPointIOMovement
IO-registered version of lumpedPointMovement.
Definition:
lumpedPointIOMovement.H:48
Foam::lumpedPointIOMovement::getMovementObject
static lumpedPointIOMovement * getMovementObject(const objectRegistry &obr)
Find the movement object or nullptr if not found.
Definition:
lumpedPointIOMovement.C:35
Foam::lumpedPointIOMovement::~lumpedPointIOMovement
virtual ~lumpedPointIOMovement()=default
Destructor.
Foam::lumpedPointIOMovement::readData
bool readData(Istream &is)
The readData member function used by regIOobject.
Definition:
lumpedPointIOMovement.C:93
Foam::Ostream
An Ostream is an abstract base class for all output systems (streams, files, token lists...
Definition:
Ostream.H:56
os
OBJstream os(runTime.globalPath()/outputName)
Foam::operator<<
Ostream & operator<<(Ostream &, const boundaryPatch &p)
Write boundaryPatch as dictionary entries (without surrounding braces)
Definition:
boundaryPatch.C:77
regIOobject.H
className.H
Macro definitions for declaring ClassName(), NamespaceName(), etc.
Foam::lumpedPointIOMovement::New
static autoPtr< lumpedPointIOMovement > New(const objectRegistry &obr, label ownerId=-1)
Create a movement object in the registry by reading system dictionary.
Definition:
lumpedPointIOMovement.C:46
lumpedPointMovement.H
Foam::regIOobject
regIOobject is an abstract class derived from IOobject to handle automatic object registration with t...
Definition:
regIOobject.H:68
Foam::autoPtr
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
Definition:
HashPtrTable.H:48
io
IOobject io("surfaceFilmProperties", mesh.time().constant(), mesh, IOobject::READ_IF_PRESENT, IOobject::NO_WRITE, IOobject::NO_REGISTER)
Foam::objectRegistry
Registry of regIOobjects.
Definition:
objectRegistry.H:53
Foam::IOobject
Defines the attributes of an object for which implicit objectRegistry management is supported...
Definition:
IOobject.H:180
Foam::lumpedPointMovement
The movement driver that describes initial point locations, the current state of the points/rotations...
Definition:
lumpedPointMovement.H:265
Foam
Namespace for OpenFOAM.
Definition:
atmBoundaryLayer.C:26
src
lumpedPointMotion
movement
lumpedPointIOMovement.H
Generated by
1.8.14