153{
154 FILE *infile=NULL;
158 int linecount = 0;
159
161
164
167
168 int count_check_group = 0;
169 int check_group_already_print = 0;
170
171 int count_check = 0;
172 int check_already_print = 0;
173
174 int nb_check, nb_check_group, size, size2;
175 int *tab, *tab2;
176
177 int nb_elt;
178 int *elt;
179
180
181
182
183 if (infilename != NULL)
184 {
185 infile = fopen(infilename,"r");
186 }
187
188 if (infile == NULL)
189 {
191
192
193 return;
194 }
195
196
197
198
199
200
201
203 rewind(infile);
204 analyse_stack_check(line, infile, infilename, &linecount, &nb_check_group, &size, &tab, &nb_check, &size2, &tab2 );
205
208
211
214
215
216
217
218
219 rewind(infile);
220 while ( (
analyse_getline(line, infile, infilename, &linecount) != -1) &&
221 ( strncmp(line, "/END", 4) != 0 ))
222 {
223 if (strstr(line, "/ANALYSE/CHECK/GROUP") != NULL)
224 {
225
227 sscanf(key, "%d", &id );
228
229
230 tmp_check_group.
id =
id;
232
233 if ( work_check_group == NULL)
234 {
236 {
237 if ( check_group_already_print == 0)
238 {
240 check_group_already_print = 1;
241 }
242 continue;
243 }
244
245 work_check_group = *check_group_p + count_check_group;
246
247 work_check_group->
order = count_check_group;
248 work_check_group->
id =
id;
249
250
252 tmp_check_group.
id =
id;
253
255
256 count_check_group++;
257 }
258
260
261 if (strncmp(key, "TITLE", 5) == 0)
262 {
263
266 }
267 else if (strncmp(key, "DESCRIPTION", 5) == 0)
268 {
269
271 {
274
275 for(i=0; i<nb_elt; i++)
276 {
279 }
282 }
283 }
284 }
285 else if (strstr(line, "/ANALYSE/CHECK") != NULL)
286 {
288 sscanf(key, "%d", &id );
289
290
293
294 if ( work_check == NULL)
295 {
297 {
298 if ( check_already_print == 0)
299 {
301 check_already_print = 1;
302 }
303 continue;
304 }
305
306 work_check = *check_p + count_check;
307 count_check++;
308
310
311
314
316
317 }
318
319
322
323 }
324 }
325
326 fclose(infile);
327
328}
static int compar_check(const void *check_1_p, const void *check_2_p)
static int ANALYSE_NB_CHECK_GROUP
static analyse_check_group_t * check_group_create(int nb_check_group)
static analyse_check_t * check_create(int nb_check)
static int ANALYSE_NB_CHECK
static int compar_check_group(const void *group_1_p, const void *group_2_p)
struct analyse_check_group_s analyse_check_group_t
struct analyse_check_s analyse_check_t
#define ANALYSE_CHECK_GROUP
#define ANALYSE_SIZE_OF_LINE
int analyse_getkey(int pos, char *line, char *name)
int analyse_getlist_of_int(int *nb_elt, int **elt, FILE *infile, char *infilename, int *linecount)
int analyse_getline(char line[], FILE *infile, char *infilename, int *linecount)
void analyse_free(void *block)
void * analyse_realloc(void *block, size_t size)
void Analyse_Print_Error_Level(char *text, int level)
void Analyse_Print_Debug(char *text)
recursive subroutine qsort(a, idx, first, last)