Index: trunk/AddOn/TAcq/brparam.cc
===================================================================
--- trunk/AddOn/TAcq/brparam.cc	(revision 3901)
+++ trunk/AddOn/TAcq/brparam.cc	(revision 3909)
@@ -98,4 +98,5 @@
 
 // Classe qui memorise tous les parametres importants de l'acquisition
+#define PMAXNBFIBRES 64
 
 /* --Methode-- */
@@ -109,8 +110,13 @@
 
   FiberListS=fibres;
-  NbFibers=0;
-  for (int fib=0; fib<PMAXNBFIBRES;fib++)  FiberNum[fib]=0;
+  FiberIdsS="1,2,3,4,5,6,7,8";
+
   PaqSize=paqsz;
+
   dmasizekb=dmaszkb;
+  maxkwedma_=1000;
+  nretrydma_=3;
+  first_maxkwedma_=20000;
+  first_nretrydma_=9;
 
   NbFiles=nfiles;
@@ -181,9 +187,15 @@
 
   FiberListS=p.FiberListS;
-  NbFibers=p.NbFibers;
-  for (int fib=0; fib<PMAXNBFIBRES;fib++)  FiberNum[fib]=p.FiberNum[fib];
+  FiberNum=p.FiberNum;
+  FiberIdsS=p.FiberIdsS;
+  FiberIds=p.FiberIds;
 
   PaqSize=p.PaqSize;
+
   dmasizekb=p.dmasizekb;
+  maxkwedma_=p.maxkwedma_;
+  nretrydma_=p.nretrydma_;
+  first_maxkwedma_=p.first_maxkwedma_;
+  first_nretrydma_=p.first_nretrydma_;
 
   NbFiles=p.NbFiles;
@@ -237,9 +249,21 @@
 {
   DataCards conf(file);
-  FiberListS= conf.SParam("fibres",0,"1");
+  if(conf.HasKey("fibres")) 
+    FiberListS= conf.SParam("fibres",0,"1");
+  else if(conf.HasKey("fibers")) 
+    FiberListS= conf.SParam("fibers",0,"1");
+  if(conf.HasKey("fiberids"))   
+    FiberIdsS= conf.SParam("fiberids",0,"1");
+
   OutPathName= conf.SParam("outpathname",0,"TstAcq");
   skysource= conf.SParam("skysource",0,"");
   PaqSize=(uint_4)conf.IParam("paqsize",0,16424);
+
   dmasizekb =(uint_4) conf.IParam("dmasizekb",0,32);
+  maxkwedma_=(unsigned int)conf.IParam("waitenddma",0,1000);
+  nretrydma_=(unsigned int)conf.IParam("waitenddma",1,3);
+  first_maxkwedma_=(unsigned int)conf.IParam("waitenddma",2,20*maxkwedma_);
+  first_nretrydma_=(unsigned int)conf.IParam("waitenddma",3,3*nretrydma_);
+
   NbFiles=conf.IParam("nbfiles",0,1);
   NBlocPerFile=conf.IParam("nblocperfile",0,10);
@@ -303,8 +327,13 @@
   vector<string> fiblist;
   FillVStringFrString(FiberListS, fiblist, ',');
-  NbFibers=fiblist.size();
   for (int fib=0; fib<fiblist.size(); fib++) {
-    FiberNum[fib]=atoi(fiblist[fib].c_str()); 
-  }
+    FiberNum.push_back(atoi(fiblist[fib].c_str())); 
+  }
+  vector<string> fibids;
+  FillVStringFrString(FiberIdsS, fibids, ',');
+  for (int fib=0; fib<fibids.size(); fib++) {
+    FiberIds.push_back(atoi(fibids[fib].c_str())); 
+  }
+
   if (OutPathName == "/dev/null") { 
     fgnulldev4fits=true;
@@ -318,9 +347,13 @@
   fgdatafft=false;  fgsinglechannel=false;
   reducneedcopy=false;  pqreducmode=BR_TwoChanReduc;
-  if ((acqmode == "std")||(acqmode=="raw2c"))   swapall = BR_Copy ;  
+  if ((acqmode == "std")||(acqmode=="raw2c"))   swapall = BR_Copy ; 
+  if (acqmode=="raw1c") { swapall = BR_Copy ;  fgsinglechannel=true;  pqreducmode=BR_OneChanReduc; }
+
+  if ((acqmode == "fft2c")||(acqmode == "fft1c"))   swapall = BR_Copy ;  
   if (acqmode == "nosw")   swapall = BR_Copy ;
   if (acqmode == "nof")  { swapall = BR_Copy ; savesigfits = false; }
-  if (acqmode == "fft1c")  { swapall = BR_FFTOneChan; reducneedcopy=true;  pqreducmode=BR_OneChanReducK0; }
-  if (acqmode == "fft2c")  { swapall = BR_FFTTwoChan;  reducneedcopy=true;  pqreducmode=BR_TwoChanReducK0; }
+  if (acqmode == "ordfft1c")  { swapall = BR_FFTOneChan; reducneedcopy=true;  pqreducmode=BR_OneChanReducK0; }
+  if (acqmode == "ordfft2c")  { swapall = BR_FFTTwoChan;  reducneedcopy=true;  pqreducmode=BR_TwoChanReducK0; }
+
   if (acqmode == "fft1cnof")  
     { swapall = BR_FFTOneChan;  savesigfits = false; reducneedcopy=true;  pqreducmode=BR_OneChanReducK0;  }
@@ -379,6 +412,11 @@
   os << " ------ BRParList::Print() ----- " << endl;
   os << " FiberListS=" << FiberListS ;
+  os << " FiberIdsS=" << FiberIdsS ;
+  os << " Fibers (Num->Id): ";
+  for(size_t f=0; f<NbFibers(); f++)   cout << FiberNum[f] << " -> " << FiberIds[f] << " ; " ;
+  os << endl;
   os << " PaqSize=" <<PaqSize;
-  os << " DMA_Size_kb=" <<dmasizekb << endl;
+  os << " DMA_Size_kb=" <<dmasizekb << " (EndDMA: Maxkw=" << maxkwedma_ << " NRetry=" << nretrydma_ 
+     << " FirstDMA: Maxkw=" << first_maxkwedma_ << " NRetry=" << first_nretrydma_ << ")" << endl;
   os << " AcqMode="<<AcqMode;
   os << " Type of acquisition :" << BRPaquet::FmtConvToString( swapall) << endl;
