19 : _name(
name), _fill_name(
""), _region(region)
26 : _name(
name), _fill_name(mat_name), _region(region)
33 : _name(
name), _fill_name(
""), _region(region), _fill_universe(univ)
40 : _name(
name), _fill_name(
""), _region(region), _fill_lattice(lattice)
119 std::map<std::string, std::reference_wrapper<const CSGSurface>> & identical_surface_refs)
129 const auto fill_type_eq =
132 if (name_eq && region_eq && fill_type_eq && transformations_eq)
150 return !(*
this == other);
std::string name(const ElemQuality q)
const CSGLattice & getFillLattice() const
Get the cell fill if fill type is LATTICE.
void updateCellRegionSurfaces(std::map< std::string, std::reference_wrapper< const CSGSurface >> &identical_surface_refs)
Update surface references of cell region based on map of input surface references.
const CSGUniverse & getFillUniverse() const
Get the cell fill if fill type is UNIVERSE.
const std::string & getName() const
Get the cell name.
const std::string getFillType() const
Get the type of fill for the cell.
void updateCellFill(const std::string &mat_name)
Set the cell fill to a material name.
MooseEnum _fill_type
An enum for type of fill for cell region.
CSGRegions creates an internal representation of a CSG region, which can refer to an intersection...
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
CSGUniverse creates an internal representation of a Constructive Solid Geometry (CSG) universe...
const std::string & getName() const
Get the name of lattice.
void resetCellFill()
Reset the cell fill to void.
const std::string & getFillName() const
Get the name of the fill, regardless of its type.
CSGRegion _region
Cell region, represented as a CSGRegion object.
CSGLattice is the abstract class for defining lattices.
const std::string & getName() const
Get the name of the universe.
void updateSurfaceReferences(std::map< std::string, std::reference_wrapper< const CSGSurface >> &identical_surface_refs)
Update surface references of region based on map of input surface references.
CSGCell(const std::string &name, const CSGRegion ®ion)
Constructor for void cell.
const CSGLattice * _fill_lattice
Fill object if fill is CSGLattice.
void checkValidCSGName(const std::string &name)
Check name of CSG component for disallowed characters and symbols.
CSGCell creates an internal representation of a Constructive Solid Geometry (CSG) cell...
bool operator!=(const CSGCell &other) const
Operator overload for checking if two CSGCell objects are not equal.
std::string _fill_name
name of the fill object for CSG_MATERIAL fills
const CSGRegion & getRegion() const
Get the cell region.
const CSGUniverse * _fill_universe
Fill object if fill is CSGUniverse.
const std::string & getFillMaterial() const
Get the cell fill material name if fill fype is CSG_MATERIAL.
bool operator==(const CSGCell &other) const
Operator overload for checking if two CSGCell objects are equal.