add isl_tab_sign_of_max
[isl.git] / include / isl_printer.h
blobe66cf8c278d6d01a09940b0ae0a1db9132dd49e1
1 #ifndef ISL_PRINTER_H
2 #define ISL_PRINTER_H
4 #include <stdio.h>
5 #include <isl_ctx.h>
7 #if defined(__cplusplus)
8 extern "C" {
9 #endif
11 struct isl_printer;
12 typedef struct isl_printer isl_printer;
14 __isl_give isl_printer *isl_printer_to_file(isl_ctx *ctx, FILE *file);
15 __isl_give isl_printer *isl_printer_to_str(isl_ctx *ctx);
16 void isl_printer_free(__isl_take isl_printer *printer);
18 __isl_give char *isl_printer_get_str(__isl_keep isl_printer *printer);
20 __isl_give isl_printer *isl_printer_set_indent(__isl_take isl_printer *p,
21 int indent);
23 #define ISL_FORMAT_ISL 0
24 #define ISL_FORMAT_POLYLIB 1
25 #define ISL_FORMAT_POLYLIB_CONSTRAINTS 2
26 #define ISL_FORMAT_OMEGA 3
27 #define ISL_FORMAT_C 4
28 #define ISL_FORMAT_LATEX 5
29 __isl_give isl_printer *isl_printer_set_output_format(__isl_take isl_printer *p,
30 int output_format);
32 __isl_give isl_printer *isl_printer_set_prefix(__isl_take isl_printer *p,
33 const char *prefix);
34 __isl_give isl_printer *isl_printer_set_suffix(__isl_take isl_printer *p,
35 const char *suffix);
36 __isl_give isl_printer *isl_printer_set_isl_int_width(__isl_take isl_printer *p,
37 int width);
39 __isl_give isl_printer *isl_printer_start_line(__isl_take isl_printer *p);
40 __isl_give isl_printer *isl_printer_end_line(__isl_take isl_printer *p);
41 __isl_give isl_printer *isl_printer_print_int(__isl_take isl_printer *p, int i);
42 __isl_give isl_printer *isl_printer_print_isl_int(__isl_take isl_printer *p,
43 isl_int i);
44 __isl_give isl_printer *isl_printer_print_str(__isl_take isl_printer *p,
45 const char *s);
47 __isl_give isl_printer *isl_printer_flush(__isl_take isl_printer *p);
49 #if defined(__cplusplus)
51 #endif
53 #endif