]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ZDC/ZDCLASERda.cxx
Extrusions of thermal shield on SPD cone removed (M.Sitta)
[u/mrichter/AliRoot.git] / ZDC / ZDCLASERda.cxx
index 3a5c83dd3ed7a1d8b406d37e61f6abc287685185..72a9c4d1714273034f6355d1189b69e679e22d4c 100644 (file)
@@ -65,7 +65,7 @@ int main(int argc, char **argv) {
 
   
   int status = 0;
-  int const kNModules = 10;
+  int const kNModules = 9;
   int const kNChannels = 24;
   int const kNScChannels = 32;
   Int_t kFirstADCGeo=0, kLastADCGeo=1; // NO out-of-time signals!!!
@@ -89,7 +89,14 @@ int main(int argc, char **argv) {
   for(Int_t y=0; y<kNScChannels; y++){
     scMod[y]=scCh[y]=scSigCode[y]=scDet[y]=scSec[y]=0;
   }
-
+      
+  Int_t itdcCh=0;
+  Int_t tdcMod[kNScChannels], tdcCh[kNScChannels], tdcSigCode[kNScChannels];
+  Int_t tdcDet[kNScChannels], tdcSec[kNScChannels];
+  for(Int_t y=0; y<kNScChannels; y++){
+    tdcMod[y]=tdcCh[y]=tdcSigCode[y]=tdcDet[y]=tdcSec[y]=-1;
+  }
+  
   /* log start of process */
   printf("\n ZDC LASER program started\n");  
 
@@ -291,6 +298,12 @@ int main(int argc, char **argv) {
                scSec[iScCh]     = rawStreamZDC->GetScTowerFromMap(iScCh);
                iScCh++;
              }
+             else if(modType[iMod]==6 && modGeo[iMod]==4){ // ZDC TDC mapping --------------------
+               tdcMod[itdcCh]     = rawStreamZDC->GetTDCModFromMap(itdcCh);
+               tdcCh[itdcCh]      = rawStreamZDC->GetTDCChFromMap(itdcCh);
+               tdcSigCode[itdcCh] = rawStreamZDC->GetTDCSignFromMap(itdcCh);
+               itdcCh++;
+             }
            }
          }
          // Writing data on output FXS file
@@ -306,6 +319,12 @@ int main(int argc, char **argv) {
             //printf("  Laser DA -> %d Scaler: mod %d ch %d, code %d det %d, sec %d\n",
             //  is,scMod[is],scCh[is],scSigCode[is],scDet[is],scSec[is]);
          }
+         for(Int_t is=0; is<kNScChannels; is++){
+            fprintf(mapFile4Shuttle,"\t%d\t%d\t%d\t%d\n",
+              is,tdcMod[is],tdcCh[is],tdcSigCode[is]);
+            //if(tdcMod[is]!=-1) printf("  Mapping DA -> %d TDC: mod %d ch %d, code %d\n",
+            //  is,tdcMod[is],tdcCh[is],tdcSigCode[is]);
+         }
          for(Int_t is=0; is<kNModules; is++){
             fprintf(mapFile4Shuttle,"\t%d\t%d\t%d\n",
             modGeo[is],modType[is],modNCh[is]);
@@ -474,7 +493,7 @@ int main(int argc, char **argv) {
     if(maxXval[k]-150.<0.) xlow[k]=0.;
     else xlow[k] = maxXval[k]-150.;
     // checking if at least one histo is fitted
-    if(hZNChg[k]->GetEntries()!=0 || hZNChg[k]->GetMean()<=0){
+    if(hZNChg[k]->GetEntries()!=0 || hZNChg[k]->GetMean()>0){
       atLeastOneHisto=1;
       //
       hZNChg[k]->Fit("gaus","Q","",xlow[k],maxXval[k]+150.);
@@ -491,7 +510,7 @@ int main(int argc, char **argv) {
     if(nBin[k+5]!=0) maxXval[k+5] = maxBin[k+5]*xMax[k+5]/nBin[k+5];
     if(maxXval[k+5]-150.<0.) xlow[k+5]=0.;
     else xlow[k+5] = maxXval[k+5]-150.;
-    if(hZPChg[k]->GetEntries()!=0 || hZPChg[k]->GetMean()<=0){
+    if(hZPChg[k]->GetEntries()!=0 || hZPChg[k]->GetMean()>0){
       atLeastOneHisto=1; 
       //
       hZPChg[k]->Fit("gaus","Q","",xlow[k+5],maxXval[k+5]+150.);
@@ -510,7 +529,7 @@ int main(int argc, char **argv) {
       if(maxXval[k+10]-150.<0.) xlow[k+10]=0.;
       else xlow[k+10] = maxXval[k+10]-150.;
       printf("ZEM%d: entries %1.0f mean %1.0f\n",k+1,hZEMhg[k]->GetEntries(),hZEMhg[k]->GetMean());
-      if(hZEMhg[k]->GetEntries()!=0 || hZEMhg[k]->GetMean()<=0){
+      if(hZEMhg[k]->GetEntries()!=0 || hZEMhg[k]->GetMean()>0){
         atLeastOneHisto=1; 
         //
         hZEMhg[k]->Fit("gaus","Q","",xlow[k+10],maxXval[k+10]+150.);
@@ -529,7 +548,7 @@ int main(int argc, char **argv) {
     if(nBin[k+12]!=0) maxXval[k+12] = maxBin[k+12]*xMax[k+12]/nBin[k+12];
     if(maxXval[k+12]-150.<0.) xlow[k+12]=0.;
     else xlow[k+12] = maxXval[k+12]-150.;
-    if(hZNAhg[k]->GetEntries()!=0 || hZNAhg[k]->GetMean()<=0){
+    if(hZNAhg[k]->GetEntries()!=0 || hZNAhg[k]->GetMean()>0){
       atLeastOneHisto=1; 
       //
       hZNAhg[k]->Fit("gaus","Q","",xlow[k+12],maxXval[k+12]+150.);
@@ -546,7 +565,7 @@ int main(int argc, char **argv) {
     if(nBin[k+17]!=0) maxXval[k+17] = maxBin[k+17]*xMax[k+17]/nBin[k+17];
     if(maxXval[k+17]-150.<0.) xlow[k+17]=0.;
     else xlow[k+17] = maxXval[k+17]-150.;
-    if(hZPAhg[k]->GetEntries()!=0 || hZPAhg[k]->GetMean()<=0){
+    if(hZPAhg[k]->GetEntries()!=0 || hZPAhg[k]->GetMean()>0){
       atLeastOneHisto=1; 
       //
       hZPAhg[k]->Fit("gaus","Q","",xlow[k+17],maxXval[k+17]+150.);