SkeletonBlockerDS.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 CONCEPT_SKELETON_BLOCKER_SKELETONBLOCKERDS_H_
12 #define CONCEPT_SKELETON_BLOCKER_SKELETONBLOCKERDS_H_
13 
14 namespace Gudhi {
15 
16 namespace skeleton_blocker {
17 
28  typedef int boost_vertex_handle;
29 
48  boost_vertex_handle vertex;
49 
50  friend ostream& operator<<(ostream& o, const Root_vertex_handle & v);
51  };
52 
56  struct Vertex_handle {
57  boost_vertex_handle vertex;
58 
59  friend ostream& operator<<(ostream& o, const Vertex_handle & v);
60  };
61 
67  struct Graph_vertex {
71  void deactivate();
72 
75  void activate();
76 
79  bool is_active() const;
80 
81  void set_id(Root_vertex_handle i);
82  Root_vertex_handle get_id() const;
83  virtual string to_string() const;
84  friend ostream& operator<<(ostream& o, const Graph_vertex & v);
85  };
86 
91  struct Graph_edge {
95  void setId(Root_vertex_handle a, Root_vertex_handle b);
96 
100  Root_vertex_handle first() const;
101 
105  Root_vertex_handle second() const;
106 
107  friend ostream& operator<<(ostream& o, const Simple_edge & v);
108  };
109 };
110 
111 } // namespace skeleton_blocker
112 
113 namespace skbl = skeleton_blocker;
114 
115 } // namespace Gudhi
116 
117 #endif // CONCEPT_SKELETON_BLOCKER_SKELETONBLOCKERDS_H_
Definition: SimplicialComplexForAlpha.h:14
Root_vertex_handle and Vertex_handle are similar to global and local vertex descriptor used in boost ...
Definition: SkeletonBlockerDS.h:47
The type of edges that are stored the boost graph. An Edge must be Default Constructible and Equality...
Definition: SkeletonBlockerDS.h:91
Concept for the template class passed for Skeleton_blocker_complex. Most importantly, it contains the nodes for vertices and edges (Graph_vertex and Graph_edge) that are stored in the simplicial complex. The user can redefine these classes to attach additional information to vertices and edges.
Definition: SkeletonBlockerDS.h:24
The type of vertices that are stored the boost graph. A Vertex must be Default Constructible and Equa...
Definition: SkeletonBlockerDS.h:67
int boost_vertex_handle
index that allows to find the vertex in the boost graph
Definition: SkeletonBlockerDS.h:28
GUDHI  Version 3.4.1  - C++ library for Topological Data Analysis (TDA) and Higher Dimensional Geometry Understanding.  - Copyright : MIT Generated on Fri Jan 22 2021 09:41:15 for GUDHI by Doxygen 1.8.13