Simplifications, now that pedestal subprocessor is taking care of deciding whether...
authorlaphecet <laphecet@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 16 Feb 2010 20:36:18 +0000 (20:36 +0000)
committerlaphecet <laphecet@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 16 Feb 2010 20:36:18 +0000 (20:36 +0000)
MUON/AliMUONPedestal.cxx
MUON/MUONTRKGAINda.cxx
MUON/MUONTRKPEDda.cxx

index 79fcc7d..d4de7c3 100644 (file)
@@ -98,17 +98,18 @@ void AliMUONPedestal::LoadConfig(const char* dbfile)
   ifstream filein(dbfile,ios::in);
 
   // check if the 1st caracter of the 1st line is # (Config read from the OCDB => OffLine)
-  string line; 
-  getline(filein, line, '\n');
-  cout << " line 1: " << line ;
-  if ( int(line[0]) == 35 )  // ascii code of # character
-    {
-      cout << " ==>  1st caracter = " << line[0] << " (ascii code =" << int(line[0]) << ")" << endl;    
-    }
-  else  
-    { filein.clear();  filein.seekg(0);  // rewind
-      cout << " ==> rewind configuration file: "<< dbfile << endl;           
-    } 
+  // NO NEED ANYMORE : change configuration tested by the Shuttle (from 16/02/10)
+//   string line; 
+//   getline(filein, line, '\n');
+//   cout << " line 1: " << line ;
+//   if ( int(line[0]) == 35 )  // ascii code of # character
+//     {
+//       cout << " ==>  1st caracter = " << line[0] << " (ascii code =" << int(line[0]) << ")" << endl;    
+//     }
+//   else  
+//     { filein.clear();  filein.seekg(0);  // rewind
+//       cout << " ==> rewind configuration file: "<< dbfile << endl;           
+//     } 
   
   while (!filein.eof())
     { 
@@ -136,6 +137,7 @@ void AliMUONPedestal::LoadConfig(const char* dbfile)
 //______________________________________________________________________________
 void AliMUONPedestal::MakePed(Int_t busPatchId, Int_t manuId, Int_t channelId, Int_t charge)
 {
+  static Int_t warn=0;
   /// Compute pedestals values
   AliMUONVCalibParam* ped = 
     static_cast<AliMUONVCalibParam*>(fPedestalStore ->FindObject(busPatchId, manuId));
@@ -146,7 +148,10 @@ void AliMUONPedestal::MakePed(Int_t busPatchId, Int_t manuId, Int_t channelId, I
        {  // Fill out_of_config (buspatch,manu) table
          if (!(static_cast<AliMUONErrorCounter*>(fManuBPoutofconfigTable->FindObject(busPatchId,manuId))))
            fManuBPoutofconfigTable->Add(new AliMUONErrorCounter(busPatchId,manuId));
-         cout << " !!! WARNING  : busPatchId = " << busPatchId << " manuId = " << manuId << " not in the Detector configuration " << endl;
+         if(warn<10) cout << " !!! WARNING  : busPatchId = " << busPatchId << " manuId = " << manuId << " not in the Detector configuration " << endl;
+         else if(warn==10) cout << " !!! see .log file for an exhaustive list of (busPatchId, manuId) out of Detector configuration \n" << endl; 
+          warn++;
+          (*fFilcout) << " !!! WARNING  : busPatchId = " << busPatchId << " manuId = " << manuId << " not in the Detector configuration " << endl; 
        }
       else {fNManu++;}
       fNChannel+=64;
index 76f9bb5..bc862ee 100644 (file)
@@ -41,7 +41,7 @@
 
 /*
  -------------------------------------------------------------------------
- 2010-02-15 New version: MUONTRKGAINda.cxx,v 1.5
+ 2010-02-16 New version: MUONTRKGAINda.cxx,v 1.5
  -------------------------------------------------------------------------
  
  Version for MUONTRKGAINda MUON tracking
@@ -141,6 +141,7 @@ int main(Int_t argc, const char** argv)
   Int_t nGlitchErrors= 0;
   Int_t nParityErrors= 0;
   Int_t nPaddingErrors= 0;
+  Int_t nTokenlostErrors= 0;
   Int_t nEventsRecovered = 0;
   Int_t nEvents = 0;
   
@@ -195,8 +196,8 @@ int main(Int_t argc, const char** argv)
   filein >> nbev;  // Nb of events to read  (default = 0 => reading all events)
   if(nbev>0)maxEvents=nbev;
   
-  printf(" *** Copy: %s from DetDB to working directory  ***      Config= %d\n",dbfile,nConfig);
-  printf(" Input parameters:  nInit= %d   Nb linear pts= %d   Print level= %d   Plot Level= %d",nInit,nbpf1,printLevel,plotLevel);
+  //  printf(" *** Copy: %s from DetDB to working directory  ***      Config= %d\n",dbfile,nConfig);
+  printf(" Input parameters:  nInit= %d   Nb linear pts= %d   Print level= %d   Plot Level= %d    nConfig= %d",nInit,nbpf1,printLevel,plotLevel,nConfig);
   if(nbev==0)printf("\n");
   else printf("  Nb_max evt = %d\n",maxEvents);
   
@@ -210,7 +211,7 @@ int main(Int_t argc, const char** argv)
     sprintf(dbfile,"config_%s",getenv("DATE_ROLE_NAME"));
     status=daqDA_DB_getFile(dbfile,dbfile);
     if(status) {printf(" Failed  : Configuration file %s is missing, status = %d\n",dbfile,status); return -1; }
-    else printf(" *** Copy ascii config file: %s from DetDB to working directory and reading ...*** \n",dbfile);
+    //    else printf(" *** Copy ascii config file: %s from DetDB to working directory and reading ...*** \n",dbfile);
     muonGain->LoadConfig(dbfile);  
   } 
   
@@ -270,6 +271,7 @@ int main(Int_t argc, const char** argv)
     int eventGlitchErrors = 0;
     int eventParityErrors = 0;
     int eventPaddingErrors = 0;
+    int eventTokenlostErrors = 0;
     rawStream->First();
     do
     {
@@ -277,6 +279,7 @@ int main(Int_t argc, const char** argv)
       eventGlitchErrors += rawStream->GetGlitchErrors();
       eventParityErrors += rawStream->GetParityErrors();
       eventPaddingErrors += rawStream->GetPaddingErrors();
+      eventTokenlostErrors += rawStream->GetTokenLostErrors();
     } while(rawStream->NextDDL()); 
     
     AliMUONRawStreamTrackerHP::AliBusPatch* busPatch;
@@ -378,14 +381,16 @@ int main(Int_t argc, const char** argv)
            } // end of if (!rawStream->GetGlitchErrors() && !rawStream->GetPaddingErrors() ...
       filcout<<"Number of errors : Glitch "<<eventGlitchErrors
       <<" Parity "<<eventParityErrors
-      <<" Padding "<<eventPaddingErrors<<endl;
+      <<" Padding "<<eventPaddingErrors
+      <<" Token lost "<<eventTokenlostErrors<<endl;
       filcout<<endl;                   
     } // end of if (!rawStream->IsErrorMessage())
     
     if (eventGlitchErrors)  nGlitchErrors++;
     if (eventParityErrors)  nParityErrors++;
     if (eventPaddingErrors) nPaddingErrors++;
-    
+    if (eventTokenlostErrors) nTokenlostErrors++;
+
   } // while (rawReader->NextEvent())
   delete rawReader;
   delete rawStream;
@@ -407,6 +412,7 @@ int main(Int_t argc, const char** argv)
   cout << prefixDA << " : Nb of Glitch errors         = "   << nGlitchErrors  << endl;
   cout << prefixDA << " : Nb of Parity errors         = "   << nParityErrors  << endl;
   cout << prefixDA << " : Nb of Padding errors        = "   << nPaddingErrors << endl;         
+  cout << prefixDA << " : Nb of Token lost errors     = "   << nTokenlostErrors << endl;
   cout << prefixDA << " : Nb of events recovered      = "   << nEventsRecovered<< endl;
   cout << prefixDA << " : Nb of events without errors = "   << nEvents-nEventsRecovered<< endl;
   cout << prefixDA << " : Nb of events used           = "   << nEvents        << endl;
@@ -416,6 +422,7 @@ int main(Int_t argc, const char** argv)
   filcout << prefixDA << " : Nb of Glitch errors         = "   << nGlitchErrors << endl;
   filcout << prefixDA << " : Nb of Parity errors         = "   << nParityErrors << endl;
   filcout << prefixDA << " : Nb of Padding errors        = "   << nPaddingErrors << endl;
+  filcout << prefixDA << " : Nb of Token lost errors     = "   << nTokenlostErrors << endl;
   filcout << prefixDA << " : Nb of events recovered      = "   << nEventsRecovered<< endl;     
   filcout << prefixDA << " : Nb of events without errors = "   << nEvents-nEventsRecovered<< endl;
   filcout << prefixDA << " : Nb of events used           = "   << nEvents        << endl;
@@ -457,7 +464,7 @@ int main(Int_t argc, const char** argv)
   //    Copying files to local DB folder defined by DAQ_DETDB_LOCAL
   Char_t *dir;
   dir= getenv("DAQ_DETDB_LOCAL");
-  unsigned int nLastVersions = 90;
+  unsigned int nLastVersions = 50;
   printf("\n ***  Local DataBase: %s  (Max= %d) ***\n",dir,nLastVersions);
   status = daqDA_localDB_storeFile(logOutputFile.Data(),nLastVersions);
   if(status)printf(" Store file : %s   status = %d\n",logOutputFile.Data(),status);
@@ -481,13 +488,13 @@ int main(Int_t argc, const char** argv)
   
   filcout.close();
   
-  // Transferring to OCDB via the SHUTTLE
+  // Transferring to calibration file to  FES
   // be sure that env variable DAQDALIB_PATH is set in script file
   //       gSystem->Setenv("DAQDALIB_PATH", "$DATE_SITE/infoLogger");
-  printf("\n *****  STORE FILE in FES ****** \n");
+  printf("\n *****  STORE calibration FILE to FES ****** \n");
   status = daqDA_FES_storeFile(shuttleFile.Data(),"GAINS");
   if (status) { printf(" Failed to export file : %s , status = %d\n",shuttleFile.Data(),status); return -1; }
-  else printf(" %s successfully exported to FES  \n",shuttleFile.Data());
+  //  else printf(" %s successfully exported to FES  \n",shuttleFile.Data());
   
   printf("\n ######## End execution : %s ######## \n",prefixDA); 
   timers.Stop();
index ea43d95..7b8617d 100644 (file)
@@ -29,7 +29,7 @@
 
 /*
        -------------------------------------------------------------------------
-        2010-02-15 New version: MUONTRKPEDda.cxx,v 1.5
+        2010-02-16 New version: MUONTRKPEDda.cxx,v 1.5
        -------------------------------------------------------------------------
 
        Version for MUONTRKPEDda MUON tracking
@@ -139,7 +139,7 @@ int main(Int_t argc, const char **argv)
   Int_t nEventsRecovered = 0;
   Int_t nEvents = 0;
   UInt_t runNumber   = 0;
-  Int_t nConfig = 1, writeConfig=0; 
+  Int_t nConfig = 1; 
   ofstream filcout;
 
   // decode the input line
@@ -226,20 +226,17 @@ int main(Int_t argc, const char **argv)
       if(status) {printf(" !!! Failed  : input file %s is missing, status = %d\n",dbfile,status); return -1; } 
       ifstream filein(dbfile,ios::in);
       filein >> nConfig;
-      filein >> writeConfig; // default=0, if 1 : current configuration file written in the Det.DataBase at the end of the DA
-      printf(" *** Copy: %s from DetDB to working directory  ***  Config= %d   writeConfig=%d\n",dbfile,nConfig,writeConfig);
     }
   else  printf(" ***  Config= %d: no configuration ascii file is used \n",nConfig); 
   muonPedestal->SetconfigDA(nConfig);
 
-  // nConfig=1: configuration ascii file read from DetDB
+  // nConfig=1: configuration ascii file config_$DATE_ROLE_NAME read from DetDB
   if(nConfig)
     {
-      // MuonTrk Configuration ascii file (initCROCUS.dat -> ascii file = config_$DATE_ROLE_NAME)
       sprintf(dbfile,"config_%s",getenv("DATE_ROLE_NAME"));
       status=daqDA_DB_getFile(dbfile,dbfile);
       if(status) {printf(" !!! Failed  : Configuration file %s is missing, status = %d\n",dbfile,status); return -1; }
-      else printf(" *** Copy ascii config file: %s from DetDB to working directory and reading ...*** \n",dbfile);
+      //      else printf(" *** Copy ascii config file: %s from DetDB to working directory and reading ...*** \n",dbfile);
       muonPedestal->LoadConfig(dbfile);  
     } 
 
@@ -508,23 +505,18 @@ int main(Int_t argc, const char **argv)
 
   filcout.close();
 
-  // Transferring to OCDB via the SHUTTLE (be sure that env variable DAQDALIB_PATH is set)
-  printf("\n *****  STORE FILE in FES ****** \n");
+  // Transferring to FES  (be sure that env variable DAQDALIB_PATH is set)
+  printf("\n *****  STORE Pedestal FILE in FES ****** \n");
   status = daqDA_FES_storeFile(shuttleFile.Data(),"PEDESTALS");
   if (status) { printf(" !!! Failed to export file : %s , status = %d\n",shuttleFile.Data(),status); return -1; }
-  else printf(" %s successfully exported to FES  \n",shuttleFile.Data());
+  //  else printf(" %s successfully exported to FES  \n",shuttleFile.Data());
+
+  // Transferring to FES  (be sure that env variable DAQDALIB_PATH is set)
+  printf("\n *****  STORE Configuration FILE in FES ****** \n");
+  status = daqDA_FES_storeFile(dbfile,"CONFIG");
+  if (status) { printf(" !!! Failed to export file : %s , status = %d\n",dbfile,status); return -1; }
+  //  else printf(" %s successfully exported to FES  \n",dbfile);
 
-  // Transferring to DetectorDataBase the configuration file if changed
-  if(writeConfig)
-    {
-      printf("\n *****  New detector configuration : STORE Config FILE in Detector DataBase ****** \n");
-      Char_t DAdbfile[256]="";
-      //      TString DAdbfile=Form("DA_config_%s",getenv("DATE_ROLE_NAME")) ;
-      sprintf(DAdbfile,"DA_config_%s",getenv("DATE_ROLE_NAME"));
-      status=daqDA_DB_storeFile(dbfile,DAdbfile);
-      if(status) {printf(" !!! Failed  : Pb to store config. file %s in DetDB (%s), status = %d\n",dbfile,DAdbfile,status); return -1; }
-      else printf(" Copy ascii current config file: %s to %s in DetDB \n",dbfile,DAdbfile);
-    }
 
   printf("\n ######## End execution : %s ######## \n",prefixDA); 
   timers.Stop();