11#include <forward_list>
16#include <boost/heap/fibonacci_heap.hpp>
35#ifdef TTK_ENABLE_FTM_TREE_STATS_TIME
69 boost::heap::fibonacci_heap<SimplexId, boost::heap::compare<VertCompFN>>
122 states[thisTask] = curState;
131 for(
auto *state : other.
states) {
150 using segm_it = std::vector<SimplexId>::iterator;
TTK processing package that manage a parallel vecrion of vector.
void reserve(const std::size_t &newSize)
long unsigned int idSuperArc
SuperArc index in vect_superArcs_.
std::vector< SimplexId >::iterator segm_it
std::function< bool(SimplexId, SimplexId)> VertCompFN
std::vector< SimplexId >::reverse_iterator segm_rev_it
ThreadId idThread
manage number of threads
std::vector< SimplexId >::const_iterator segm_const_it
std::vector< SimplexId >::const_reverse_iterator segm_const_rev_it
int SimplexId
Identifier type for simplices of any dimension.
T end(std::pair< T, T > &p)
T begin(std::pair< T, T > &p)
void merge(CurrentState &other)
CurrentState(SimplexId startVert, VertCompFN &vertComp)
void setStartVert(const SimplexId v)
boost::heap::fibonacci_heap< SimplexId, boost::heap::compare< VertCompFN > > propagation
CurrentState(VertCompFN &vertComp)
SimplexId getNextMinVertex()
void addNewVertex(const SimplexId v)
bool isEqLower(const SimplexId a, const SimplexId b) const
bool isLower(const SimplexId a, const SimplexId b) const
std::vector< SimplexId > sortedVertices
const SimplexId * offsets
bool isHigher(const SimplexId a, const SimplexId b) const
bool isEqHigher(const SimplexId a, const SimplexId b) const
FTMAtomicVector< CurrentState * > states
void addState(CurrentState *curState)
FTMAtomicVector< idSuperArc > openedArcs
void addArc(const idSuperArc arc)
void merge(SharedData &other)
void reserve(const size_t &s)