Link_condition_valid_contraction.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 CONTRACTION_POLICIES_LINK_CONDITION_VALID_CONTRACTION_H_
12 #define CONTRACTION_POLICIES_LINK_CONDITION_VALID_CONTRACTION_H_
13 
14 #include <gudhi/Contraction/policies/Valid_contraction_policy.h>
15 #include <gudhi/Debug_utils.h>
16 
17 
18 namespace Gudhi {
19 
20 namespace contraction {
21 
26 template< typename EdgeProfile>
28  public:
29  typedef typename EdgeProfile::Edge_handle Edge_handle;
30  typedef typename EdgeProfile::Point Point;
31  // typedef typename EdgeProfile::Edge_handle Edge_handle;
32 
33  bool operator()(const EdgeProfile& profile, const boost::optional<Point>& placement) const override {
34  Edge_handle edge(profile.edge_handle());
35  DBGMSG("Link_condition_valid_contraction:", profile.complex().link_condition(edge));
36  return profile.complex().link_condition(edge);
37  }
38 };
39 
40 } // namespace contraction
41 
42 } // namespace Gudhi
43 
44 #endif // CONTRACTION_POLICIES_LINK_CONDITION_VALID_CONTRACTION_H_
Policy to specify if an edge contraction is valid or not.
Definition: Valid_contraction_policy.h:23
Gudhi namespace.
Definition: SimplicialComplexForAlpha.h:14