1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
7 -------------------------------------------------------------------------------
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
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 "GAMGInterfaceField.H"
28 // * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * //
30 Foam::autoPtr<Foam::GAMGInterfaceField> Foam::GAMGInterfaceField::New
32 const GAMGInterface& GAMGCp,
33 const lduInterfaceField& fineInterface
36 const word coupleType(fineInterface.interfaceFieldType());
38 lduInterfaceConstructorTable::iterator cstrIter =
39 lduInterfaceConstructorTablePtr_->find(coupleType);
41 if (cstrIter == lduInterfaceConstructorTablePtr_->end())
45 "GAMGInterfaceField::New"
46 "(const GAMGInterface& GAMGCp, "
47 "const lduInterfaceField& fineInterface)"
48 ) << "Unknown GAMGInterfaceField type "
50 << "Valid GAMGInterfaceField types are :"
51 << lduInterfaceConstructorTablePtr_->sortedToc()
55 return autoPtr<GAMGInterfaceField>(cstrIter()(GAMGCp, fineInterface));
59 // ************************************************************************* //