1 #ifndef TAB_DECOMP
2 #define TAB_DECOMP
3 
4 #include <stdio.h>
5 #include "decomp.h"
6 
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10 
11 
12 typedef struct tabular_decomp {
13     decomp_t **tab;
14     int index;
15     int size;
16 } tabular_decomp_t;
17 
18 tabular_decomp_t *tabular_decomp_create();
19 
20 void tabular_decomp_free(tabular_decomp_t * t);
21 
22 void tabular_decomp_realloc(tabular_decomp_t * t);
23 
24 void tabular_decomp_add_decomp(tabular_decomp_t * t, decomp_t * decomp);
25 
26 void
27 tabular_decomp_add(tabular_decomp_t * t, int len, int *tab, double nb_elem);
28 
29 decomp_t *tabular_decomp_get_decomp(tabular_decomp_t * t, int index);
30 
31 void tabular_decomp_concat(tabular_decomp_t * t1, tabular_decomp_t * t2);
32 
33 int tabular_decomp_fprint(FILE * output_file, tabular_decomp_t * t);
34 
35 int tabular_decomp_print(tabular_decomp_t * t);
36 
37 tabular_decomp_t *tabular_decomp_fscan(FILE * file);
38 
39 #ifdef __cplusplus
40 }
41 #endif
42 
43 #endif				/* TAB_DECOMP */
44