X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PHOS%2FAliPHOSQADataMakerSim.cxx;h=a30f25c6c8d402bfa8f4aa67bd26503b265c21a6;hb=9d06022c3fab839c47458e20e60972529d6bcc30;hp=db89779fc7eca913c4ecd53a5b1bcc8860b38187;hpb=eca4fa66e575b53a72c027046dc9ea60487c3240;p=u%2Fmrichter%2FAliRoot.git diff --git a/PHOS/AliPHOSQADataMakerSim.cxx b/PHOS/AliPHOSQADataMakerSim.cxx index db89779fc7e..a30f25c6c8d 100644 --- a/PHOS/AliPHOSQADataMakerSim.cxx +++ b/PHOS/AliPHOSQADataMakerSim.cxx @@ -44,22 +44,18 @@ ClassImp(AliPHOSQADataMakerSim) //____________________________________________________________________________ AliPHOSQADataMakerSim::AliPHOSQADataMakerSim() : - AliQADataMakerSim(AliQAv1::GetDetName(AliQAv1::kPHOS), "PHOS Quality Assurance Data Maker"), - fHits(0x0) + AliQADataMakerSim(AliQAv1::GetDetName(AliQAv1::kPHOS), "PHOS Quality Assurance Data Maker") { // ctor - fHits = new TClonesArray("AliPHOSHit", 1000); } //____________________________________________________________________________ AliPHOSQADataMakerSim::AliPHOSQADataMakerSim(const AliPHOSQADataMakerSim& qadm) : - AliQADataMakerSim(), - fHits(0x0) + AliQADataMakerSim() { //copy ctor SetName((const char*)qadm.GetName()) ; SetTitle((const char*)qadm.GetTitle()); - fHits = new TClonesArray("AliPHOSHit", 1000); } //__________________________________________________________________ @@ -91,7 +87,8 @@ void AliPHOSQADataMakerSim::InitHits() TH1I * h1 = new TH1I("hPhosHitsMul", "Hits multiplicity distribution in PHOS;# of Hits;Entries", 500, 0., 10000) ; h1->Sumw2() ; Add2HitsList(h1, kHitsMul, !expert, image) ; - + // + ClonePerTrigClass(AliQAv1::kHITS); // this should be the last line } //____________________________________________________________________________ @@ -106,6 +103,8 @@ void AliPHOSQADataMakerSim::InitDigits() TH1I * h1 = new TH1I("hPhosDigitsMul", "Digits multiplicity distribution in PHOS;# of Digits;Entries", 2000, 0, 10000) ; h1->Sumw2() ; Add2DigitsList(h1, kDigitsMul, !expert, image) ; + // + ClonePerTrigClass(AliQAv1::kDIGITS); // this should be the last line } //____________________________________________________________________________ @@ -120,6 +119,8 @@ void AliPHOSQADataMakerSim::InitSDigits() TH1I * h1 = new TH1I("hPhosSDigitsMul", "SDigits multiplicity distribution in PHOS;# of SDigits;Entries", 500, 0, 1000) ; h1->Sumw2() ; Add2SDigitsList(h1, kSDigitsMul, !expert, image) ; + // + ClonePerTrigClass(AliQAv1::kSDIGITS); // this should be the last line } //____________________________________________________________________________ @@ -127,15 +128,10 @@ void AliPHOSQADataMakerSim::MakeHits() { //make QA data from Hits - // Check id histograms already created for this Event Specie - if ( ! GetHitsData(kHits) ) - InitHits() ; - - - TIter next(fHits) ; + TIter next(fHitsArray) ; AliPHOSHit * hit ; while ( (hit = dynamic_cast(next())) ) { - GetHitsData(kHits)->Fill( hit->GetEnergy()) ; + FillHitsData(kHits, hit->GetEnergy()) ; } } @@ -144,70 +140,72 @@ void AliPHOSQADataMakerSim::MakeHits(TTree * hitTree) { // make QA data from Hit Tree + if (fHitsArray) + fHitsArray->Clear() ; + else + fHitsArray = new TClonesArray("AliPHOSHit", 1000); + TBranch * branch = hitTree->GetBranch("PHOS") ; - if ( ! branch ) { - AliWarning("PHOS branch in Hit Tree not found") ; - } else { - Int_t nHits = 0; - branch->SetAddress(&fHits) ; - for (Int_t ientry = 0 ; ientry < branch->GetEntries() ; ientry++) { - branch->GetEntry(ientry) ; - nHits += fHits->GetEntriesFast(); - MakeHits() ; - fHits->Clear(); - } - GetHitsData(1)->Fill(nHits) ; - } + if ( ! branch ) { AliWarning("PHOS branch in Hit Tree not found"); return;} + // + Int_t nHits = 0; + branch->SetAddress(&fHitsArray) ; + for (Int_t ientry = 0 ; ientry < branch->GetEntries() ; ientry++) { + branch->GetEntry(ientry) ; + nHits += fHitsArray->GetEntriesFast(); + MakeHits() ; + fHitsArray->Clear(); + } + FillHitsData(1,nHits) ; + // + IncEvCountCycleHits(); + IncEvCountTotalHits(); + // } //____________________________________________________________________________ -void AliPHOSQADataMakerSim::MakeDigits(TClonesArray * digits) +void AliPHOSQADataMakerSim::MakeDigits() { // makes data from Digits - - // Check id histograms already created for this Event Specie - if ( ! GetDigitsData(kDigits) ) - InitDigits() ; - - GetDigitsData(1)->Fill(digits->GetEntriesFast()) ; - TIter next(digits) ; - AliPHOSDigit * digit ; - while ( (digit = dynamic_cast(next())) ) { - GetDigitsData(kDigits)->Fill( digit->GetEnergy()) ; - } + + FillDigitsData(1,fDigitsArray->GetEntriesFast()) ; + TIter next(fDigitsArray) ; + AliPHOSDigit * digit ; + while ( (digit = dynamic_cast(next())) ) { + FillDigitsData(kDigits, digit->GetEnergy()) ; + } } //____________________________________________________________________________ void AliPHOSQADataMakerSim::MakeDigits(TTree * digitTree) { - // makes data from Digit Tree - TClonesArray * digits = new TClonesArray("AliPHOSDigit", 1000) ; - - TBranch * branch = digitTree->GetBranch("PHOS") ; - if ( ! branch ) { - AliWarning("PHOS branch in Digit Tree not found") ; - } else { - branch->SetAddress(&digits) ; - branch->GetEntry(0) ; - MakeDigits(digits) ; - } + // makes data from Digit Tree + if (fDigitsArray) + fDigitsArray->Clear() ; + else + fDigitsArray = new TClonesArray("AliPHOSDigit", 1000) ; + + TBranch * branch = digitTree->GetBranch("PHOS") ; + if ( ! branch ) {AliWarning("PHOS branch in Digit Tree not found"); return;} + branch->SetAddress(&fDigitsArray) ; + branch->GetEntry(0) ; + MakeDigits() ; + // + IncEvCountCycleDigits(); + IncEvCountTotalDigits(); + // } //____________________________________________________________________________ -void AliPHOSQADataMakerSim::MakeSDigits(TClonesArray * sdigits) +void AliPHOSQADataMakerSim::MakeSDigits() { // makes data from SDigits - - - // Check id histograms already created for this Event Specie - if ( ! GetSDigitsData(kSDigits) ) - InitSDigits() ; - GetSDigitsData(1)->Fill(sdigits->GetEntriesFast()) ; - TIter next(sdigits) ; + FillSDigitsData(1,fSDigitsArray->GetEntriesFast()) ; + TIter next(fSDigitsArray) ; AliPHOSDigit * sdigit ; while ( (sdigit = dynamic_cast(next())) ) { - GetSDigitsData(kSDigits)->Fill( sdigit->GetEnergy()) ; + FillSDigitsData(kSDigits, sdigit->GetEnergy()) ; } } @@ -215,16 +213,20 @@ void AliPHOSQADataMakerSim::MakeSDigits(TClonesArray * sdigits) void AliPHOSQADataMakerSim::MakeSDigits(TTree * sdigitTree) { // makes data from SDigit Tree - TClonesArray * sdigits = new TClonesArray("AliPHOSDigit", 1000) ; - - TBranch * branch = sdigitTree->GetBranch("PHOS") ; - if ( ! branch ) { - AliWarning("PHOS branch in SDigit Tree not found") ; - } else { - branch->SetAddress(&sdigits) ; - branch->GetEntry(0) ; - MakeSDigits(sdigits) ; - } + if (fSDigitsArray) + fSDigitsArray->Clear() ; + else + fSDigitsArray = new TClonesArray("AliPHOSDigit", 1000) ; + + TBranch * branch = sdigitTree->GetBranch("PHOS") ; + if ( ! branch ) {AliWarning("PHOS branch in SDigit Tree not found"); return;} + branch->SetAddress(&fSDigitsArray) ; + branch->GetEntry(0) ; + MakeSDigits() ; + // + IncEvCountCycleSDigits(); + IncEvCountTotalSDigits(); + // } //____________________________________________________________________________