38 std::vector<std::vector<std::vector<std::vector<int>>>> m_topology;
39 std::pair<std::vector<double>, std::array<std::size_t, 2>> m_geometry;
40 CellType m_facet =
nullptr;
41 CellType m_edge =
nullptr;
44 virtual ~Cell() =
default;
45 virtual CellType facet() {
return m_facet; };
46 virtual CellType edge() {
return m_edge; };
47 std::string_view name()
const;
48 int dimension()
const;
49 int num_entities(
int dim)
const;
50 std::vector<std::vector<int>> get_entity_vertices(
int dim)
const;
51 std::vector<std::vector<int>> get_sub_entities(
int dim0,
int dim1)
const;
52 const std::vector<std::vector<std::vector<std::vector<int>>>> &topology()
const {
55 int num_sub_entities(
int dim)
const;
56 CellKind kind()
const {
return m_kind; }