4 XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(tesh);
9 excludes_t excludes = xbt_new0(s_excludes_t, 1);
11 if(!(excludes->items = vector_new(8,NULL)))
21 excludes_is_empty(excludes_t excludes)
29 return vector_is_empty(excludes->items);
33 excludes_contains(excludes_t excludes, fstream_t fstream)
37 if(!excludes || !fstream)
43 vector_rewind(excludes->items);
45 while((cur = vector_get(excludes->items)))
47 if(!strcmp(fstream->name, cur->name) && !strcmp(fstream->directory, cur->directory))
50 vector_move_next(excludes->items);
57 excludes_add(excludes_t excludes, fstream_t fstream)
62 if(excludes_contains(excludes, fstream))
65 return vector_push_back(excludes->items, fstream);
69 excludes_check(excludes_t excludes, fstreams_t fstreams)
76 if(!excludes || !fstreams)
79 vector_rewind(excludes->items);
81 while((exclude = vector_get(excludes->items)))
83 vector_rewind(fstreams->items);
85 while((fstream = vector_get(fstreams->items)))
89 if(!strcmp(fstream->name, exclude->name) && !strcmp(fstream->directory, exclude->directory))
95 vector_move_next(fstreams->items);
101 WARN1("cannot exclude the file %s",exclude->name);
104 vector_move_next(excludes->items);
111 excludes_free(void** excludesptr)
116 if((errno =vector_free((&(*((excludes_t*)excludesptr))->items))))