85 CEPS_ABORT(
"Cannot add cell to dimension for dimension " << dim);
106 CEPS_ABORT(
"Cannot add boundary cell to dimension for dimension " << dim);
131 CEPS_WARNS (
"unknown junction type for this junction cell.");
142 CEPS_WARNS (
"unknown junction type for this junction cell.");
#define CEPS_ABORT(message)
Stops the execution with a message. If testing is enabled, only throws a runtime_error.
#define CEPS_ABORT_IF(condition, message)
Stops the execution with a message if condition is true. If testing is enabled, only throws a runtime...
#define CEPS_WARNS(message)
Writes a warning in the debug log and in the terminal (stderr).
std::vector< _Type, _Alloc > CepsVector
C++ vector.
std::make_unsigned_t< CepsInt > CepsUInt
Unsigned version on CepsInt.
JunctionType
Structure that holds the junction type.
@ TYPE_1D2D3D
Pt, tri and tetra junction.
@ TYPE_1D3D
Point to tetra.
@ TYPE_1D2D
Point to triangle.
CepsVector< GeomCell * > m_3d
3d volume
CepsVector< GeomCell * > m_2d
2d surface
const CepsVector< GeomCell * > & get2dcells() const
Connected 2d cells.
void addBoundaryCell(GeomCell *cell)
Add a boundary cell to the junction.
CepsVector< GeomCell * > m_3dBoundary
2d boundary of 3d volume
CepsVector< GeomCell * > m_1d
1d cable
void checkIntegrity()
Checks sanity of junction cell and determines its type.
CepsVector< GeomCell * > m_2dBoundary
1d boundary of 2d surfaces
virtual ~GeomCellJunction()
Destructor.
JunctionType m_type
Type of linked cells.
void addCell(GeomCell *cell)
Add a cell to the junction.
GeomCellJunction()
Default constructor.
const CepsVector< GeomCell * > & get3dcells() const
Connected 3d cells.
JunctionType getType() const
Type of junction.
const CepsVector< GeomCell * > & get1dcells() const
Connected 1d cells.
Abstract class for geometrical cell. On top of index and attributes managament, the cell has informat...
const CepsUInt & getDimension() const
Get the dimension of the object.
CepsBool isNullPtr(_Type *ptr)
Tells if passed pointer is null.