]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Correction for the connections of the trees.
authormorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 29 Apr 2008 13:57:01 +0000 (13:57 +0000)
committermorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 29 Apr 2008 13:57:01 +0000 (13:57 +0000)
ZDC/AliZDCQADataMakerSim.cxx
ZDC/AliZDCQADataMakerSim.h

index 9d3a51724aa9e04a48d09e92170d4ddf2b15abf9..1eff68a93a8461a6f7c7c85f0bc92dae02ff3601 100644 (file)
@@ -34,8 +34,8 @@ ClassImp(AliZDCQADataMakerSim)
 //____________________________________________________________________________ \r
   AliZDCQADataMakerSim::AliZDCQADataMakerSim() : \r
       AliQADataMakerSim(AliQA::GetDetName(AliQA::kZDC), "ZDC Quality Assurance Data Maker"),\r
-      fHits("AliZDCHit", 1000),\r
-      fDigits("AliZDCDigit", 1000)\r
+      fHits(0),\r
+      fDigit(0)\r
 {\r
   // ctor\r
 }\r
@@ -43,8 +43,8 @@ ClassImp(AliZDCQADataMakerSim)
 //____________________________________________________________________________ \r
 AliZDCQADataMakerSim::AliZDCQADataMakerSim(const AliZDCQADataMakerSim& qadm) :\r
     AliQADataMakerSim(), \r
