summaryrefslogtreecommitdiff
path: root/src/Contraction/include/gudhi/Skeleton_blocker_contractor.h
diff options
context:
space:
mode:
authorsalinasd <salinasd@636b058d-ea47-450e-bf9e-a15bfbe3eedb>2015-01-26 12:45:45 +0000
committersalinasd <salinasd@636b058d-ea47-450e-bf9e-a15bfbe3eedb>2015-01-26 12:45:45 +0000
commit6b5cb7d8b2dc3c065eafc7a475be55319722ef09 (patch)
tree86d0af4329b33462f1ac3f9c8587a2335ef906c7 /src/Contraction/include/gudhi/Skeleton_blocker_contractor.h
parentf47e9cba9ce535d1c71a71056858a6ee1503b3ab (diff)
skbl some cleaning
git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/trunk@420 636b058d-ea47-450e-bf9e-a15bfbe3eedb Former-commit-id: 8dab1684f8a9b0987de5ed19863b8173cc71f2f4
Diffstat (limited to 'src/Contraction/include/gudhi/Skeleton_blocker_contractor.h')
-rw-r--r--src/Contraction/include/gudhi/Skeleton_blocker_contractor.h26
1 files changed, 1 insertions, 25 deletions
diff --git a/src/Contraction/include/gudhi/Skeleton_blocker_contractor.h b/src/Contraction/include/gudhi/Skeleton_blocker_contractor.h
index 03abfea1..c7941bfd 100644
--- a/src/Contraction/include/gudhi/Skeleton_blocker_contractor.h
+++ b/src/Contraction/include/gudhi/Skeleton_blocker_contractor.h
@@ -79,29 +79,8 @@ public:
typedef typename Profile::Complex Complex;
typedef typename Complex::Vertex_handle Vertex_handle;
- //todo explore only neighborhood with stack
void on_contracted(const Profile &profile, boost::optional< Point > placement) override{
- std::list<Vertex_handle> vertex_to_check;
- vertex_to_check.push_front(profile.v0_handle());
-
- while(!vertex_to_check.empty()){
- Vertex_handle v = vertex_to_check.front();
- vertex_to_check.pop_front();
-
- bool blocker_popable_found=true;
- while (blocker_popable_found){
- blocker_popable_found = false;
- for(auto block : profile.complex().blocker_range(v)){
- if (profile.complex().is_popable_blocker(block)) {
- for(Vertex_handle nv : *block)
- if(nv!=v) vertex_to_check.push_back(nv);
- profile.complex().delete_blocker(block);
- blocker_popable_found = true;
- break;
- }
- }
- }
- }
+ profile.complex().remove_all_popable_blockers(profile.v0_handle());
}
};
@@ -306,9 +285,7 @@ private:
boost::optional<Edge_handle> pop_from_PQ() {
boost::optional<Edge_handle> edge = heap_PQ_->extract_top();
if ( edge )
- {
get_data(*edge).reset_PQ_handle();
- }
return edge ;
}
@@ -339,7 +316,6 @@ private:
//xxx do a parralel for
for(auto edge : complex_.edge_range()){
- // Edge_handle edge = *edge_it;
complex_[edge].index() = id++;
Profile const& profile = create_profile(edge);
Edge_data& data = get_data(edge);