Wildmeshing Toolkit
|
#include <LinkSingleDimensionIterable.hpp>
Public Member Functions | |
Iterator (LinkSingleDimensionIterable &container, const Tuple &t=Tuple()) | |
Iterator & | operator++ () |
bool | operator!= (const Iterator &other) const |
Tuple & | operator* () |
const Tuple & | operator* () const |
Private Member Functions | |
int64_t | depth () |
Compute the depth from the mesh and the simplex type. More... | |
bool | is_link_d1 () |
Check if coface type is the mesh's top simplex type. More... | |
void | init () |
Depending on the depth, the iterator must be initialized differently. More... | |
Iterator & | step_depth_3 () |
Use breadth first search to find all d-simplices, and iterate through all cofaces in a d-simplex. More... | |
Tuple | navigate_to_link (Tuple t) |
Private Attributes | |
LinkSingleDimensionIterable & | m_container |
TopDimensionCofacesIterable::Iterator | m_it |
Tuple | m_t |
int8_t | m_edge_counter = 0 |
Definition at line 26 of file LinkSingleDimensionIterable.hpp.
wmtk::simplex::LinkSingleDimensionIterable::Iterator::Iterator | ( | LinkSingleDimensionIterable & | container, |
const Tuple & | t = Tuple() |
||
) |
Definition at line 24 of file LinkSingleDimensionIterable.cpp.
References wmtk::get_primitive_type_id(), init(), wmtk::Tuple::is_null(), wmtk::logger(), m_container, wmtk::simplex::LinkSingleDimensionIterable::m_link_type, wmtk::simplex::LinkSingleDimensionIterable::m_mesh, wmtk::simplex::LinkSingleDimensionIterable::m_simplex, m_t, wmtk::simplex::Simplex::primitive_type(), and wmtk::Mesh::top_cell_dimension().
|
private |
Compute the depth from the mesh and the simplex type.
The depth is "mesh top simplex dimension" - "simplex dimension".
Definition at line 79 of file LinkSingleDimensionIterable.cpp.
References wmtk::get_primitive_type_id(), wmtk::simplex::Simplex::primitive_type(), and wmtk::Mesh::top_cell_dimension().
|
private |
Depending on the depth, the iterator must be initialized differently.
Definition at line 95 of file LinkSingleDimensionIterable.cpp.
References wmtk::Mesh::get_id_simplex().
Referenced by Iterator().
|
private |
Check if coface type is the mesh's top simplex type.
Definition at line 89 of file LinkSingleDimensionIterable.cpp.
References wmtk::get_primitive_type_id().
Definition at line 137 of file LinkSingleDimensionIterable.cpp.
References wmtk::get_primitive_type_from_id(), wmtk::get_primitive_type_id(), wmtk::Tuple::is_null(), wmtk::simplex::Simplex::primitive_type(), wmtk::Mesh::switch_tuple(), and wmtk::Mesh::top_cell_dimension().
bool wmtk::simplex::LinkSingleDimensionIterable::Iterator::operator!= | ( | const Iterator & | other | ) | const |
Definition at line 64 of file LinkSingleDimensionIterable.cpp.
Tuple & wmtk::simplex::LinkSingleDimensionIterable::Iterator::operator* | ( | ) |
Definition at line 69 of file LinkSingleDimensionIterable.cpp.
const Tuple & wmtk::simplex::LinkSingleDimensionIterable::Iterator::operator* | ( | ) | const |
Definition at line 74 of file LinkSingleDimensionIterable.cpp.
LinkSingleDimensionIterable::Iterator & wmtk::simplex::LinkSingleDimensionIterable::Iterator::operator++ | ( | ) |
Definition at line 53 of file LinkSingleDimensionIterable.cpp.
|
private |
Use breadth first search to find all d-simplices, and iterate through all cofaces in a d-simplex.
Definition at line 107 of file LinkSingleDimensionIterable.cpp.
References wmtk::Edge, wmtk::Mesh::get_id_simplex(), wmtk::Mesh::switch_tuples(), and wmtk::Vertex.
|
private |
Definition at line 61 of file LinkSingleDimensionIterable.hpp.
Referenced by Iterator().
|
private |
Definition at line 64 of file LinkSingleDimensionIterable.hpp.
|
private |
Definition at line 62 of file LinkSingleDimensionIterable.hpp.
|
private |
Definition at line 63 of file LinkSingleDimensionIterable.hpp.
Referenced by Iterator().