131 for (label pointi = 0; pointi < maxLen; ++pointi)
140 addressing_.setSize(
n);
143 for (label pointi = 0; pointi < maxLen; ++pointi)
147 addressing_[
n] = pointi;
157 DynamicList<label> newAddressing(addressing_.size());
159 const pointZoneSet& zoneSet = refCast<const pointZoneSet>(
set);
161 for (
const label pointi : zoneSet.addressing())
165 newAddressing.append(pointi);
169 addressing_.transfer(newAddressing);
176 DynamicList<label> newAddressing(addressing_);
178 const pointZoneSet& zoneSet = refCast<const pointZoneSet>(
set);
180 for (
const label pointi : zoneSet.addressing())
184 newAddressing.append(pointi);
188 addressing_.transfer(newAddressing);
195 DynamicList<label> newAddressing(addressing_.size());
197 const pointZoneSet& zoneSet = refCast<const pointZoneSet>(
set);
199 for (label pointi : addressing_)
201 if (!zoneSet.found(pointi))
204 newAddressing.append(pointi);
208 addressing_.transfer(newAddressing);
232 const bool writeOnProc
236 word oldTypeName = typeName;
237 const_cast<word&
>(
type()) = pointSet::typeName;
239 const_cast<word&
>(
type()) = oldTypeName;
247 zoneID = pointZones.
size();
264 pointZones[zoneID] = addressing_;
268 return ok && pointZones.
write(writeOnProc);
275 labelList newAddressing(addressing_.size());
278 for (
const label pointi : addressing_)
280 const label
newPointi = morphMap.reversePointMap()[pointi];
287 newAddressing.resize(
n);
289 addressing_.transfer(newAddressing);
writeOption
Enumeration defining write preferences.
void size(const label n)
Older name for setAddressableSize.
void clearAddressing()
Clear addressing.
virtual void subset(const topoSet &set)
Subset contents. Only elements present in both sets remain.
label nPoints() const noexcept
Number of mesh points.
labelList sortedOrder(const UList< T > &input)
Return the (stable) sort order for the list.
const word & name() const noexcept
Return the object name.
Cell-face mesh analysis engine.
Type & refCast(U &obj)
A dynamic_cast (for references). Generates a FatalError on failed casts and uses the virtual type() m...
void inplaceReorder(const labelUList &oldToNew, ListType &input, const bool prune=false)
Inplace reorder the elements of a list.
virtual bool set(const label id)
Set an index.
A simple container for options an IOstream can normally have.
void set(List< bool > &bools, const labelUList &locations)
Set the listed locations (assign 'true').
virtual bool writeObject(IOstreamOption streamOpt, const bool writeOnProc) const
Write using stream options.
void updateSet()
Sort addressing and make pointSet part consistent with addressing.
bool isReadOptional() const noexcept
True if (LAZY_READ) bits are set [same as READ_IF_PRESENT].
virtual void writeDebug(Ostream &os, const primitiveMesh &, const label maxLen) const
Write maxLen items with label and coordinates.
Macros for easy insertion into run-time selection tables.
void resize(const label sz)
Resize the hash table for efficiency.
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
virtual void addSet(const topoSet &set)
Add elements present in set.
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
label findZoneID(const word &zoneName) const
Find zone index by name, return -1 if not found.
A class for handling words, derived from Foam::string.
label size() const noexcept
The number of entries in the list.
virtual label maxSize(const polyMesh &mesh) const
Return max index+1.
virtual bool write(const bool writeOnProc=true) const
Write using setting from DB.
virtual void subtractSet(const topoSet &set)
Subtract elements present in set.
const T * set(const label i) const
Return const pointer to element (can be nullptr), or nullptr for out-of-range access (ie...
An Ostream is an abstract base class for all output systems (streams, files, token lists...
OBJstream os(runTime.globalPath()/outputName)
defineTypeNameAndDebug(combustionModel, 0)
void setSize(const label newLen)
Same as resize()
bool isReadRequired() const noexcept
True if (MUST_READ | READ_MODIFIED) bits are set.
General set of labels of mesh quantity (points, cells, faces).
addToRunTimeSelectionTable(decompositionMethod, kahipDecomp, dictionary)
virtual bool writeObject(IOstreamOption streamOpt, const bool writeOnProc) const
Write pointZone using stream options.
virtual void updateMesh(const mapPolyMesh &morphMap)
Update any stored data for new labels.
List< label > sortedToc(const UList< bool > &bools)
Return the (sorted) values corresponding to 'true' entries.
virtual void invert(const label maxLen)
Invert contents.
Mesh consisting of general polyhedral cells.
virtual void sync(const polyMesh &mesh)
Sync set across coupled patches. Adds coupled points to set.
virtual void writeDebug(Ostream &os, const primitiveMesh &, const label maxLen) const
Write maxLen items with label and coordinates.
List< label > labelList
A List of labels.
virtual void check(const label maxSize)
Check limits on addressable range.
virtual void sync(const polyMesh &mesh)
Sync pointZoneSet across coupled patches.
void clearStorage()
Clear the table entries and the table itself.
Like pointSet but -reads data from pointZone -updates pointZone when writing.
pointZoneSet(const polyMesh &mesh, const word &name, IOobjectOption::readOption rOpt=IOobjectOption::MUST_READ, IOobjectOption::writeOption wOpt=IOobjectOption::NO_WRITE)
Construct from objectRegistry and name.
readOption
Enumeration defining read preferences.