Also report failures in special tests
[cloog/uuh.git] / include / cloog / union_domain.h
blob7fc9eef45b8483d550f549b6e31cc8c5f68a5d9b
1 #ifndef CLOOG_UNION_DOMAIN_H
2 #define CLOOG_UNION_DOMAIN_H
4 #if defined(__cplusplus)
5 extern "C" {
6 #endif
8 /**
9 * CloogNamedDomainList structure:
10 * this structure reprensents a node of a linked list of CloogDomain structures.
12 struct cloognameddomainlist {
13 CloogDomain *domain; /**< An element of the list. */
14 CloogScattering *scattering; /**< Scattering function for domain. */
15 char *name; /**< Name of the domain. */
16 void *usr; /**< A pointer for library user's convenience. */
17 struct cloognameddomainlist *next;/**< Pointer to the next element of the list.*/
19 typedef struct cloognameddomainlist CloogNamedDomainList;
21 /**
22 * A structure representing the input domains and scattering functions.
24 struct clooguniondomain {
25 int n_name[3];
26 char **name[3];
27 CloogNamedDomainList *domain;
28 CloogNamedDomainList **next_domain;
30 typedef struct clooguniondomain CloogUnionDomain;
32 enum cloog_dim_type { CLOOG_PARAM, CLOOG_ITER, CLOOG_SCAT };
34 CloogUnionDomain *cloog_union_domain_read(FILE *file, int nb_par,
35 CloogOptions *options);
36 CloogUnionDomain *cloog_union_domain_alloc(int nb_par);
37 CloogUnionDomain *cloog_union_domain_add_domain(CloogUnionDomain *ud,
38 const char *name, CloogDomain *domain, CloogScattering *scattering,
39 void *usr);
40 CloogUnionDomain *cloog_union_domain_set_name(CloogUnionDomain *ud,
41 enum cloog_dim_type type, int index, const char *name);
42 void cloog_union_domain_free(CloogUnionDomain *ud);
44 #if defined(__cplusplus)
46 #endif
48 #endif