Wildmeshing Toolkit
AttributeScopeHandle.cpp
Go to the documentation of this file.
1
#include "
AttributeScopeHandle.hpp
"
2
#include <
wmtk/EdgeMesh.hpp
>
3
#include <
wmtk/Mesh.hpp
>
4
#include <
wmtk/PointMesh.hpp
>
5
#include <
wmtk/TetMesh.hpp
>
6
#include <
wmtk/TriMesh.hpp
>
7
#include <
wmtk/attribute/AttributeScopeHandle.hpp
>
8
#include <
wmtk/multimesh/MultiMeshVisitor.hpp
>
9
namespace
wmtk::multimesh::attribute
{
10
AttributeScopeHandle::AttributeScopeHandle
(
Mesh
& m)
11
{
12
auto
get_handles = [&](
auto
&& mesh) {
13
using
T = std::remove_reference_t<decltype(mesh)>;
14
if
constexpr (!std::is_const_v<T>) {
15
m_scopes
.emplace_back(mesh.create_single_mesh_scope());
16
}
17
};
18
19
MultiMeshVisitor
(get_handles).execute_from_root(m);
20
}
21
22
23
void
AttributeScopeHandle::mark_failed
()
24
{
25
for
(
single_handle_type
& scope :
m_scopes
) {
26
scope.mark_failed();
27
}
28
}
29
}
// namespace wmtk::multimesh::attribute
EdgeMesh.hpp
Mesh.hpp
MultiMeshVisitor.hpp
PointMesh.hpp
TetMesh.hpp
TriMesh.hpp
AttributeScopeHandle.hpp
wmtk::Mesh
Definition:
Mesh.hpp:106
wmtk::attribute::AttributeScopeHandle
This handle is a wrapper for the MeshManager scope funtions.
Definition:
AttributeScopeHandle.hpp:15
wmtk::multimesh::attribute::AttributeScopeHandle::m_scopes
std::vector< single_handle_type > m_scopes
Definition:
AttributeScopeHandle.hpp:21
wmtk::multimesh::attribute::AttributeScopeHandle::mark_failed
void mark_failed()
Definition:
AttributeScopeHandle.cpp:23
wmtk::multimesh::attribute::AttributeScopeHandle::AttributeScopeHandle
AttributeScopeHandle(Mesh &m)
Definition:
AttributeScopeHandle.cpp:10
AttributeScopeHandle.hpp
wmtk::multimesh::attribute
Definition:
AttributeScopeHandle.cpp:9
wmtk::multimesh::MultiMeshVisitor
MultiMeshVisitor(NodeFunctor &&) -> MultiMeshVisitor< NodeFunctor >
src
wmtk
multimesh
attribute
AttributeScopeHandle.cpp
Generated by
1.9.1