Index: /anr/anr.tex
===================================================================
--- /anr/anr.tex	(revision 295)
+++ /anr/anr.tex	(revision 296)
@@ -273,4 +273,13 @@
 \newpage\section{Staff involvement in other contracts}\input{annexe-autre-participation.tex}
 
+\newpage\section{Effort tables}
+%\begin{small}
+\input{effort-par-livrable-1.tex}
+\newpage
+\input{effort-par-livrable-2.tex}
+\newpage
+\input{effort-par-livrable-3.tex}
+%\end{small}
+
 \end{document}
 
Index: /anr/gantt.l
===================================================================
--- /anr/gantt.l	(revision 295)
+++ /anr/gantt.l	(revision 296)
@@ -658,5 +658,5 @@
     pictwidth += PICT_RIGHTSEP;
     
-    fprintf(curr->os,"\\setlength{\\unitlength}{1.0mm}\n");
+    fprintf(curr->os,"\\setlength{\\unitlength}{0.9mm}\n");
     fprintf(curr->os,"\\begin{picture}(%.1f,%.1f)\n",pictwidth,pictheight);
     //print_hline(0,0,pictwidth,0);
@@ -913,4 +913,92 @@
 }
 
+#if 1
+void do_effort_par_livrable(char* filename,int from_task, int to_task)
+{
+    //struct partner_def* part;
+    if ( (curr->os=fopen(filename,"w"))==0 ) {
+        fprintf(stderr,"can not open %s file for writing.\n",filename);
+        fprintf(stderr,"generation of %s partner table is skipped.\n",filename);
+        return;
+    }
+    fprintf(curr->os,"\\begin{tabular}{|c|l||c|r|r|r||r|}\\hline\n");
+    fprintf(curr->os,
+        "number & \\multicolumn{1}{c||}{title} & part. & \\multicolumn{3}{c||}{years } & total \\\\\\cline{4-6}\n");
+    fprintf(curr->os,
+        " & & & \\multicolumn{1}{c|}{1} & \\multicolumn{1}{c|}{2} & "
+        "\\multicolumn{1}{c||}{3} &  \\\\\\hline\\hline\n");
+    int tn,stn,dn,partner;
+    double an1=0,an2=0,an3=0,an=0;
+    for (tn=0 ; tn<T_MAX ; tn++) {
+        int livrablenb=0,subtasknb=0;
+        int task_n,subtask_n;
+        double  t_sum1=0, t_sum2=0, t_sum3=0, t_sum=0;
+        double st_sum1=0,st_sum2=0,st_sum3=0,st_sum=0;
+        if (curr->ls[tn][0][0][0]==0) break;
+        for (stn=0; stn<S_MAX; stn++) {
+          st_sum1=st_sum2=st_sum3=st_sum=0;
+          livrablenb=0;
+          for (dn=0; dn<D_MAX; dn++) {
+            int linenb = 0;
+            Tlivrable* top=curr->ls[tn][stn][dn][0];
+            if ( top==0 ) break;
+            if ( !( from_task<=top->tn &&  top->tn<=to_task ) ) break;
+            double liv1=0,liv2=0,liv3=0,liv=0;
+            for (partner=1 ; partner_table[partner].key!=0 ; partner+=1) {
+                Tlivrable *lcurr,*leader;
+                if ( (lcurr=do_partner_table_getLivrable(&leader,top,partner))==0 )
+                    continue;
+                double sum1,sum2,sum3,sum=0;
+                sum1 = lcurr->hman[0]; sum +=sum1;
+                sum2 = lcurr->hman[1]; sum +=sum2;
+                sum3 = lcurr->hman[2]; sum +=sum3;
+                char label[1000],title[1000];
+                gen_label_base(label,lcurr);
+                sprintf(title,"\\resstablestyletitle{%s}",top->title);
+                fprintf(curr->os,"%10s & %50s & %10s & %2.1f & %2.1f & %2.1f & %2.1f \\\\\\hline\n",
+                   linenb==0 ? label : "",
+                   linenb==0 ? title : "",
+                   partner_table[lcurr->partner].key,
+                   sum1,sum2,sum3,sum);
+                linenb += 1;
+                liv1 += sum1 ; st_sum1 += sum1 ; t_sum1 += sum1 ; an1 += sum1 ; 
+                liv2 += sum2 ; st_sum2 += sum2 ; t_sum2 += sum2 ; an2 += sum2 ; 
+                liv3 += sum3 ; st_sum3 += sum3 ; t_sum3 += sum3 ; an3 += sum3 ; 
+                liv  += sum  ; st_sum  += sum  ; t_sum  += sum  ; an  += sum  ; 
+            }
+            if (linenb>1)
+    	        fprintf(curr->os,"%10s & %50s & %10s & %2.1f & %2.1f & %2.1f & %2.1f \\\\\\hline\n",
+                    "","","total",liv1,liv2,liv3,liv);
+            if (linenb>=0) {
+                livrablenb +=1;
+                task_n=top->tn;
+                subtask_n=top->stn;
+            }
+          }
+          if ( livrablenb>0) {
+                char name[100];
+                char title[1000];
+                sprintf(name,"st%d-%d",task_n,subtask_n);
+                sprintf(title,"\\resstablestyletitle{%s}","");
+    	        fprintf(curr->os,"%10s & %50s & %10s & %2.1f & %2.1f & %2.1f & %2.1f \\\\\\hline\n",
+                    name,title,"total",st_sum1,st_sum2,st_sum3,st_sum);
+                subtasknb += 1;
+          }
+       }
+       if ( subtasknb>0 ) {
+                char name[100];
+                char title[1000];
+                sprintf(name,"task-%d",task_n);
+                sprintf(title,"\\resstablestyletitle{%s}",task_names[task_n]);
+    	        fprintf(curr->os,"%10s & %50s & %10s & %2.1f & %2.1f & %2.1f & %2.1f \\\\\\hline\\hline\n",
+                    name,title,"total",t_sum1,t_sum2,t_sum3,t_sum);
+       }
+    }
+    fprintf(curr->os,"\\end{tabular}\n");
+    fclose(curr->os);
+    curr->os=0;
+}
+#endif
+
 int main()
 {
@@ -943,4 +1031,13 @@
     prepare3(curr);
     do_livrable_tables(40);
+
+    curr = data_new(0,0);
+    prepare0(curr);
+    prepare1(curr);
+    prepare2(curr);
+    prepare3(curr);
+    do_effort_par_livrable("effort-par-livrable-1.tex",1,3);
+    do_effort_par_livrable("effort-par-livrable-2.tex",4,7);
+    do_effort_par_livrable("effort-par-livrable-3.tex",8,8);
     return 0;
 }
