SimplicialComplexForWitness.h
1 /* This file is part of the Gudhi Library. The Gudhi library
2  * (Geometric Understanding in Higher Dimensions) is a generic C++
3  * library for computational topology.
4  *
5  * Author(s): Siargey Kachanovich
6  *
7  * Copyright (C) 2014 Inria
8  *
9  * This program is free software: you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation, either version 3 of the License, or
12  * (at your option) any later version.
13  *
14  * This program is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with this program. If not, see <http://www.gnu.org/licenses/>.
21  */
22 
23 #ifndef CONCEPT_WITNESS_COMPLEX_SIMPLICIAL_COMPLEX_FOR_WITNESS_H_
24 #define CONCEPT_WITNESS_COMPLEX_SIMPLICIAL_COMPLEX_FOR_WITNESS_H_
25 
26 namespace Gudhi {
27 
28 namespace witness_complex {
29 
36  typedef unspecified Simplex_handle;
37  // /** Handle to specify a vertex. Must be a non-negative integer. */
38  // typedef unspecified Vertex_handle;
39 
42  Simplex_handle null_simplex();
43 
46  std::size_t num_vertices();
47 
50  typedef unspecified Insertion_result_type;
51 
61  template< typedef Input_vertex_range >
62  Insertion_result_type insert_simplex(Input_vertex_range const & vertex_range, Filtration_value filtration);
63 
74  template< typedef Input_vertex_range,
75  typedef Filtration_value>
76  Insertion_result_type insert_simplex_and_subfaces(Input_vertex_range const & vertex_range, Filtration_value filtration);
77 
82  template< typedef Input_vertex_range >
83  Simplex_handle find(Input_vertex_range const & vertex_range);
84 
88  void set_dimension(int dimension);
89 
93  double filtration(Simplex_handle sh);
94 };
95 
96 } // namespace witness_complex
97 
98 } // namespace Gudhi
99 
100 #endif // CONCEPT_WITNESS_COMPLEX_SIMPLICIAL_COMPLEX_FOR_WITNESS_H_
The concept SimplicialComplexForWitness describes the requirements for a type to implement a simplici...
Definition: SimplicialComplexForWitness.h:34
Simplex_handle null_simplex()
Returns a Simplex_hanlde that is different from all simplex handles of the simplices.
Definition: SimplicialComplexForAlpha.h:26
Simplex_handle find(Input_vertex_range const &vertex_range)
Finds a simplex with vertices given by a range.
Insertion_result_type insert_simplex_and_subfaces(Input_vertex_range const &vertex_range, Filtration_value filtration)
Inserts a simplex and all its faces with vertices from a given range &#39;vertex_range&#39; in the simplicial...
unspecified Simplex_handle
Definition: SimplicialComplexForWitness.h:36
Value type for a filtration function on a cell complex.
Definition: FiltrationValue.h:32
double filtration(Simplex_handle sh)
Returns the filtration of the simplex given by the simplex handle &#39;sh&#39;.
Insertion_result_type insert_simplex(Input_vertex_range const &vertex_range, Filtration_value filtration)
Inserts a simplex with vertices from a given range &#39;vertex_range&#39; in the simplicial complex...
void set_dimension(int dimension)
Sets the dimension of the simplicial complex to &#39;dimension&#39;.
unspecified Insertion_result_type
Return type of an insertion of a simplex.
Definition: SimplicialComplexForWitness.h:50
GUDHI  Version 2.3.0  - C++ library for Topological Data Analysis (TDA) and Higher Dimensional Geometry Understanding.  - Copyright : GPL v3 Generated on Tue Sep 4 2018 14:32:59 for GUDHI by Doxygen 1.8.13