1 #ifndef ISL_POINT_H
2 #define ISL_POINT_H
3 
4 #include <stdio.h>
5 #include <isl/space.h>
6 
7 #if defined(__cplusplus)
8 extern "C" {
9 #endif
10 
11 struct isl_point;
12 typedef struct isl_point isl_point;
13 
14 isl_ctx *isl_point_get_ctx(__isl_keep isl_point *pnt);
15 __isl_give isl_space *isl_point_get_space(__isl_keep isl_point *pnt);
16 
17 __isl_give isl_point *isl_point_zero(__isl_take isl_space *dim);
18 __isl_give isl_point *isl_point_copy(__isl_keep isl_point *pnt);
19 void isl_point_free(__isl_take isl_point *pnt);
20 
21 int isl_point_get_coordinate(__isl_keep isl_point *pnt,
22 	enum isl_dim_type type, int pos, isl_int *v);
23 __isl_give isl_point *isl_point_set_coordinate(__isl_take isl_point *pnt,
24 	enum isl_dim_type type, int pos, isl_int v);
25 
26 __isl_give isl_point *isl_point_add_ui(__isl_take isl_point *pnt,
27 	enum isl_dim_type type, int pos, unsigned val);
28 __isl_give isl_point *isl_point_sub_ui(__isl_take isl_point *pnt,
29 	enum isl_dim_type type, int pos, unsigned val);
30 
31 __isl_give isl_point *isl_point_void(__isl_take isl_space *dim);
32 int isl_point_is_void(__isl_keep isl_point *pnt);
33 
34 __isl_give isl_printer *isl_printer_print_point(
35 	__isl_take isl_printer *printer, __isl_keep isl_point *pnt);
36 void isl_point_dump(__isl_keep isl_point *pnt);
37 
38 #if defined(__cplusplus)
39 }
40 #endif
41 
42 #include <isl/dim.h>
43 
44 #endif
45