Class NodeIndex
Defined in File fluds_structs.h
Inheritance Relationships
Derived Types
public opensn::AAHD_NodeIndex(Class AAHD_NodeIndex)public opensn::CBCD_NodeIndex(Class CBCD_NodeIndex)
Class Documentation
-
class NodeIndex
Base class for 64-bit integer encoding the index and bank information of a face node.
This base class manages the common bits:
Bit 63: Incoming/Outgoing
Bit 62: Boundary
Derived classes (AAHD_NodeIndex, CBCD_NodeIndex) manage the remaining bits (Local, Delayed, Index) as their layouts differ.
Subclassed by opensn::AAHD_NodeIndex, opensn::CBCD_NodeIndex
Boundary bit
/ / / Second bit mask (
01followed by 62 zeros).-
static std::uint64_t boundary_bit_mask = std::uint64_t(1) << (64 - 2)
Encode the value as boundary.
-
inline void SetBoundary(bool is_boundary) noexcept
Encode the value as boundary.
Public Functions
-
constexpr NodeIndex() = default
Default constructor.
-
inline constexpr NodeIndex(const std::uint64_t &value)
Direct assign core value.
-
inline bool IsUndefined() const noexcept
Check if the current index is undefined.
-
inline bool IsOutgoing() const noexcept
Check if the current index is incoming or outgoing.
-
inline bool IsBoundary() const noexcept
Check if the current index corresponds to boundary.
-
inline std::uint64_t GetCoreValue() const noexcept
Get the core value.
Protected Attributes
-
std::uint64_t value_ = std::numeric_limits<std::uint64_t>::max()
Core value.