]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AnalyzeSDDNoiseAllMod.C
correcting printf format specifiers
[u/mrichter/AliRoot.git] / ITS / AnalyzeSDDNoiseAllMod.C
index 6d3dfe317d2b9000cc386703ba358691b106b4d7..32e09ff25179f8dbe2651283628354f930240e54 100644 (file)
 void AnalyzeSDDNoiseAllMod(Char_t *datafil, 
                           Int_t adcfreq=20, 
                           Int_t nDDL=0, 
-                          Int_t firstEv=10, 
-                          Int_t lastEv=12, 
-                          Int_t dataformat=1){
+                          Int_t firstEv=18, 
+                          Int_t lastEv=20){ 
 
 
   const Int_t kTotDDL=24;
   const Int_t kModPerDDL=12;
   const Int_t kSides=2;
+  Bool_t writtenoutput=kFALSE;
 
   AliITSOnlineSDDBase **base=new AliITSOnlineSDDBase*[kTotDDL*kModPerDDL*kSides];
   TH2F **histo=new TH2F*[kTotDDL*kModPerDDL*kSides];
@@ -48,7 +48,7 @@ void AnalyzeSDDNoiseAllMod(Char_t *datafil,
        if(adcfreq==40) base[index]->SetLastGoodTB(254);
        else base[index]->SetLastGoodTB(126);
        sprintf(hisnam,"h%02dc%02ds%d",iddl,imod,isid);
-       histo[index]=new TH2F(hisnam,"",128,-0.5,127.5,256,-0.5,255.5);
+       histo[index]=new TH2F(hisnam,"",256,-0.5,255.5,256,-0.5,255.5);
       }
     }
   }
@@ -83,13 +83,15 @@ void AnalyzeSDDNoiseAllMod(Char_t *datafil,
        }
       }
     }
-    AliITSRawStream* s;
-    if(dataformat==0){
-      s=new AliITSRawStreamSDD(rd);
-    }else{
-      s=new AliITSRawStreamSDDCompressed(rd);
-      if(dataformat==1) s->SetADCEncoded(kTRUE);
+
+    UChar_t cdhAttr=AliITSRawStreamSDD::ReadBlockAttributes(rd);
+    UInt_t amSamplFreq=AliITSRawStreamSDD::ReadAMSamplFreqFromCDH(cdhAttr);
+    AliITSRawStream* s=AliITSRawStreamSDD::CreateRawStreamSDD(rd,cdhAttr);
+    if(!writtenoutput){
+      printf("Use %s raw stream, sampling frequency %d MHz\n",s->ClassName(),amSamplFreq);
+      writtenoutput=kTRUE;
     }
+
     while(s->Next()){
       Int_t iDDL=rd->GetDDLID();
       Int_t iCarlos=s->GetCarlosId();
@@ -171,12 +173,12 @@ void AnalyzeSDDNoiseAllMod(Char_t *datafil,
       }
     }
     
-    AliITSRawStream* s;
-    if(dataformat==0){
-      s=new AliITSRawStreamSDD(rd2);
-    }else{
-      s=new AliITSRawStreamSDDCompressed(rd2);
-      if(dataformat==1) s->SetADCEncoded(kTRUE);
+    UChar_t cdhAttr=AliITSRawStreamSDD::ReadBlockAttributes(rd2);
+    UInt_t amSamplFreq=AliITSRawStreamSDD::ReadAMSamplFreqFromCDH(cdhAttr);
+    AliITSRawStream* s=AliITSRawStreamSDD::CreateRawStreamSDD(rd2,cdhAttr);
+    if(!writtenoutput){
+      printf("Use %s raw stream, sampling frequency %d MHz\n",s->ClassName(),amSamplFreq);
+      writtenoutput=kTRUE;
     }
     while(s->Next()){
       Int_t iDDL=rd2->GetDDLID();
@@ -394,16 +396,15 @@ void AnalyzeSDDNoiseAllMod(Char_t *datafil,
 
 }
 
-void AnalyzeSDDNoiseAllMod(Int_t nrun, Int_t n2, Char_t* dir="LHC08d_SDD",
+void AnalyzeSDDNoiseAllMod(Int_t nrun, Int_t n2, Int_t year=2009, Char_t* dir="LHC09b_SDD",
                           Int_t adcfreq=20, 
                           Int_t nDDL=0, 
-                          Int_t firstEv=15, 
-                          Int_t lastEv=18, 
-                          Int_t dataformat=1){
+                          Int_t firstEv=18, 
+                          Int_t lastEv=20){
 
   TGrid::Connect("alien:",0,0,"t");
   Char_t filnam[200];
-  sprintf(filnam,"alien:///alice/data/2008/%s/%09d/raw/08%09d%03d.10.root",dir,nrun,nrun,n2);
+  sprintf(filnam,"alien:///alice/data/%d/%s/%09d/raw/%02d%09d%03d.10.root",year,dir,nrun,year-2000,nrun,n2);
   printf("Open file %s\n",filnam);
-  AnalyzeSDDNoiseAllMod(filnam,adcfreq,nDDL,firstEv,lastEv,dataformat);
+  AnalyzeSDDNoiseAllMod(filnam,adcfreq,nDDL,firstEv,lastEv);
 }