Initial commit for version 2.0.x patch release
[OpenFOAM-2.0.x.git] / src / surfMesh / surfZone / surfZoneIdentifier / surfZoneIdentifier.C
blobf569660a04bc02749cf55f291d7e34fd7d62c28e
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright (C) 2009-2010 OpenCFD Ltd.
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
13     the Free Software Foundation, either version 3 of the License, or
14     (at your 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, see <http://www.gnu.org/licenses/>.
24 \*---------------------------------------------------------------------------*/
26 #include "surfZoneIdentifier.H"
27 #include "dictionary.H"
29 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
31 Foam::surfZoneIdentifier::surfZoneIdentifier()
33     name_(word::null),
34     index_(0),
35     geometricType_(word::null)
39 Foam::surfZoneIdentifier::surfZoneIdentifier
41     const word& name,
42     const label index,
43     const word& geometricType
46     name_(name),
47     index_(index),
48     geometricType_(geometricType)
52 Foam::surfZoneIdentifier::surfZoneIdentifier
54     const word& name,
55     const dictionary& dict,
56     const label index
59     name_(name),
60     index_(index)
62     dict.readIfPresent("geometricType", geometricType_);
66 Foam::surfZoneIdentifier::surfZoneIdentifier
68     const surfZoneIdentifier& p,
69     const label index
72     name_(p.name()),
73     index_(index),
74     geometricType_(p.geometricType())
78 // * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
80 Foam::surfZoneIdentifier::~surfZoneIdentifier()
84 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
87 void Foam::surfZoneIdentifier::write(Ostream& os) const
89     if (geometricType_.size())
90     {
91         os.writeKeyword("geometricType") << geometricType_
92             << token::END_STATEMENT << nl;
93     }
97 // * * * * * * * * * * * * * * * Member Operators  * * * * * * * * * * * * * //
99 // bool Foam::surfZoneIdentifier::operator!=
100 // (
101 //     const surfZoneIdentifier& p
102 // ) const
103 // {
104 //     return !(*this == p);
105 // }
108 // bool Foam::surfZoneIdentifier::operator==
109 // (
110 //     const surfZoneIdentifier& p
111 // ) const
112 // {
113 //     return geometricType() == p.geometricType() && name() == p.name();
114 // }
117 // * * * * * * * * * * * * * * * Friend Operators  * * * * * * * * * * * * * //
119 // Foam::Istream& Foam::operator>>(Istream& is, surfZoneIdentifier& p)
120 // {
121 //     is >> p.name_ >> p.geometricType_;
123 //     return is;
124 // }
127 Foam::Ostream& Foam::operator<<(Ostream& os, const surfZoneIdentifier& p)
129     p.write(os);
130     os.check
131     (
132         "Ostream& operator<<(Ostream&, const surfZoneIdentifier&)"
133     );
134     return os;
138 // ************************************************************************* //