Index: trunk/AddOn/TAcq/racqurw.cc
===================================================================
--- trunk/AddOn/TAcq/racqurw.cc	(revision 3658)
+++ trunk/AddOn/TAcq/racqurw.cc	(revision 3671)
@@ -464,5 +464,5 @@
 
 /* --Methode-- */
-PCIEMultiReader::PCIEMultiReader(vector<PCIEWrapperInterface*> vec_pciw,uint_4 sizeFrame,uint_4 packSize ,RAcqMemZoneMgr& mem, uint_4 nmax, BRDataFmtConv swapall,int binMin, int nbBin)
+PCIEMultiReader::PCIEMultiReader(vector<PCIEWrapperInterface*> vec_pciw,uint_4 sizeFrame,uint_4 packSize ,RAcqMemZoneMgr& mem, uint_4 nmax, BRDataFmtConv swapall)
   :   memgr(mem) , vec_pciw_ (vec_pciw)
 {
@@ -473,6 +473,4 @@
   packSizeInMgr_=memgr.PaqSize();
   sizeFr_ =sizeFrame;
-  binMin_= binMin;
-  nbBin_= nbBin;
   if (vec_pciw.size() != memgr.NbFibres()) {
     cout << " PCIEMultiReader()PbArgs: vec_pciw.size()= " << vec_pciw.size() << " memgr.NbFibres()=" <<memgr.NbFibres()<< endl;
@@ -572,5 +570,6 @@
 	    setRC(9);  fgarret=true; break;
 	  }
-	  BRPaquet paq(tampon[fib], nextpaq, paqsz, swapall_,binMin_,nbBin_);
+	  BRPaquet paq(tampon[fib], nextpaq, paqsz, swapall_);
+	  // CHECK  S'il faut faire une reduction de taille de paquet
 	  npaqfait[fib]++;
 	  if (fib==nbDma_-1) npaqfaitg++;  // Ne pas oublier le compteur de paquets faits 
@@ -601,5 +600,6 @@
 	  setRC(9);  fgarret=true; break;
 	}
-	BRPaquet paq(Datas[fib]+curoff, nextpaq, paqsz, swapall_,binMin_,nbBin_);
+	BRPaquet paq(Datas[fib]+curoff, nextpaq, paqsz, swapall_);
+	// CHECK  S'il faut faire une reduction de taille de paquet
 	npaqfait[fib]++;
 	if (fib==nbDma_-1) npaqfaitg++;  // Ne pas oublier le compteur de paquets faits 
@@ -688,6 +688,6 @@
 //--------------------------------------------------------------------
 
