MAIA bb96820c
Multiphysics at AIA
Loading...
Searching...
No Matches
lbcellproperties.h
Go to the documentation of this file.
1// Copyright (C) 2024 The m-AIA AUTHORS
2//
3// This file is part of m-AIA (https://git.rwth-aachen.de/aia/m-AIA/m-AIA)
4//
5// SPDX-License-Identifier: LGPL-3.0-only
6
7#ifndef LBCELLPROPERTIES_H_
8#define LBCELLPROPERTIES_H_
9
10#include <bitset>
11#include <type_traits>
12
14enum class LbCell {
18 IsHalo,
21 IsGhost,
28 // <<< add new properties here
29 // ---
31};
32
33
34namespace maia {
35namespace lb {
36namespace cell {
37
39constexpr std::underlying_type<LbCell>::type p(const LbCell property) {
40 return static_cast<std::underlying_type<LbCell>::type>(property);
41}
42
43using BitsetType = std::bitset<p(LbCell::NumProperties)>;
44
45} // namespace cell
46} // namespace lb
47} // namespace maia
48
49#endif // LBCELLPROPERTIES_H_
LbCell
LB cell Property Labels.
@ IsGhost
LB: cell is a ghost cell.
@ NumProperties
@ IsBndryCell
LB: cell is a boundary cell.
@ IsInterfaceParent
LB: cell is a parent of an interface cell.
@ IsInterface
interface cells, set by cartesiangrid for the solvers
@ IsExchange
@ OnlyBoundary
LB: ???
@ WasNewlyCreated
@ IsInterfaceChild
LB: cell is a child of an interface cell.
std::bitset< p(LbCell::NumProperties)> BitsetType
constexpr std::underlying_type< LbCell >::type p(const LbCell property)
Converts property name to underlying integer value.
Namespace for auxiliary functions/classes.