liba2ri  0.2
 All Data Structures
topology.h
1 /*************************************/
2 /* Auteur : Rémi Synave */
3 /* Date de création : 01/03/07 */
4 /* Date de modification : 08/01/10 */
5 /* Version : 0.2 */
6 /*************************************/
7 
8 /***************************************************************************/
9 /* This file is part of a2ri. */
10 /* */
11 /* a2ri is free software: you can redistribute it and/or modify it */
12 /* under the terms of the GNU Lesser General Public License as published */
13 /* by the Free Software Foundation, either version 3 of the License, or */
14 /* (at your option) any later version. */
15 /* */
16 /* a2ri is distributed in the hope that it will be useful, */
17 /* but WITHOUT ANY WARRANTY; without even the implied warranty of */
18 /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
19 /* GNU Lesser General Public License for more details. */
20 /* */
21 /* You should have received a copy of the GNU Lesser General Public */
22 /* License along with a2ri. */
23 /* If not, see <http://www.gnu.org/licenses/>. */
24 /***************************************************************************/
25 
26 
27 
28 #ifndef TOPOLOGY__H
29 #define TOPOLOGY__H
30 
31 #define BYVERTEX 0
32 #define BYEDGE 1
33 
34 #include "model.h"
35 #include "util.h"
36 #include "hashtable.h"
37 
49 void a2ri_vf_star (
50  int type,
51  vf_model m,
52  int *faces,
53  int nbfaces,
54  int **list,
55  int *size,
56  int depth);
57 
63 int a2ri_vf_nb_hole (
64  vf_model * m);
65 
71 int a2ri_vef_nb_hole (
72  vef_model * m);
73 
80 int a2ri_vf_nb_connected_part (
81  vf_model * m,
82  int **list);
83 
90 int a2ri_vef_nb_connected_part (
91  vef_model * m,
92  int **list);
93 
102 void a2ri_vf_search_hole_contains (
103  vf_model * m,
104  int ve1,
105  int ve2,
106  int **list,
107  int *size);
108 
109 #endif