43 for (
const wordRe& item : list)
101 return faceZoneInclude_.size();
110 patchInclude_.clear();
111 patchExclude_.clear();
112 faceZoneInclude_.clear();
113 cellZoneInclude_.clear();
140 if (patchInclude_.size())
142 patchInclude_.clear();
145 <<
"Deactivating boundary, removed old patch selection"
156 bool old(cellZones_);
159 if (!cellZones_ && cellZoneInclude_.size())
161 cellZoneInclude_.clear();
164 <<
"Deactivating cellZones, removed old zone selection"
177 patchInclude_ =
wordRes(patterns);
179 if (!boundary_ && patchInclude_.size())
181 patchInclude_.clear();
184 <<
"Ignoring patch selection, boundary is disabled"
195 patchInclude_ =
wordRes(std::move(patterns));
197 if (!boundary_ && patchInclude_.size())
199 patchInclude_.clear();
202 <<
"Ignoring patch selection, boundary is disabled"
213 patchExclude_ =
wordRes(patterns);
222 patchExclude_ =
wordRes(std::move(patterns));
231 faceZoneInclude_ =
wordRes(patterns);
240 faceZoneInclude_ =
wordRes(std::move(patterns));
249 cellZoneInclude_ =
wordRes(patterns);
251 if (!cellZones_ && cellZoneInclude_.size())
253 cellZoneInclude_.clear();
256 <<
"Ignoring cellZone selection, cellZones are disabled"
267 cellZoneInclude_ =
wordRes(std::move(patterns));
269 if (!cellZones_ && cellZoneInclude_.size())
271 cellZoneInclude_.clear();
274 <<
"Ignoring cellZone selection, cellZones are disabled"
287 if (!cellZoneInclude_.empty())
289 os.writeKeyword(
"include");
299 if (!patchInclude_.empty())
301 os.writeKeyword(
"include");
304 if (!patchExclude_.empty())
306 os.writeKeyword(
"exclude");
316 if (!faceZoneInclude_.empty())
318 os.writeKeyword(
"include");
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
static const char * name(bool b) noexcept
A string representation of bool as "false" / "true".
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
bool useBoundaryMesh() const noexcept
Using boundary?
const wordRes & faceZoneSelection() const noexcept
Selection of face zones. Empty if unspecified.
bool useInternalMesh() const noexcept
Using internal?
bool useFaceZones() const noexcept
Using faceZones?
void print(Ostream &os) const
Report values.
const wordRes & patchSelection() const noexcept
Selection of patches. Empty if unspecified.
bool lazy() const noexcept
Lazy creation? (ie, starts as needsUpdate).
const wordRes & patchExclude() const noexcept
Excluded patches. Empty if unspecified.
void reset()
Reset to defaults.
options()
Default construct. Non-lazy with internal/boundary/cellZones.
bool useCellZones() const noexcept
Using cellZones?
const wordRes & cellZoneSelection() const noexcept
Selection of cell zones. Empty if unspecified.
@ BEGIN_LIST
Begin list [isseparator].
@ END_LIST
End list [isseparator].
A wordRe is a Foam::word, but can contain a regular expression for matching words or strings.
A List of wordRe with additional matching capabilities.
OBJstream os(runTime.globalPath()/outputName)
#define WarningInFunction
Report a warning using Foam::Warning.
static Ostream & printPatterns(Ostream &os, const wordRes &list)
Ostream & endl(Ostream &os)
Add newline and flush stream.
constexpr char nl
The newline '\n' character (0x0a).