Simplex_tree_node_explicit_storage.h
1 /* This file is part of the Gudhi Library - https://gudhi.inria.fr/ - which is released under MIT.
2  * See file LICENSE or go to https://gudhi.inria.fr/licensing/ for full license details.
3  * Author(s): ClĂ©ment Maria
4  *
5  * Copyright (C) 2014 Inria
6  *
7  * Modification(s):
8  * - YYYY/MM Author: Description of the modification
9  */
10 
11 #ifndef SIMPLEX_TREE_SIMPLEX_TREE_NODE_EXPLICIT_STORAGE_H_
12 #define SIMPLEX_TREE_SIMPLEX_TREE_NODE_EXPLICIT_STORAGE_H_
13 
14 #include <vector>
15 
16 namespace Gudhi {
17 
28 template<class SimplexTree>
29 struct Simplex_tree_node_explicit_storage : SimplexTree::Filtration_simplex_base, SimplexTree::Key_simplex_base {
30  typedef typename SimplexTree::Siblings Siblings;
32  typedef typename SimplexTree::Simplex_key Simplex_key;
33 
35  Filtration_value filtration = 0)
36  : children_(sib) {
37  this->assign_filtration(filtration);
38  }
39 
40  /*
41  * Assign children to the node
42  */
43  void assign_children(Siblings * children) {
44  children_ = children;
45  }
46 
47  /* Careful -> children_ can be NULL*/
48  Siblings * children() {
49  return children_;
50  }
51 
52  private:
53  Siblings * children_;
54 };
55  // end addtogroup simplex_tree
57 
58 } // namespace Gudhi
59 
60 #endif // SIMPLEX_TREE_SIMPLEX_TREE_NODE_EXPLICIT_STORAGE_H_
Value type for a filtration function on a cell complex.
Definition: FiltrationValue.h:20
Node of a simplex tree with filtration value and simplex key.
Definition: Simplex_tree_node_explicit_storage.h:29
Key type used as simplex identifier.
Definition: SimplexKey.h:15