From f506b7a6ac7a686ec455b30836301781d5ca5649 Mon Sep 17 00:00:00 2001 From: Ulrich Bauer Date: Wed, 25 Nov 2020 22:08:20 +0100 Subject: cleanup --- ripser.cpp | 41 +++++++---------------------------------- 1 file changed, 7 insertions(+), 34 deletions(-) diff --git a/ripser.cpp b/ripser.cpp index b7b5929..ac831ce 100644 --- a/ripser.cpp +++ b/ripser.cpp @@ -811,31 +811,20 @@ public: template <> class ripser::simplex_coboundary_enumerator { index_t idx_below, idx_above, v, k; std::vector vertices; - diameter_entry_t simplex; + const diameter_entry_t simplex; const coefficient_t modulus; const compressed_lower_distance_matrix& dist; const binomial_coeff_table& binomial_coeff; - const ripser& parent; public: simplex_coboundary_enumerator(const diameter_entry_t _simplex, const index_t _dim, const ripser& _parent) : idx_below(get_index(_simplex)), idx_above(0), v(_parent.n - 1), k(_dim + 1), vertices(_dim + 1), simplex(_simplex), modulus(_parent.modulus), dist(_parent.dist), - binomial_coeff(_parent.binomial_coeff), parent(_parent) { - parent.get_simplex_vertices(get_index(_simplex), _dim, parent.n, vertices.rbegin()); + binomial_coeff(_parent.binomial_coeff) { + _parent.get_simplex_vertices(get_index(_simplex), _dim, _parent.n, vertices.rbegin()); } - void init(const diameter_entry_t _simplex, const index_t _dim) { - idx_below = get_index(_simplex); - idx_above= 0; - v = parent.n - 1; - k = _dim + 1; - vertices.resize(_dim + 1); - simplex = _simplex; - parent.get_simplex_vertices(get_index(_simplex), _dim, parent.n, vertices.rbegin()); - } - bool has_next(bool all_cofacets = true) { return (v >= k && (all_cofacets || binomial_coeff(v, k) > idx_below)); } @@ -858,7 +847,6 @@ public: }; template <> class ripser::simplex_coboundary_enumerator { - const ripser& parent; index_t idx_below, idx_above, k; std::vector vertices; diameter_entry_t simplex; @@ -872,25 +860,10 @@ template <> class ripser::simplex_coboundary_enumerator public: simplex_coboundary_enumerator(const diameter_entry_t _simplex, const index_t _dim, const ripser& _parent) - : parent(_parent), idx_below(get_index(_simplex)), idx_above(0), k(_dim + 1), - vertices(_dim + 1), simplex(_simplex), modulus(parent.modulus), dist(parent.dist), - binomial_coeff(parent.binomial_coeff) { - parent.get_simplex_vertices(idx_below, _dim, parent.n, vertices.rbegin()); - for (auto v : vertices) { - neighbor_it.push_back(dist.neighbors[v].rbegin()); - neighbor_end.push_back(dist.neighbors[v].rend()); - } - } - - void init(const diameter_entry_t _simplex, const index_t _dim) { - idx_below = get_index(_simplex); - idx_above= 0; - k = _dim + 1; - vertices.resize(_dim + 1); - simplex = _simplex; - parent.get_simplex_vertices(idx_below, _dim, parent.n, vertices.rbegin()); - neighbor_it.clear(); - neighbor_end.clear(); + : idx_below(get_index(_simplex)), idx_above(0), k(_dim + 1), + vertices(_dim + 1), simplex(_simplex), modulus(_parent.modulus), dist(_parent.dist), + binomial_coeff(_parent.binomial_coeff) { + _parent.get_simplex_vertices(idx_below, _dim, _parent.n, vertices.rbegin()); for (auto v : vertices) { neighbor_it.push_back(dist.neighbors[v].rbegin()); neighbor_end.push_back(dist.neighbors[v].rend()); -- cgit v1.2.3