49 #ifndef Foam_UnsortedMeshedSurface_H 50 #define Foam_UnsortedMeshedSurface_H 68 template<
class Face>
class MeshedSurface;
69 template<
class Face>
class MeshedSurfaceProxy;
70 template<
class Face>
class UnsortedMeshedSurface;
73 Istream&
operator>>(Istream&, UnsortedMeshedSurface<Face>&);
75 Ostream& operator<<(Ostream&, const UnsortedMeshedSurface<Face>&);
115 void resize(
const label,
const Face&) =
delete;
118 void setSize(
const label,
const Face&) =
delete;
244 const bool isGlobal =
true 271 const word& fileType,
272 bool mandatory =
true 297 (
name, surf, streamOpt, options)
314 const word& fileType,
341 const List<surfZoneIdentifier>&
zoneToc()
const 367 virtual void clear();
374 template<
class BoolListType>
377 const BoolListType& include,
392 const UList<bool>& include,
464 const word& fileType,
469 write(
name, fileType, *
this, streamOpt, options);
496 friend Istream&
operator>> <Face>
504 friend Ostream& operator<< <Face>
A surface geometry mesh, in which the surface zone information is conveyed by the 'zoneId' associated...
virtual void clear()
Clear all storage.
List< word > names(const UPtrList< T > &list, const UnaryMatchPredicate &matcher)
List of names generated by calling name() for each list item and filtered for matches.
A class for handling file names.
static wordHashSet writeTypes()
Known writable file-types, without friends or proxies.
patchWriters resize(patchIds.size())
A list of keyword definitions, which are a keyword followed by a number of values (eg...
A surface geometry mesh with zone information, not to be confused with the similarly named surfaceMes...
void swap(MeshedSurface< Face > &surf)=delete
Swap contents - disabled.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
void transfer(UnsortedMeshedSurface< Face > &surf)
Transfer the contents of the argument and annul the argument.
autoPtr< labelList > releaseZoneIds()
Release (clear) stored zoneIds and return for reuse.
void subsetMeshMap(const BoolListType &include, labelList &pointMap, labelList &faceMap) const
Create mappings for a sub-surface.
A simple container for options an IOstream can normally have.
static autoPtr< UnsortedMeshedSurface > New(const fileName &name, const word &fileType, bool mandatory=true)
Read construct from filename with given file type.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
Face face_type
The face type (same as the underlying PrimitivePatch)
UList< label > labelUList
A UList of labels.
Pair< int > faceMap(const label facePi, const face &faceP, const label faceNi, const face &faceN)
label size() const
The surface size is the number of faces.
declareRunTimeSelectionTable(autoPtr, UnsortedMeshedSurface, fileExtension,(const fileName &name),(name))
points setSize(newPointi)
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for expressions::valueTypeCode::INVALID.
virtual ~UnsortedMeshedSurface()=default
Destructor.
A class for handling words, derived from Foam::string.
Istream & operator>>(Istream &, directionInfo &)
static wordHashSet readTypes()
Known readable file-types, without friends or proxies.
static const dictionary null
An empty dictionary, which is also the parent for all dictionaries.
static const word null
An empty word.
point point_type
The point type (same as the underlying PrimitivePatch)
TypeName("UnsortedMeshedSurface")
Declare type-name, virtual type (with debug switch)
UnsortedMeshedSurface()
Default construct.
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
A surface mesh consisting of general polygon faces that has IO capabilities and a registry for storin...
An Ostream is an abstract base class for all output systems (streams, files, token lists...
static bool canRead(const fileName &name, bool verbose=false)
Can we read this file format?
UnsortedMeshedSurface subsetMesh(const UList< bool > &include, labelList &pointMap, labelList &faceMap) const
Return a new surface subsetted on the selected faces.
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
static void write(const fileName &name, const UnsortedMeshedSurface< Face > &surf, IOstreamOption streamOpt=IOstreamOption(), const dictionary &options=dictionary::null)
Write to file, select based on its extension.
virtual const labelList & zoneIds() const
Return const access to the zone ids.
OBJstream os(runTime.globalPath()/outputName)
static bool canReadType(const word &fileType, bool verbose=false)
Can we read this file format? Also checks friend types.
A proxy for writing MeshedSurface, UnsortedMeshedSurface and surfMesh to various file formats...
virtual void remapFaces(const labelUList &faceMapNewToOld)
Set new zones from faceMap.
const List< surfZoneIdentifier > & zoneToc() const
Return const access to the zone table-of-contents.
surfZoneList sortedZones(labelList &faceMap) const
Sort faces according to zoneIds.
Macros to ease declaration of member function selection tables.
label size() const
The surface size is the number of faces.
A bitSet stores bits (elements with only two states) in packed internal format and supports a variety...
const Foam::Enum< fileTag > fileExtension
File extension (without ".") for some vtk XML file content types.
static bool canWriteType(const word &fileType, bool verbose=false)
Can we write this file format? Also checks friend types.
void operator=(const UnsortedMeshedSurface< Face > &surf)
Copy assignment.
List< surfZone > surfZoneList
List of surfZone.
void setZones(const surfZoneList &zoneLst)
Set zone ids and zones.
List< surfZoneIdentifier > & storedZoneToc()
Return non-const access to the zone table-of-contents.
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
Macros to ease declaration of run-time selection tables.
List< label > labelList
A List of labels.
IOobject io("surfaceFilmProperties", mesh.time().constant(), mesh, IOobject::READ_IF_PRESENT, IOobject::NO_WRITE, IOobject::NO_REGISTER)
bool read(const fileName &name, const word &fileType)
Read from file with given format type.
labelList & storedZoneIds()
Return non-const access to the zone Ids.
Defines the attributes of an object for which implicit objectRegistry management is supported...
declareMemberFunctionSelectionTable(void, UnsortedMeshedSurface, write, fileExtension,(const fileName &name, const UnsortedMeshedSurface< Face > &surf, IOstreamOption streamOpt, const dictionary &options),(name, surf, streamOpt, options))
void setOneZone()
Set zones to 0 and set a single zone.