Wildmeshing Toolkit
SimplexDart.hpp
Go to the documentation of this file.
1 #pragma once
2 // DO NOT MODIFY, autogenerated from the /scripts directory
3 #include <Eigen/Core>
4 #include <wmtk/PrimitiveType.hpp>
5 #include <wmtk/Types.hpp>
8 
9 namespace wmtk::autogen::edge_mesh {
11 {
12 public:
14 
15  static int8_t product(int8_t a, int8_t b) { return auto_valid_switch_product_table[b][a]; }
16  static int8_t inverse(int8_t a) { return auto_valid_switch_inverse_table[a]; }
18  {
20  }
21  static int8_t identity()
22  {
24  }
25  static int8_t opposite()
26  {
29  }
30  constexpr static size_t size() { return sizeof(auto_valid_tuple_indices) / sizeof(int8_t); }
31 
33  static auto valid_indices_dynamic()
34  {
36  }
37 
38  static int8_t simplex_index(wmtk::PrimitiveType type, int8_t valid_index)
39  {
40  return auto_valid_tuples[valid_index][get_primitive_type_id(type)];
41  }
42 
43  // constexpr static Eigen::Map<const Eigen::Matrix<int8_t, SimplexDart::size(), 1>>
44  // constexpr static auto valid_indices()
45  //{
46  // return Vector<int8_t,return sizeof(auto_valid_tuple_indices) / sizeof(int8_t); }
47  // {auto_valid_tuple_indices};
48  //}
49 };
50 
51 } // namespace wmtk::autogen::edge_mesh
static int8_t primitive_to_index(wmtk::PrimitiveType pt)
Definition: SimplexDart.hpp:17
static int8_t simplex_index(wmtk::PrimitiveType type, int8_t valid_index)
Definition: SimplexDart.hpp:38
constexpr static size_t size()
Definition: SimplexDart.hpp:30
static int8_t product(int8_t a, int8_t b)
Definition: SimplexDart.hpp:15
static int8_t inverse(int8_t a)
Definition: SimplexDart.hpp:16
const int8_t auto_valid_tuple_indices[2]
const int8_t auto_valid_switch_product_table[2][2]
const int8_t auto_valid_switch_inverse_table[2]
const int8_t auto_valid_tuples[2][1]
const int8_t auto_valid_tuple_switch_indices[3]
auto array_to_map(const T(&a)[R][C])
Definition: array_to_map.hpp:6
constexpr int8_t get_primitive_type_id(PrimitiveType t)
Get a unique integer id corresponding to each primitive type.
Vector< T, Eigen::Dynamic > VectorX
Definition: Types.hpp:19