summaryrefslogtreecommitdiff
path: root/src/Alpha_complex/concept/SimplicialComplexForAlpha.h
diff options
context:
space:
mode:
authorVincent Rouvreau <10407034+VincentRouvreau@users.noreply.github.com>2020-04-16 21:51:13 +0200
committerGitHub <noreply@github.com>2020-04-16 21:51:13 +0200
commit44996b632685eb077e61f79b1dd07d172776acb9 (patch)
treed43abdf9316a080e8cee8aca48f303ae35c87c62 /src/Alpha_complex/concept/SimplicialComplexForAlpha.h
parent6d02ca0e077cc9750275abdfc024429cec0ba5a5 (diff)
parent039382cbd951c8c94ddfd43b5ae228666a5cabed (diff)
Merge pull request #260 from VincentRouvreau/alpha_complex_improvement
merge https://github.com/mglisse/gudhi-devel/tree/alpha-cache
Diffstat (limited to 'src/Alpha_complex/concept/SimplicialComplexForAlpha.h')
-rw-r--r--src/Alpha_complex/concept/SimplicialComplexForAlpha.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/Alpha_complex/concept/SimplicialComplexForAlpha.h b/src/Alpha_complex/concept/SimplicialComplexForAlpha.h
index 1c6c3b0c..c20c3201 100644
--- a/src/Alpha_complex/concept/SimplicialComplexForAlpha.h
+++ b/src/Alpha_complex/concept/SimplicialComplexForAlpha.h
@@ -72,6 +72,24 @@ struct SimplicialComplexForAlpha {
/** \brief Return type of an insertion of a simplex
*/
typedef unspecified Insertion_result_type;
+
+ /** \name Map interface
+ * Conceptually a `std::unordered_map<Simplex_handle,std::size_t>`.
+ * @{ */
+ /** \brief Data stored for each simplex.
+ *
+ * Must be an integer type. */
+ typedef unspecified Simplex_key;
+ /** \brief Returns a constant dummy number that is either negative,
+ * or at least as large as the number of simplices. Suggested value: -1. */
+ Simplex_key null_key ();
+ /** \brief Returns the number stored for a simplex by `assign_key()`.
+ *
+ * If `assign_key()` has not been called, it must return `null_key()`. */
+ Simplex_key key ( Simplex_handle sh );
+ /** \brief Store a number for a simplex, which can later be retrieved with `key()`. */
+ void assign_key(Simplex_handle sh, Simplex_key n);
+ /** @} */
};
} // namespace alpha_complex