26 #include "readFields.H" 30 template<
class Type,
template<
class>
class PatchField,
class GeoMesh>
33 const typename GeoMesh::Mesh& mesh,
34 const IOobjectList& objects,
35 PtrList<GeometricField<Type, PatchField, GeoMesh>>& fields,
36 const bool readOldTime
39 typedef GeometricField<Type, PatchField, GeoMesh> GeoField;
42 IOobjectList fieldObjects(objects.lookupClass(GeoField::typeName));
45 IOobjectList::iterator celDistIter = fieldObjects.find(
"cellDist");
46 if (celDistIter != fieldObjects.end())
48 fieldObjects.erase(celDistIter);
53 const wordList masterNames(fieldObjects.sortedNames());
56 fields.
setSize(masterNames.size());
60 const IOobject& io = *fieldObjects[masterNames[i]];
62 fields.set(i,
new GeoField(io, mesh, readOldTime));
67 template<
class Mesh,
class GeoField>
71 const IOobjectList& objects,
72 PtrList<GeoField>& fields
76 IOobjectList fieldObjects(objects.lookupClass(GeoField::typeName));
79 fields.setSize(fieldObjects.size());
83 const wordList masterNames(fieldObjects.sortedNames());
86 fields.
setSize(masterNames.size());
90 const IOobject& io = *fieldObjects[masterNames[i]];
92 fields.set(i,
new GeoField(io, mesh));
#define forAll(list, i)
Loop across all elements in list.
void readFields(const typename GeoFieldType::Mesh &mesh, const IOobjectList &objects, const HashSet< word > &selectedFields, LIFOStack< regIOobject *> &storedObjects)
Read the selected GeometricFields of the specified type.
List< word > wordList
A List of words.
void setSize(const label)
Reset size of List.