fixed writing out entries in advective bc
[OpenFOAM-1.6-ext.git] / src / engine / enginePiston / enginePiston.H
blobc9dfb53325f1903a5f11480958c47df6c03b04e7
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright held by original author
6      \\/     M anipulation  |
7 -------------------------------------------------------------------------------
8 License
9     This file is part of OpenFOAM.
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 the
13     Free Software Foundation; either version 2 of the License, or (at your
14     option) any later version.
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.
21     You should have received a copy of the GNU General Public License
22     along with OpenFOAM; if not, write to the Free Software Foundation,
23     Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
25 Class
26     Foam::enginePiston
28 Description
29     Foam::enginePiston
31 SourceFiles
32     enginePiston.C
34 \*---------------------------------------------------------------------------*/
36 #ifndef enginePiston_H
37 #define enginePiston_H
39 #include "polyPatchID.H"
40 #include "coordinateSystem.H"
41 #include "simpleEnginePiston.H"
43 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45 namespace Foam
48 // Forward declaration of classes
49 class polyMesh;
50 class engineTime;
52 /*---------------------------------------------------------------------------*\
53                            Class enginePiston Declaration
54 \*---------------------------------------------------------------------------*/
56 class enginePiston
58     public simpleEnginePiston
60     // Private data
62         //- Name of piston point set
63         word pistonPointSetName_;
65         //- Name of piston face set
66         word pistonFaceSetName_;
68         //- Name of piston cell set
69         word pistonCellSetName_;
72         //- Bowl in piston patch
73         polyPatchID bowlInPistonPatchID_;
75         //- Bowl in cylinder patch
76         polyPatchID bowlInCylinderPatchID_;
78     // Private Member Functions
80         //- Disallow default bitwise copy construct
81         enginePiston(const enginePiston&);
83         //- Disallow default bitwise assignment
84         void operator=(const enginePiston&);
87 public:
89     // Static data members
92     // Constructors
94         //- Construct from components
95         enginePiston
96         (
97             const polyMesh& mesh,
98             const word& pistonPatchName,
99             const autoPtr<coordinateSystem>& pistonCS,
100             const scalar minLayer,
101             const scalar maxLayer,
102             const word& pistonPointSetName,
103             const word& pistonFaceSetName,
104             const word& pistonCellSetName,
105             const word& bowlInPistonPatchName,
106             const word& bowlInCylinderPatchName
107         );
109         //- Construct from dictionary
110         enginePiston
111         (
112             const polyMesh& mesh,
113             const dictionary& dict
114         );
117     // Destructor - default
120     // Member Functions
122         const word& pistonPointSetName() const
123         {
124             return pistonPointSetName_;
125         }
127         const word& pistonFaceSetName() const
128         {
129             return pistonFaceSetName_;
130         }
132         const word& pistonCellSetName() const
133         {
134             return pistonCellSetName_;
135         }
138         const polyPatchID& bowlInPistonPatchID() const
139         {
140                 return bowlInPistonPatchID_;
141         }
143         const polyPatchID& bowlInCylinderPatchID() const
144         {
145             return bowlInCylinderPatchID_;
146         }
149         //- Write dictionary
150         void writeDict(Ostream&) const;
154 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
156 } // End namespace Foam
158 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
160 #endif
162 // ************************************************************************* //