Skeleton_blocker_simple_geometric_traits.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): David Salinas
4  *
5  * Copyright (C) 2014 Inria
6  *
7  * Modification(s):
8  * - YYYY/MM Author: Description of the modification
9  */
10 
11 #ifndef SKELETON_BLOCKER_SKELETON_BLOCKER_SIMPLE_GEOMETRIC_TRAITS_H_
12 #define SKELETON_BLOCKER_SKELETON_BLOCKER_SIMPLE_GEOMETRIC_TRAITS_H_
13 
14 #include <gudhi/Skeleton_blocker/Skeleton_blocker_simple_traits.h>
15 
16 #include <string>
17 #include <sstream>
18 
19 namespace Gudhi {
20 
21 namespace skeleton_blocker {
22 
29 template<typename GeometryTrait>
32  public:
33  typedef GeometryTrait GT;
34  typedef typename GT::Point Point;
36  typedef typename Skeleton_blocker_simple_traits::Graph_vertex Simple_vertex;
37 
41  class Simple_geometric_vertex : public Simple_vertex {
42  template<class ComplexGeometricTraits> friend class Skeleton_blocker_geometric_complex;
43  private:
44  Point point_;
45 
46  Point& point() {
47  return point_;
48  }
49 
50  const Point& point() const {
51  return point_;
52  }
53  };
54 
55  class Simple_geometric_edge :
56  public Skeleton_blocker_simple_traits::Graph_edge {
57  int index_;
58  public:
59  Simple_geometric_edge()
60  : Skeleton_blocker_simple_traits::Graph_edge(),
61  index_(-1) { }
62 
68  int& index() {
69  return index_;
70  }
71 
72  int index() const {
73  return index_;
74  }
75  };
76 
78  typedef Skeleton_blocker_simple_traits::Graph_edge Graph_edge;
79 };
80 
81 } // namespace skeleton_blocker
82 
83 namespace skbl = skeleton_blocker;
84 
85 } // namespace Gudhi
86 
87 #endif // SKELETON_BLOCKER_SKELETON_BLOCKER_SIMPLE_GEOMETRIC_TRAITS_H_
GeometryTrait GT
Definition: SkeletonBlockerGeometricDS.h:32
Vertex with a point attached.
Definition: Skeleton_blocker_simple_geometric_traits.h:41
Definition: SimplicialComplexForAlpha.h:14
Class that represents a geometric complex that can be simplified. The class allows access to points o...
Definition: Skeleton_blocker_geometric_complex.h:28
GeometryTrait::Point Point
Definition: SkeletonBlockerGeometricDS.h:37
Global and local handle similar to boost subgraphs. Vertices are stored in a vector. For the root simplicial complex, the local and global descriptors are the same. For a subcomplex L and one of its vertices &#39;v&#39;, the local descriptor of &#39;v&#39; is its position in the vertex vector of the subcomplex L whereas its global descriptor is the position of &#39;v&#39; in the vertex vector of the root simplicial complex.
Definition: Skeleton_blocker_simple_traits.h:38
Simple traits that is a model of SkeletonBlockerDS and can be passed as a template argument to Skelet...
Definition: Skeleton_blocker_simple_traits.h:29
Simple traits that is a model of SkeletonBlockerGeometricDS and can be passed as a template argument ...
Definition: Skeleton_blocker_simple_geometric_traits.h:30
GUDHI  Version 3.1.1  - C++ library for Topological Data Analysis (TDA) and Higher Dimensional Geometry Understanding.  - Copyright : MIT Generated on Fri Feb 7 2020 16:35:36 for GUDHI by Doxygen 1.8.13