4 #define __int64 int64_t    50                 const vector<double>& field2);  
    57         sources.insert(source);
    58         set<int> destinations;
    59         destinations.insert(end);
    61         T alg(model, sources, destinations);
    63         return make_pair(alg.GetDistanceField()[end], alg.BacktraceShortestPath(end));
    70         sources.insert(source);
    71         set<int> destinations;
    72         destinations.insert(end);
    74         T alg(model, sources, destinations);
    76         return alg.GetDistanceField()[end];
 
string GetAlgorithmName() const
virtual vector< EdgePoint > BacktraceShortestPath(int end) const =0
pair< double, vector< EdgePoint > > GetShortestPathBetween(const CRichModel &model, int source, int end)
vector< double > m_scalarField
map< int, double > m_sources
__int64 m_nTotalMilliSeconds
const vector< double > & GetDistanceField() const
virtual void CollectExperimentalResults()=0
virtual void Propagate()=0
virtual __int64 GetMaxPropagationLevels() const
virtual void Initialize()=0
double GetMaxDistance() const
virtual __int64 GetMaxLenOfQueue() const
virtual void OutputExperimentalResults() const
double GetShortestDistanceBetween(const CRichModel &model, int source, int end)
__int64 GetRunTime() const
set< int > m_destinations
static vector< double > DiffDistanceField(const vector< double > &field1, const vector< double > &field2)
vector< EdgePoint > BacktraceIsoline(double val) const
virtual int GetAncestor(int vIndex) const =0
CDistanceApproach(const CRichModel &model, int source)
__int64 m_depthOfResultingTree
double GetMemoryCost() const