//____________________________________________________________________________ \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
//____________________________________________________________________________ \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
{\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
//\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
//printf("\n");\r
//\r
MakeHits(); \r
- fHits.Clear();\r
+ fHits->Clear();\r
} \r
}\r
}\r
{\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
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