| 1 | #ifndef ISL_VERTICES_H | 
 
 
 
 
 | 2 | #define ISL_VERTICES_H | 
 
 
 
 
 | 3 |  | 
 
 
 
 
 | 4 | #include <isl/aff_type.h> | 
 
 
 
 
 | 5 | #include <isl/set_type.h> | 
 
 
 
 
 | 6 |  | 
 
 
 
 
 | 7 | #if defined(__cplusplus) | 
 
 
 
 
 | 8 | extern "C" { | 
 
 
 
 
 | 9 | #endif | 
 
 
 
 
 | 10 |  | 
 
 
 
 
 | 11 | struct isl_external_vertex; | 
 
 
 
 
 | 12 | typedef struct isl_external_vertex      isl_vertex; | 
 
 
 
 
 | 13 |  | 
 
 
 
 
 | 14 | struct isl_cell; | 
 
 
 
 
 | 15 | typedef struct isl_cell         isl_cell; | 
 
 
 
 
 | 16 |  | 
 
 
 
 
 | 17 | struct isl_vertices; | 
 
 
 
 
 | 18 | typedef struct isl_vertices     isl_vertices; | 
 
 
 
 
 | 19 |  | 
 
 
 
 
 | 20 | isl_ctx *isl_vertex_get_ctx(__isl_keep isl_vertex *vertex); | 
 
 
 
 
 | 21 | isl_size isl_vertex_get_id(__isl_keep isl_vertex *vertex); | 
 
 
 
 
 | 22 | __isl_give isl_basic_set *isl_vertex_get_domain(__isl_keep isl_vertex *vertex); | 
 
 
 
 
 | 23 | __isl_give isl_multi_aff *isl_vertex_get_expr(__isl_keep isl_vertex *vertex); | 
 
 
 
 
 | 24 | __isl_null isl_vertex *isl_vertex_free(__isl_take isl_vertex *vertex); | 
 
 
 
 
 | 25 |  | 
 
 
 
 
 | 26 | __isl_give isl_vertices *isl_basic_set_compute_vertices( | 
 
 
 
 
 | 27 | __isl_keep isl_basic_set *bset); | 
 
 
 
 
 | 28 | isl_ctx *isl_vertices_get_ctx(__isl_keep isl_vertices *vertices); | 
 
 
 
 
 | 29 | isl_size isl_vertices_get_n_vertices(__isl_keep isl_vertices *vertices); | 
 
 
 
 
 | 30 | isl_stat isl_vertices_foreach_vertex(__isl_keep isl_vertices *vertices, | 
 
 
 
 
 | 31 | isl_stat (*fn)(__isl_take isl_vertex *vertex, void *user), void *user); | 
 
 
 
 
 | 32 | __isl_null isl_vertices *isl_vertices_free(__isl_take isl_vertices *vertices); | 
 
 
 
 
 | 33 |  | 
 
 
 
 
 | 34 | isl_ctx *isl_cell_get_ctx(__isl_keep isl_cell *cell); | 
 
 
 
 
 | 35 | __isl_give isl_basic_set *isl_cell_get_domain(__isl_keep isl_cell *cell); | 
 
 
 
 
 | 36 | isl_stat isl_cell_foreach_vertex(__isl_keep isl_cell *cell, | 
 
 
 
 
 | 37 | isl_stat (*fn)(__isl_take isl_vertex *vertex, void *user), void *user); | 
 
 
 
 
 | 38 | __isl_null isl_cell *isl_cell_free(__isl_take isl_cell *cell); | 
 
 
 
 
 | 39 |  | 
 
 
 
 
 | 40 | isl_stat isl_vertices_foreach_cell(__isl_keep isl_vertices *vertices, | 
 
 
 
 
 | 41 | isl_stat (*fn)(__isl_take isl_cell *cell, void *user), void *user); | 
 
 
 
 
 | 42 |  | 
 
 
 
 
 | 43 | #if defined(__cplusplus) | 
 
 
 
 
 | 44 | } | 
 
 
 
 
 | 45 | #endif | 
 
 
 
 
 | 46 |  | 
 
 
 
 
 | 47 | #endif |