24 for (
const Tuple& t : tuples) {
49 if (my_primitive_type != parent_primitive_type) {
52 if (parent_tuples.size() == 1) {
56 parent_primitive_type);
58 for (
const auto& parent_tup : parent_tuples) {
62 parent_primitive_type);
63 std::copy(c.begin(), c.end(), std::back_inserter(r));
65 if (parent_tuples.size() > 1) {
69 parent_tuples = std::move(r);
std::vector< Tuple > get_all(PrimitiveType type) const
Generate a vector of Tuples from global vertex/edge/triangle/tetrahedron index.
std::vector< Tuple > lub_map_tuples(const Mesh &other_mesh, const simplex::Simplex &my_simplex) const
maps a simplex from this mesh to any other mesh using LUB mesh as root
PrimitiveType primitive_type() const
AttributeTransferStrategyBase(const attribute::MeshAttributeHandle &my_handle)
virtual void run(const simplex::Simplex &s) const =0
static std::vector< Tuple > get_parent_simplices(const Mesh &m, const Mesh &parent, const simplex::Simplex &s, PrimitiveType parent_primitive_type)
virtual ~AttributeTransferStrategyBase()
bool matches_attribute(const wmtk::attribute::MeshAttributeHandle &attr) const
attribute::MeshAttributeHandle m_handle
const attribute::MeshAttributeHandle & handle() const
PrimitiveType primitive_type() const
void unique_homogeneous_simplices_inline(const Mesh &m, PrimitiveType pt, std::vector< Tuple > &tups)
std::vector< Tuple > neighbors_single_dimension_tuples(const Mesh &m, const Simplex &s, const PrimitiveType tpt)