summaryrefslogtreecommitdiff
path: root/src/Collapse/example
diff options
context:
space:
mode:
authorROUVREAU Vincent <vincent.rouvreau@inria.fr>2020-06-26 12:08:32 +0200
committerROUVREAU Vincent <vincent.rouvreau@inria.fr>2020-06-26 12:08:32 +0200
commit945c7a6ccd23abd0c854777eebda762dea450490 (patch)
tree7e0e6da90a940db8234a43c3014e9686b541fe08 /src/Collapse/example
parenta1ffdb169b1c24d27e184ce7d0c405267b066d9c (diff)
Free function, doc and basic example
Diffstat (limited to 'src/Collapse/example')
-rw-r--r--src/Collapse/example/edge_collapse_basic_example.cpp15
1 files changed, 4 insertions, 11 deletions
diff --git a/src/Collapse/example/edge_collapse_basic_example.cpp b/src/Collapse/example/edge_collapse_basic_example.cpp
index 69ce329e..1b3dc1b5 100644
--- a/src/Collapse/example/edge_collapse_basic_example.cpp
+++ b/src/Collapse/example/edge_collapse_basic_example.cpp
@@ -2,13 +2,13 @@
#include <iostream>
#include <vector>
+#include <tuple>
int main() {
// Type definitions
using Filtration_value = float;
using Vertex_handle = short;
- using Flag_complex_edge_collapser = Gudhi::collapse::Flag_complex_edge_collapser<Vertex_handle, Filtration_value>;
- using Filtered_edge = Flag_complex_edge_collapser::Filtered_edge;
+ using Filtered_edge = std::tuple<Vertex_handle, Vertex_handle, Filtration_value>;
using Filtered_edge_list = std::vector<Filtered_edge>;
// 1 2
@@ -25,16 +25,9 @@ int main() {
{0, 2, 2.},
{1, 3, 2.}};
- Flag_complex_edge_collapser edge_collapser(graph);
+ auto remaining_edges = Gudhi::collapse::flag_complex_collapse_edges(graph);
- Filtered_edge_list remaining_edges;
- // Retrieve collapse edges from the output iterator
- edge_collapser.process_edges(
- [&remaining_edges](Vertex_handle u, Vertex_handle v, Filtration_value filtration) {
- remaining_edges.emplace_back(u, v, filtration);
- });
-
- for (Filtered_edge filtered_edge_from_collapse : remaining_edges) {
+ for (auto filtered_edge_from_collapse : remaining_edges) {
std::cout << "fn[" << std::get<0>(filtered_edge_from_collapse) << ", " << std::get<1>(filtered_edge_from_collapse)
<< "] = " << std::get<2>(filtered_edge_from_collapse) << std::endl;
}