summaryrefslogtreecommitdiff
path: root/src/Collapse
diff options
context:
space:
mode:
authorROUVREAU Vincent <vincent.rouvreau@inria.fr>2020-05-25 14:27:33 +0200
committerROUVREAU Vincent <vincent.rouvreau@inria.fr>2020-05-25 14:27:33 +0200
commit1269de8a29bc2449f6a6454f6d336204ca5c5b9a (patch)
treecc7d972c21eabf86966e1990d50dabc901428961 /src/Collapse
parent71af68554711e82e5e8e1f495bdc25deaeb5b401 (diff)
Code review: use emplace on unordered_map in insert_vertex
Diffstat (limited to 'src/Collapse')
-rw-r--r--src/Collapse/include/gudhi/Flag_complex_sparse_matrix.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/Collapse/include/gudhi/Flag_complex_sparse_matrix.h b/src/Collapse/include/gudhi/Flag_complex_sparse_matrix.h
index bbfd9aeb..161069c0 100644
--- a/src/Collapse/include/gudhi/Flag_complex_sparse_matrix.h
+++ b/src/Collapse/include/gudhi/Flag_complex_sparse_matrix.h
@@ -273,12 +273,12 @@ class Flag_complex_sparse_matrix {
// Insert a vertex in the data structure
void insert_vertex(Vertex_handle vertex, Filtration_value filt_val) {
- auto rw = vertex_to_row_.find(vertex);
- if (rw == vertex_to_row_.end()) {
+ auto result = vertex_to_row_.emplace(std::make_pair(vertex, rows_));
+ // If it was not already inserted - Value won't be updated by emplace if it is already present
+ if (result.second) {
// Initializing the diagonal element of the adjency matrix corresponding to rw_b.
sparse_row_adjacency_matrix_.insert(rows_, rows_) = filt_val;
domination_indicator_.push_back(false);
- vertex_to_row_.insert(std::make_pair(vertex, rows_));
row_to_vertex_.push_back(vertex);
rows_++;
}