Initial commit for version 2.0.x patch release
[OpenFOAM-2.0.x.git] / src / regionModels / surfaceFilmModels / submodels / kinematic / injectionModel / injectionModel / injectionModelNew.C
bloba077d7edd18feed20c382bb2cef62c243db9d724
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright (C) 2009-2011 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 "injectionModel.H"
28 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
30 namespace Foam
32 namespace regionModels
34 namespace surfaceFilmModels
37 // * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * //
39 autoPtr<injectionModel> injectionModel::New
41     const surfaceFilmModel& model,
42     const dictionary& dict,
43     const word& modelType
46     Info<< "        " << modelType << endl;
48     dictionaryConstructorTable::iterator cstrIter =
49         dictionaryConstructorTablePtr_->find(modelType);
51     if (cstrIter == dictionaryConstructorTablePtr_->end())
52     {
53         FatalErrorIn
54         (
55             "injectionModel::New(const surfaceFilmModel&, const dictionary&)"
56         )   << "Unknown injectionModel type " << modelType
57             << nl << nl << "Valid injectionModel types are:" << nl
58             << dictionaryConstructorTablePtr_->toc()
59             << exit(FatalError);
60     }
62     return autoPtr<injectionModel>(cstrIter()(model, dict));
66 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
68 } // End namespace surfaceFilmModels
69 } // End namespace regionModels
70 } // End namespace Foam
72 // ************************************************************************* //