Index: /anr/task-csg.tex
===================================================================
--- /anr/task-csg.tex	(revision 295)
+++ /anr/task-csg.tex	(revision 296)
@@ -50,5 +50,5 @@
 \subtask{Implementation of CSG}
     \begin{livrable}
-    \itemV{0}{12}{x}{\Supmc}{CSG tool}
+    \itemV{0}{12}{x}{\Supmc}{CSG}
         The first software release of the CSG tool that will allow demonstrators to start
         working by using the neutral architectural template only for SystemC.
Index: /anr/task-management.tex
===================================================================
--- /anr/task-management.tex	(revision 295)
+++ /anr/task-management.tex	(revision 296)
@@ -29,11 +29,11 @@
         organization, the writing of the review reports.
     \itemL{0}{36}{}{\Smds}{Local project management}{.5:.5:.5}
-        \OtherPartner{0}{36}{\Supmc}{.5:.5:.5}
-        \OtherPartner{0}{36}{\Subs} {.5:.5:.5}
-        \OtherPartner{0}{36}{\Stima}{.5:.5:.5}
-        \OtherPartner{0}{36}{\Slip} {.5:.5:.5}
+        \OtherPartner{0}{36}{\Supmc}  {.5:.5:.5}
+        \OtherPartner{0}{36}{\Subs}   {.5:.5:.5}
+        \OtherPartner{0}{36}{\Stima}  {.5:.5:.5}
+        \OtherPartner{0}{36}{\Slip}   {.5:.5:.5}
         \OtherPartner{0}{36}{\Sirisa} {.5:.5:.5}
-        \OtherPartner{0}{36}{\Sthales} {.5:.5:.5}
-        \OtherPartner{0}{36}{\Sbull} {.5:.5:.5}
+        \OtherPartner{0}{36}{\Sthales}{.5:.5:.5}
+        \OtherPartner{0}{36}{\Sbull}  {.5:.5:.5}
         Project management at the partner level. It includes mainly the progress
         monitoring, the record keeping the participation to the project meetings
