Wildmeshing Toolkit
transport_tuple.hpp
Go to the documentation of this file.
1 #pragma once
2 #include <wmtk/Primitive.hpp>
3 #include <wmtk/Tuple.hpp>
4 
5 namespace wmtk::autogen {
6 class SimplexDart;
7 }
8 namespace wmtk::multimesh::utils {
9 namespace internal {
10 
12  const Tuple& base_source,
13  const Tuple& base_target,
14  PrimitiveType base_primitive_type,
15  const Tuple& source,
16  PrimitiveType primitive_type);
18  const Tuple& base_source,
19  const Tuple& base_target,
20  PrimitiveType base_primitive_type,
21  const Tuple& source,
22  PrimitiveType primitive_type);
23 } // namespace internal
24 
25 // Maps the tuple source according to the operation sequence
26 // std::vector<PrimitiveType> operations where operations satisfies
27 // base_target = switch_tuples(base_source, operations)
28 // base_primitive_type specifies the type of mesh the base_source -> base_target should happen in
29 // primtmivie_type specifies for what sort of mesh source should be mapped to the return
30 Tuple transport_tuple(
31  const Tuple& base_source,
32  const Tuple& base_target,
33  PrimitiveType base_primitive_type,
34  const Tuple& source,
35  PrimitiveType primitive_type);
36 
37 Tuple transport_tuple(
38  const wmtk::autogen::SimplexDart& base_sd,
40  const Tuple& base_source,
41  const Tuple& base_target,
42  const Tuple& source);
43 } // namespace wmtk::multimesh::utils
Tuple transport_tuple_dart(const Tuple &base_source, const Tuple &base_target, PrimitiveType base_primitive_type, const Tuple &source, PrimitiveType primitive_type)
Tuple transport_tuple_sequence(const Tuple &base_source, const Tuple &base_target, PrimitiveType base_primitive_type, const Tuple &source, PrimitiveType primitive_type)
Tuple transport_tuple(const Tuple &base_source, const Tuple &base_target, PrimitiveType base_primitive_type, const Tuple &source, PrimitiveType primitive_type)