35#ifndef DISTANCEMAPCALCULATOR_HPP_
36#define DISTANCEMAPCALCULATOR_HPP_
42#include "AbstractTetrahedralMesh.hpp"
51template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
55 friend class TestDistanceMapCalculator;
120 if (
mLo<=nodeIndex && nodeIndex<
mHi)
154 std::vector<double>& rNodeDistances);
163 double SingleDistance(
unsigned sourceNodeIndex,
unsigned destinationNodeIndex);
unsigned * mNumHalosPerProcess
std::vector< unsigned > mHaloNodeIndices
void PushLocal(double priority, unsigned nodeIndex)
std::priority_queue< std::pair< double, unsigned > > mActivePriorityNodeIndexQueue
double SingleDistance(unsigned sourceNodeIndex, unsigned destinationNodeIndex)
bool UpdateQueueFromRemote(std::vector< double > &rNodeDistances)
bool WorkOnLocalQueue(std::vector< double > &rNodeDistances)
AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > & mrMesh
void ComputeDistanceMap(const std::vector< unsigned > &rSourceNodeIndices, std::vector< double > &rNodeDistances)
c_vector< double, SPACE_DIM > mTargetNodePoint
unsigned mTargetNodeIndex