-    fHits("AliZDCHit", 1000),\r
-    fDigits("AliZDCDigit", 1000) \r
+    fHits(0),\r
+    fDigit(0) \r
 {\r
   //copy ctor \r
   SetName((const char*)qadm.GetName()); \r
@@ -142,7 +142,7 @@ void AliZDCQADataMakerSim::MakeHits(TClonesArray * /*data*/)
 {\r
   //filling QA histos for Hits\r
   //\r
-    TIter next(&fHits); \r
+    TIter next(fHits); \r
     AliZDCHit * hit; \r
     while((hit = dynamic_cast<AliZDCHit *>(next()))){\r
       if(hit->GetVolume(0)==1) GetHitsData(0)->Fill(hit->GetXImpact(),hit->GetYImpact());\r
@@ -164,14 +164,14 @@ void AliZDCQADataMakerSim::MakeHits(TTree * hitTree)
   //\r
 \r
   TBranch * branch = hitTree->GetBranch("ZDC") ;\r
-  TClonesArray* pHits = &fHits;\r
-  branch->SetAddress(&pHits) ;\r
 \r
   if(!branch){\r
     AliError("ZDC branch in Hit Tree not found!"); \r
     return;\r
-  }\r
-  else{\r
+  } else {\r
+      char** add = (char**) (branch->GetAddress());\r
+      fHits = (TClonesArray*)(*add);\r
+\r
     Int_t ntracks = (Int_t) hitTree->GetEntries();\r
     //printf("\n\t *** no.track %d\n",ntracks);\r
     if (ntracks<=0) return;\r
@@ -185,7 +185,7 @@ void AliZDCQADataMakerSim::MakeHits(TTree * hitTree)
       //printf("\n");\r
       //\r
       MakeHits(); \r
-      fHits.Clear();\r
+      fHits->Clear();\r
     }    \r
   }\r
 }\r
@@ -195,67 +195,83 @@ void AliZDCQADataMakerSim::MakeDigits(TClonesArray * /*digits*/)
 {\r
   // makes data from Digits\r
   //\r
-  TIter next(&fDigits) ; \r
-  AliZDCDigit * digit ; \r
+   \r
+}\r
+//___________________________________________________________________________\r
+void AliZDCQADataMakerSim::MakeDigits(TTree *digitTree )\r
+{\r
+   // makes data from Digit Tree\r
+   TBranch * branch = digitTree->GetBranch("ZDC");\r
+   if(!branch){\r
+      AliError("ZDC branch in Digit Tree not found"); \r
+      return;\r
+   } \r
+   char** add = (char**) (branch->GetAddress());\r
+   fDigit = (AliZDCDigit*)(*add);\r
+\r
+   \r
+   Int_t ndig = digitTree->GetEntries();\r
+   \r
   //\r
   Float_t ADCSum_ZNC=0., ADCSum_ZNA=0., ADCSum_ZPC=0., ADCSum_ZPA=0.;\r
   Float_t ADCSumQ_ZNC=0., ADCSumQ_ZNA=0., ADCSumQ_ZPC=0., ADCSumQ_ZPA=0.;\r
   Float_t ADCSum_ZNC_lg=0., ADCSum_ZNA_lg=0., ADCSum_ZPC_lg=0., ADCSum_ZPA_lg=0.;\r
   Float_t ADCSumQ_ZNC_lg=0., ADCSumQ_ZNA_lg=0., ADCSumQ_ZPC_lg=0., ADCSumQ_ZPA_lg=0.;\r
   //\r
-  while((digit = dynamic_cast<AliZDCDigit *>(next()))){\r
-    if(digit->GetSector(0)==1){\r
-      ADCSum_ZNC += digit->GetADCValue(0);\r
-      ADCSum_ZNC_lg += digit->GetADCValue(1);\r
-      //\r
-      if(digit->GetSector(1)!=0){\r
-        ADCSumQ_ZNC += digit->GetADCValue(0);\r
-        ADCSumQ_ZNC_lg+= digit->GetADCValue(1);\r
+  for (Int_t i = 0; i < ndig; i++) {\r
+      digitTree->GetEntry(i);\r
+      if(fDigit->GetSector(0)==1){\r
+         ADCSum_ZNC += fDigit->GetADCValue(0);\r
+         ADCSum_ZNC_lg += fDigit->GetADCValue(1);\r
+         //\r
+         if(fDigit->GetSector(1)!=0){\r
+             ADCSumQ_ZNC += fDigit->GetADCValue(0);\r
+             ADCSumQ_ZNC_lg+= fDigit->GetADCValue(1);\r
+         }\r
+         else{\r
+             GetDigitsData(8)->Fill(fDigit->GetADCValue(0));\r
+             GetDigitsData(20)->Fill(fDigit->GetADCValue(1));\r
+         }\r
       }\r
-      else{\r
-        GetDigitsData(8)->Fill(digit->GetADCValue(0));\r
-        GetDigitsData(20)->Fill(digit->GetADCValue(1));\r
+      else if(fDigit->GetSector(0)==2){\r
+         ADCSum_ZPC += fDigit->GetADCValue(0);\r
+         ADCSum_ZPC_lg += fDigit->GetADCValue(1);\r
+         //\r
+         if(fDigit->GetSector(1)!=0){\r
+             ADCSumQ_ZPC += fDigit->GetADCValue(0);\r
+             ADCSumQ_ZPC_lg+= fDigit->GetADCValue(1);\r
+         }\r
+         else{\r
+             GetDigitsData(9)->Fill(fDigit->GetADCValue(0));\r
+             GetDigitsData(21)->Fill(fDigit->GetADCValue(1));\r
+         }\r
       }\r
-    }\r
-    else if(digit->GetSector(0)==2){\r
-      ADCSum_ZPC += digit->GetADCValue(0);\r
-      ADCSum_ZPC_lg += digit->GetADCValue(1);\r
-      //\r
-      if(digit->GetSector(1)!=0){\r
-        ADCSumQ_ZPC += digit->GetADCValue(0);\r
-        ADCSumQ_ZPC_lg+= digit->GetADCValue(1);\r
+      else if(fDigit->GetSector(0)==4){\r
+         ADCSum_ZNA += fDigit->GetADCValue(0);\r
+         ADCSum_ZNA_lg += fDigit->GetADCValue(1);\r
+         //\r
+         if(fDigit->GetSector(1)!=0){\r
+             ADCSumQ_ZNA += fDigit->GetADCValue(0);\r
+             ADCSumQ_ZNA_lg+= fDigit->GetADCValue(1);\r
+         }\r
+         else{\r
+             GetDigitsData(10)->Fill(fDigit->GetADCValue(0));\r
+             GetDigitsData(22)->Fill(fDigit->GetADCValue(1));\r
+         }\r
       }\r
-      else{\r
-        GetDigitsData(9)->Fill(digit->GetADCValue(0));\r
-        GetDigitsData(21)->Fill(digit->GetADCValue(1));\r
+      else if(fDigit->GetSector(0)==5){\r
+         ADCSum_ZPA += fDigit->GetADCValue(0);\r
+         ADCSum_ZPA_lg += fDigit->GetADCValue(1);\r
+         //\r
+         if(fDigit->GetSector(1)!=0){\r
+             ADCSumQ_ZPA += fDigit->GetADCValue(0);\r
+             ADCSumQ_ZPA_lg+= fDigit->GetADCValue(1);\r
+         }\r
+         else{\r
+             GetDigitsData(11)->Fill(fDigit->GetADCValue(0));\r
+             GetDigitsData(23)->Fill(fDigit->GetADCValue(1));\r
+         }\r
       }\r
-    }\r
-    else if(digit->GetSector(0)==4){\r
-      ADCSum_ZNA += digit->GetADCValue(0);\r
-      ADCSum_ZNA_lg += digit->GetADCValue(1);\r
-      //\r
-      if(digit->GetSector(1)!=0){\r
-        ADCSumQ_ZNA += digit->GetADCValue(0);\r
-        ADCSumQ_ZNA_lg+= digit->GetADCValue(1);\r
-      }\r
-      else{\r
-        GetDigitsData(10)->Fill(digit->GetADCValue(0));\r
-        GetDigitsData(22)->Fill(digit->GetADCValue(1));\r
-      }\r
-    }\r
-    else if(digit->GetSector(0)==5){\r
-      ADCSum_ZPA += digit->GetADCValue(0);\r
-      ADCSum_ZPA_lg += digit->GetADCValue(1);\r
-      //\r
-      if(digit->GetSector(1)!=0){\r
-        ADCSumQ_ZPA += digit->GetADCValue(0);\r
-        ADCSumQ_ZPA_lg+= digit->GetADCValue(1);\r
-      }\r
-      else{\r
-        GetDigitsData(11)->Fill(digit->GetADCValue(0));\r
-        GetDigitsData(23)->Fill(digit->GetADCValue(1));\r
-      }\r
-    }\r
   }\r
   //\r
   GetDigitsData(0)->Fill(ADCSum_ZNC);\r
@@ -277,22 +293,6 @@ void AliZDCQADataMakerSim::MakeDigits(TClonesArray * /*digits*/)
   GetDigitsData(17)->Fill(ADCSumQ_ZPC_lg);\r
   GetDigitsData(18)->Fill(ADCSumQ_ZNA_lg);\r
   GetDigitsData(19)->Fill(ADCSumQ_ZPA_lg);\r
-   \r
-}\r
-//___________________________________________________________________________\r
-void AliZDCQADataMakerSim::MakeDigits(TTree *digitTree )\r
-{\r
-   // makes data from Digit Tree\r
-   TBranch * branch = digitTree->GetBranch("ZDC");\r
-   if(!branch){\r
-      AliError("ZDC branch in Digit Tree not found"); \r
-      return;\r
-   } \r
-   TClonesArray* pDigits = &fDigits;\r
-   branch->SetAddress(&pDigits);\r
-   branch->GetEntry(0); \r
-   MakeDigits(); \r
-   fDigits.Clear();\r
 }\r
 \r
 //____________________________________________________________________________\r
index 53fff195a0de854d08bf0ae57148f20cde2a80b0..3489313df1921b28eff539d096c70e76137a2ae9 100644 (file)
@@ -10,6 +10,7 @@
 //                                                 //\r
 //////////////////////////////////////////////////////\r
 \r
+class AliZDCDigit;\r
 \r
 #include "AliQADataMakerSim.h"\r
 class AliZDCQADataMakerSim: public AliQADataMakerSim {\r
@@ -33,9 +34,8 @@ private:
   virtual void   StartOfDetectorCycle(); \r
   virtual void   EndOfDetectorCycle(AliQA::TASKINDEX_t task, TObjArray * list);\r
   //\r
-  TClonesArray   fHits;        //! Array containing ZDC hits\r
-  TClonesArray   fDigits;      //! Array containing ZDC digits\r
-  \r
+  TClonesArray   *fHits;       //! Array containing ZDC hits\r
+  AliZDCDigit    *fDigit;      //! Pointer to digit in tree  \r
   \r
   ClassDef(AliZDCQADataMakerSim,2)  // description \r
 \r