]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliGlobalQADataMaker.cxx
Added ptHard to the information in the AliAODMCHeader, filled in the AODHandler
[u/mrichter/AliRoot.git] / STEER / AliGlobalQADataMaker.cxx
index dfe17c3f68f300887f1e136f9e99c91fa7a72a9d..26d43da436a609dfdbf7126f830b3d5c6bb9d1c3 100644 (file)
 ClassImp(AliGlobalQADataMaker)
  
 //____________________________________________________________________________ 
-void AliGlobalQADataMaker::EndOfDetectorCycle(AliQA::TASKINDEX_t task, TObjArray * list)
+void AliGlobalQADataMaker::EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray ** list)
 {
   //Detector specific actions at end of cycle
   // do the QA checking
-  AliQAChecker::Instance()->Run(AliQA::kGLOBAL, task, list) ;  
+  AliQAChecker::Instance()->Run(AliQAv1::kGLOBAL, task, list) ;  
 }
 
 //____________________________________________________________________________ 
@@ -37,7 +37,7 @@ void AliGlobalQADataMaker::InitRecPoints() {
   // This function books the histograms of *track*residuals*
   // as a part of global QA
   //------------------------------------------------------
-  Char_t *name[]={
+  const Char_t *name[]={
     "SPD1 residuals Y","SPD1 residuals Z",
     "SPD2 residuals Y","SPD2 residuals Z",
     "SDD1 residuals Y","SDD1 residuals Z",
@@ -112,7 +112,7 @@ void AliGlobalQADataMaker::InitESDs() {
   //------------------------------------------------------
 
   {// Cluster related QA
-  Char_t *name[]={
+  const Char_t *name[]={
     "Fraction of the assigned clusters in ITS",
     "Fraction of the assigned clusters in TPC",
     "Fraction of the assigned clusters in TRD"
@@ -123,7 +123,7 @@ void AliGlobalQADataMaker::InitESDs() {
   }
 
   {// Track related QA
-  Char_t *name[]={
+  const Char_t *name[]={
     "Track azimuthal distribution (rad)",                   // kTrk0
     "Track pseudo-rapidity distribution",                   // kTrk1
     "TPC: track momentum distribution (GeV)",               // kTrk2
@@ -132,7 +132,7 @@ void AliGlobalQADataMaker::InitESDs() {
     "TPC-ITS track-matching probability",                   // kTrk5
     "TPC-TOF track-matching probability"                    // kTrk6
   };
-  Add2ESDsList(new TH1F(name[0],name[0],100,-0.02,6.30),kTrk0);
+  Add2ESDsList(new TH1F(name[0],name[0],100, 0.,TMath::TwoPi()),kTrk0);
   Add2ESDsList(new TH1F(name[1],name[1],100,-2.00,2.00),kTrk1);
   Add2ESDsList(new TH1F(name[2],name[2],50,  0.20,5.00),kTrk2);
   Add2ESDsList(new TH1F(name[3],name[3],50,  0.20,5.00),kTrk3);
@@ -142,16 +142,20 @@ void AliGlobalQADataMaker::InitESDs() {
   }
 
   {// V0 related QA
-  Char_t *name[]={
-    "K0s mass (GeV)",
-    "Lambda0 + Lambda0Bar mass (GeV)"
+  const Char_t *name[]={
+    "On-the-fly K0s mass (GeV)",
+    "Offline K0s mass (GeV)",
+    "On-the-fly Lambda0 + Lambda0Bar mass (GeV)",
+    "Offline Lambda0 + Lambda0Bar mass (GeV)"
   };
-  Add2ESDsList(new TH1F(name[0],name[0],50,  0.4477,0.5477),kV0s0);
-  Add2ESDsList(new TH1F(name[1],name[1],50,  1.0657,1.1657),kV0s1);
+  Add2ESDsList(new TH1F(name[0],name[0],50,  0.4477,0.5477),kK0on);
+  Add2ESDsList(new TH1F(name[1],name[1],50,  0.4477,0.5477),kK0off);
+  Add2ESDsList(new TH1F(name[2],name[2],50,  1.0657,1.1657),kL0on);
+  Add2ESDsList(new TH1F(name[3],name[3],50,  1.0657,1.1657),kL0off);
   }
 
   {// PID related QA
-  Char_t *name[]={
+  const Char_t *name[]={
     "ITS: dEdx (ADC) for particles with momentum 0.4 - 0.5 (GeV)",
     "TPC: dEdx (ADC) for particles with momentum 0.4 - 0.5 (GeV)",
     "TOF: tracking - measured (ps)"
@@ -177,6 +181,10 @@ void AliGlobalQADataMaker::MakeESDs(AliESDEvent * event) {
   // This function fills the ESD QA histograms
   // as a part of global QA
   //-----------------------------------------------------------
+  // Check id histograms already created for this Event Specie
+  if ( ! GetESDsData(kClr0) )
+    InitESDs() ;
+
   const AliESDEvent *esd=event;
 
   Int_t ntrk=esd->GetNumberOfTracks() ; 
@@ -192,7 +200,10 @@ void AliGlobalQADataMaker::MakeESDs(AliESDEvent * event) {
     if (track->IsOn(AliESDtrack::kTPCrefit)) {
       Int_t n =track->GetTPCNcls();
       Int_t nf=track->GetTPCNclsF();      // number of crossed TPC pad rows
-      if (nf>0) GetESDsData(kClr1)->Fill(Float_t(n)/nf);
+      if (nf>0) {
+        Double_t val = n*1.0/nf; 
+        GetESDsData(kClr1)->Fill(val); 
+      }
     }
 
     if (track->IsOn(AliESDtrack::kTRDrefit)) {
@@ -215,7 +226,8 @@ void AliGlobalQADataMaker::MakeESDs(AliESDEvent * event) {
         if (TMath::Abs(y)<0.9) {
           GetESDsData(kTrk2)->Fill(p);
           if (track->IsOn(AliESDtrack::kITSrefit)) GetESDsData(kTrk3)->Fill(p);
-          if (track->IsOn(AliESDtrack::kTOFout)) GetESDsData(kTrk4)->Fill(p);
+         //if (track->IsOn(AliESDtrack::kTOFout)) GetESDsData(kTrk4)->Fill(p);
+          if (track->GetTOFsignal()>0) GetESDsData(kTrk4)->Fill(p);
        }
       }
     }
@@ -255,15 +267,24 @@ void AliGlobalQADataMaker::MakeESDs(AliESDEvent * event) {
 
     v0.ChangeMassHypothesis(kK0Short);
     mass=v0.GetEffMass();
-    GetESDsData(kV0s0)->Fill(mass);
+    if (v0.GetOnFlyStatus())
+       GetESDsData(kK0on)->Fill(mass);
+    else
+       GetESDsData(kK0off)->Fill(mass);
 
     v0.ChangeMassHypothesis(kLambda0);
     mass=v0.GetEffMass();
-    GetESDsData(kV0s1)->Fill(mass);
+    if (v0.GetOnFlyStatus())
+       GetESDsData(kL0on)->Fill(mass);
+    else
+       GetESDsData(kL0off)->Fill(mass);
 
     v0.ChangeMassHypothesis(kLambda0Bar);
     mass=v0.GetEffMass();
-    GetESDsData(kV0s1)->Fill(mass);
+    if (v0.GetOnFlyStatus())
+       GetESDsData(kL0on)->Fill(mass);
+    else
+       GetESDsData(kL0off)->Fill(mass);
   }
 
 }