84 void createBoundary();
88 template<
class OutputIterator>
89 OutputIterator addBoundaryFaces
97 block(
const block&) =
delete;
100 void operator=(
const block&) =
delete;
183 mutable label index_;
204 return block::New(dict_, index_++, points_, edges_, faces_, is);
210 virtual ~block() =
default;
A 1D vector of objects of type <T> with a fixed length <N>.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
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,...
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
static const UList< T > & null() noexcept
Return a null UList (reference to a nullObject). Behaves like an empty UList.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
const pointField & vertices() const noexcept
Reference to point field defining the block mesh.
blockDescriptor(const blockDescriptor &)=default
Copy construct.
const labelVector & density() const noexcept
The mesh density (number of cells) in the i,j,k directions.
const word & zoneName() const noexcept
Return the (optional) zone name.
autoPtr< block > operator()(Istream &is) const
iNew(const dictionary &dict, const pointField &points, const blockEdgeList &edges, const blockFaceList &faces)
autoPtr< block > clone() const
Clone.
const pointField & points() const noexcept
The points for filling the block.
virtual ~block()=default
Destructor.
TypeName("block")
Runtime type information.
const FixedList< List< FixedList< label, 4 > >, 6 > & boundaryPatches() const noexcept
The boundary patch faces for the block.
static autoPtr< block > New(const dictionary &dict, const label index, const pointField &points, const blockEdgeList &edges, const blockFaceList &faces, Istream &)
New function which constructs and returns pointer to a block.
declareRunTimeSelectionTable(autoPtr, block, Istream,(const dictionary &dict, const label index, const pointField &vertices, const blockEdgeList &edges, const blockFaceList &faces, Istream &is),(dict, index, vertices, edges, faces, is))
cellShapeList shapes() const
The (hex) cell shapes for filling the block.
const List< hexCell > & cells() const
The hex cells for filling the block.
An analytical geometric cellShape.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
A hexahedral cell primitive.
label index(const label i, const label j, const label k) const
Linear addressing index (offset) for an (i,j,k) position.
A class for handling words, derived from Foam::string.
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
OBJstream os(runTime.globalPath()/outputName)
Vector< label > labelVector
Vector of labels.
PtrList< blockFace > blockFaceList
A PtrList of blockFaces.
PtrList< blockEdge > blockEdgeList
A PtrList of blockEdges.
vectorField pointField
pointField is a vectorField.
List< cellShape > cellShapeList
List of cellShape.
#define declareRunTimeSelectionTable(ptrWrapper, baseType, argNames, argList, parList)
Declare a run-time selection (variables and adder classes).
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.