-MultiDataSaver::MultiDataSaver(RAcqMemZoneMgr& mem, string& path, uint_4 nfiles, uint_4 nblocperfile, bool savesig)
-  :  memgr(mem) 
+MultiDataSaver::MultiDataSaver(RAcqMemZoneMgr& mem, string path, uint_4 nfiles, uint_4 nblocperfile, bool savesig)
+  :  memgr(mem)
 {
   nfiles_ = nfiles;
@@ -708,5 +708,5 @@
   setRC(1);	
   BRPaqChecker pcheck[MAXNBFIB];  // Verification/comptage des paquets 
-
+  BRAcqConfig bpar;
   try {
     TimeStamp ts; 
@@ -732,4 +732,5 @@
       fgnulldev = true;
     }
+    BRPaquet paq0(NULL, NULL, paqsz); 
     for (uint_4 nbFile=0;nbFile<nfiles_ ;nbFile++) {
       if (stop_ )   break;
@@ -742,17 +743,19 @@
 	  header[fib].open(fname);
 	}
-      BRPaquet paq0(NULL, NULL, paqsz); 
+    
       uint_4 npaqperfile = memgr.NbPaquets()*nblocperfile_;  // Nombre de paquets ecrits dans un fichier 
 
       if (savesig_) { //Reza - Ouverture conditionnel fichier 
-        for(uint_4 fib=0; fib<memgr.NbFibres(); fib++) {
+        for(uint_4 fib=0; fib<memgr.NbFibres(); fib++) 	  {
 	  if (fgnulldev) strcpy(fname,"/dev/null");
 	  else sprintf(fname,"%s/Fibre%d/signal%d.fits",path_.c_str(),fib+1,(int)fnum);
 	  mff[fib].Open(fname,MF_Write);  //Reza - Ouverture conditionnel fichier 
 	  // Entete correspondant a l'ecriture tout le paquet - trailer compris (modif Mai 2009)
-	  mff[fib].setDTypeNaxis(MF_Byte, paq0.PaquetSize(), npaqperfile);
-	}
+	  mff[fib].setDTypeNaxis(MF_Byte, paq0.PaquetSize(), npaqperfile);	
+        // Sans TRAILER de paquet mff.setDTypeNaxis(MF_Byte, paq0.DataSize()+paq0.HeaderSize(), npaqperfile); 
+	}
+	// Ajout mots-cle additionnels a tous les fichiers FITS
+	AddFitsKW(mff,bpar);
 	fnum++;
-        // Sans TRAILER de paquet mff.setDTypeNaxis(MF_Byte, paq0.DataSize()+paq0.HeaderSize(), npaqperfile); 
       }
       else sprintf(fname,"MemDataBloc[%d]-NoDataFile",(int)fnum++);
@@ -765,5 +768,5 @@
         if (buffg == NULL) {
 	  cout << " MultiDataSaver::run()/ERROR memgr.GetMemZone(" << mid << ") -> NULL" << endl;
-	  setRC(2);	
+	  setRC(21);	
 	  return;	
 	}
@@ -772,5 +775,5 @@
 	  if (buff == NULL) {  // Ceci ne devrait pas arriver - suite au test buffg ci-dessus
 	    cout << " MultiDataSaver::run()/ERROR memgr.GetMemZone(" << mid << "," << fib << ") -> NULL" << endl;
-	    setRC(2);	
+	    setRC(22);	
 	    return;	
 	  }
@@ -797,6 +800,7 @@
 	}
 	else sprintf(fname,"MemDataBloc[%d]-NoDataFile",(int)fnum-1);
-        filog << "    Fib " << fib << " -> " << fname << endl;
-        cout << "    Fib " << fib << " -> " << fname << endl;
+        string pcsum = pcheck[fib].Summary();
+        filog << "    Fib " << fib << " -> " << fname << " Stat:" << pcsum << endl;
+        cout  << "    Fib " << fib << " -> " << fname << " Stat:" << pcsum << endl;
       }
       if (savesig_)
@@ -805,4 +809,6 @@
           mff[fib].Close();	  
 	}
+    
+     
     }  // Fin de boucle sur les fichiers 
     cout << " --------------------  MultiDataSaver::run() -------------------- " << endl;
@@ -832,2 +838,17 @@
 }   
 
+
+/* --Methode-- */
+int MultiDataSaver::AddFitsKW(MiniFITSFile* mff, BRAcqConfig& acpar)
+{ 
+  TimeStamp ts;
+  string cdtu=ts.ToString();
+  for(uint_4 fib=0; fib<memgr.NbFibres(); fib++) {
+    mff[fib].AddKeyS("DATE", cdtu.c_str(), " File Creation time(YYYY-MM-DDThh:mm:ss UT) ");	  
+    mff[fib].AddKeyS("DATEOBS", cdtu.c_str(), " Observation Time (YYYY-MM-DDThh:mm:ss UT) ");
+    mff[fib].AddKeyD("ACQVER", acpar.AcqVersion(), " BAORadio Acq Software version ") ;
+    mff[fib].AddKeyS("ACQCONF", acpar.GetParams().AcqMode, " BAORadio Acq run  mode" );
+  }
+  return 0;
+}
+
