diff --git a/includes/charge.h b/includes/charge.h index 1d1287f..f7432ee 100644 --- a/includes/charge.h +++ b/includes/charge.h @@ -4,4 +4,5 @@ #include "structures.h" char *readAdress(FILE *flot); -Tache **chargeTaches(Offre *tabTravaux[]); \ No newline at end of file +Tache **chargeTaches(Offre *tabTravaux[]); +Precedence *loadPrec(int *tmax); \ No newline at end of file diff --git a/includes/structures.h b/includes/structures.h index 0940a15..fdfa282 100644 --- a/includes/structures.h +++ b/includes/structures.h @@ -43,6 +43,12 @@ int dateDebut; bool traite; } Tache; +typedef struct +{ + char travauxPrec[30]; + char travauxSucc[30]; +} Precedence; + //Devis void displayDevis(Devis d); diff --git a/srcs/charge.c b/srcs/charge.c index 40462cb..796a95e 100644 --- a/srcs/charge.c +++ b/srcs/charge.c @@ -15,7 +15,7 @@ char *readAdress(FILE *flot) s = (char *)realloc(adresse, tmax*sizeof(char)); if (s==NULL) { - printf("Erreur reallocation pour str adresse\n"); + printf("\033[0;31mErreur: \033[0mreallocation pour str adresse\n"); exit(1); } adresse=s; @@ -28,7 +28,56 @@ char *readAdress(FILE *flot) return adresse; } +Precedence *loadPrec(int *tmax) +{ + FILE *prec; + int i=0, (*tmax)=5; + Precedence *tabP, *s, pre; + prec=fopen("précédence.txt", "r"); + if (prec == NULL) + { + printf("\033[0;31mErreur: \033[0mouverture de 'précédence.txt'\n"); + } + tabP = (Precedence *)malloc(tmax*sizeof(Precedence)); + while(!feof(prec)) + { + if(i==tmax) + { + (*tmax)+=5; + s = (Precedence *)malloc((*tmax)*sizeof(Precedence)); + if (s==NULL) + { + printf("\033[0;31mErreur: \033[0mreallocation pour fichier précédence\n"); + exit(1); + } + tabP = s; + } + fscanf("%s %s",p.travauxPrec, p.travauxSucc); + i++; + } + fclose(prec); +} + Tache **chargeTaches(Offre *tabTravaux[]) { - + Tache *tabTache[8]; + int i; + Tache *t; + for (i=0; itache = tabTravaux[i]->travaux; + t->duree = tabTravaux[i]->ldevis->duree; + + + + tabTache[i] = t; + } + return tabTache; } \ No newline at end of file diff --git a/srcs/structures.c b/srcs/structures.c index f964691..3e8a937 100644 --- a/srcs/structures.c +++ b/srcs/structures.c @@ -10,7 +10,7 @@ void displayDevis(Devis d) } -Devis readDevis(Offre *tabTravaux[]) // A finir +Devis readDevis(Offre *tabTravaux[]) { Devis d; FILE *devisFile; @@ -21,13 +21,14 @@ Devis readDevis(Offre *tabTravaux[]) // A finir index = rechTravaux(travaux, tabTravaux); if (index==-1) { - printf("Ces travaux ne sont pas prévus !"); + printf("\033[0;31mErreur: \033[0mCes travaux ne sont pas prévus !\n"); exit(1); } fgets(d.nomE, 32, devisFile); d.nomE[strlen(d.nomE)-1] = '\0'; readAdress(devisFile); fscanf(devisFile, "%d\n%d\n%d", d.capital, d.duree, d.prix); + fclose(devisFile); return d; } @@ -44,7 +45,7 @@ ListeDevis delete(ListeDevis l) MaillonDevis *md; if (l==NULL) { - printf("Erreur: suppression dans une liste vide"); + printf("\033[0;31mErreur: \033[0msuppression dans une liste vide\n"); exit(1); } md=l; @@ -60,7 +61,7 @@ ListeDevis insert(ListeDevis l, Devis d) md = (MaillonDevis *)malloc(sizeof(MaillonDevis)); if (md == NULL) { - printf("Erreur allocation mémoire"); + printf("\033[0;31mErreur: \033[0mallocation mémoire insertion MaillonDevis\n"); exit(1); } md->dev=d;