Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #include "polyMeshModifier.H"
00027 #include <OpenFOAM/dictionary.H>
00028
00029
00030
00031 namespace Foam
00032 {
00033
00034
00035
00036 autoPtr<polyMeshModifier> polyMeshModifier::New
00037 (
00038 const word& name,
00039 const dictionary& dict,
00040 const label index,
00041 const polyTopoChanger& mme
00042 )
00043 {
00044 if (debug)
00045 {
00046 Info<< "polyMeshModifier::New(const word&, const dictionary&, "
00047 << "const label, const polyTopoChanger&) : "
00048 << "constructing polyMeshModifier"
00049 << endl;
00050 }
00051
00052 word patchType(dict.lookup("type"));
00053
00054 dictionaryConstructorTable::iterator cstrIter =
00055 dictionaryConstructorTablePtr_->find(patchType);
00056
00057 if (cstrIter == dictionaryConstructorTablePtr_->end())
00058 {
00059 FatalIOErrorIn
00060 (
00061 "polyMeshModifier::New(const word&, const dictionary&, "
00062 "const label, const polyMesh&)",
00063 dict
00064 ) << "Unknown polyMeshModifier type " << patchType << endl << endl
00065 << "Valid polyMeshModifier types are :" << endl
00066 << dictionaryConstructorTablePtr_->sortedToc()
00067 << exit(FatalIOError);
00068 }
00069
00070 return autoPtr<polyMeshModifier>(cstrIter()(name, dict, index, mme));
00071 }
00072
00073
00074
00075
00076 }
00077
00078