X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TOF%2FAliTOFQADataMakerSim.cxx;h=9c49b7d3b568431723e94534154987dc063c50e9;hb=99f4c25490bc764e5ec6ff9a63b42b6adddfb6ad;hp=bd7896ad771d2890646a5e82a998e0e623f7be9b;hpb=57acd2d2f484e474d764cf49c17bf8a0af5bdd5e;p=u%2Fmrichter%2FAliRoot.git diff --git a/TOF/AliTOFQADataMakerSim.cxx b/TOF/AliTOFQADataMakerSim.cxx index bd7896ad771..9c49b7d3b56 100644 --- a/TOF/AliTOFQADataMakerSim.cxx +++ b/TOF/AliTOFQADataMakerSim.cxx @@ -43,7 +43,7 @@ ClassImp(AliTOFQADataMakerSim) //____________________________________________________________________________ AliTOFQADataMakerSim::AliTOFQADataMakerSim() : - AliQADataMakerSim(AliQA::GetDetName(AliQA::kTOF), "TOF Quality Assurance Data Maker") + AliQADataMakerSim(AliQAv1::GetDetName(AliQAv1::kTOF), "TOF Quality Assurance Data Maker") { // // ctor @@ -79,23 +79,26 @@ void AliTOFQADataMakerSim::InitHits() // create Hits histograms in Hits subdir // - Bool_t expert = kFALSE; - - TH1F * h0 = new TH1F("hTOFHits", "Number of TOF Hits ",301, -1.02, 5.) ; + const Bool_t expert = kTRUE ; + const Bool_t image = kTRUE ; + + TH1F * h0 = new TH1F("hTOFHits", "Number of TOF Hits per event;TOF hit number;Counts ",101, -1., 100.) ; h0->Sumw2() ; - Add2HitsList(h0, 0, expert) ; + Add2HitsList(h0, 0, !expert, image) ; - TH1F * h1 = new TH1F("hTOFHitsTime", "Hits Time Spectrum in TOF (ns)", 2000, 0., 200) ; + TH1F * h1 = new TH1F("hTOFHitsTime", "Hits Time Spectrum in TOF (ns);Simulated TOF time [ns];Counts", 25000, 0., 610.) ; h1->Sumw2() ; - Add2HitsList(h1, 1, expert) ; + Add2HitsList(h1, 1, !expert, image) ; - TH1F * h2 = new TH1F("hTOFHitsLength", "Length Spectrum in TOF (cm)", 500, 0., 500) ; + TH1F * h2 = new TH1F("hTOFHitsLength", "Length Spectrum in TOF (cm);Track length from primary vertex till hit TOF pad [cm];Counts", 700, 0., 700) ; h2->Sumw2() ; - Add2HitsList(h2, 2, expert) ; + Add2HitsList(h2, 2, !expert, image) ; - TH2F * h3 = new TH2F("hTOFHitsClusMap","Hits vs TOF eta-phi",183, -0.5, 182.5,865,-0.5,864.5) ; + TH2F * h3 = new TH2F("hTOFHitsClusMap","Hits vs TOF eta-phi;2*strip+padz (eta);48*sector+padx (phi)",183, -0.5, 182.5,865,-0.5,864.5) ; h3->Sumw2() ; - Add2HitsList(h3, 3, expert) ; + h3->GetYaxis()->SetTitleOffset(1.15); + Add2HitsList(h3, 3, !expert, image) ; + } //____________________________________________________________________________ @@ -105,22 +108,25 @@ void AliTOFQADataMakerSim::InitDigits() // create Digits histograms in Digits subdir // - Bool_t expert = kFALSE; - - TH1F * h0 = new TH1F("hTOFDigits", "Number of TOF Digits ",301, -1.02, 5.) ; h0->Sumw2() ; - Add2DigitsList(h0, 0, expert) ; + const Bool_t expert = kTRUE ; + const Bool_t image = kTRUE ; + + TH1F * h0 = new TH1F("hTOFDigits", "Number of TOF Digit per event;TOF digit number;Counts ",101, -1., 100.) ; + h0->Sumw2() ; + Add2DigitsList(h0, 0, !expert, image) ; - TH1F * h1 = new TH1F("hTOFDigitsTime", "Digits Time Spectrum in TOF (ns)", 2000, 0., 200) ; + TH1F * h1 = new TH1F("hTOFDigitsTime", "Digits Time Spectrum in TOF (ns);Digitized TOF time [ns];Counts", 25000, 0., 610.) ; h1->Sumw2() ; - Add2DigitsList(h1, 1, expert) ; + Add2DigitsList(h1, 1, !expert, image) ; - TH1F * h2 = new TH1F("hTOFDigitsToT", "Digits ToT Spectrum in TOF (ns)", 500, 0., 50) ; + TH1F * h2 = new TH1F("hTOFDigitsToT", "Digits ToT Spectrum in TOF (ns);Digitized ToT time [ns];Counts", 1000, 0., 48.8) ; h2->Sumw2() ; - Add2DigitsList(h2, 2, expert) ; + Add2DigitsList(h2, 2, !expert, image) ; - TH2F * h3 = new TH2F("hTOFDigitsClusMap","Digits vs TOF eta-phi",183, -0.5, 182.5,865,-0.5,864.5) ; + TH2F * h3 = new TH2F("hTOFDigitsClusMap","Digits vs TOF eta-phi;2*strip+padz (eta);48*sector+padx (phi)",183, -0.5, 182.5,865,-0.5,864.5) ; h3->Sumw2() ; - Add2DigitsList(h3, 3, expert) ; + h3->GetYaxis()->SetTitleOffset(1.15); + Add2DigitsList(h3, 3, !expert, image) ; } @@ -131,23 +137,26 @@ void AliTOFQADataMakerSim::InitSDigits() // create SDigits histograms in SDigits subdir // - Bool_t expert = kFALSE; - - TH1F * h0 = new TH1F("hTOFSDigits", "Number of TOF SDigits ",301, -1.02, 5.) ; h0->Sumw2() ; - Add2SDigitsList(h0, 0, expert) ; + const Bool_t expert = kTRUE ; + const Bool_t image = kTRUE ; + + TH1F * h0 = new TH1F("hTOFSDigits", "Number of TOF SDigits per event;TOF sdigit number;Counts ",101, -1., 100.) ; + h0->Sumw2() ; + Add2SDigitsList(h0, 0, !expert, image) ; - TH1F * h1 = new TH1F("hTOFSDigitsTime", "SDigits Time Spectrum in TOF (ns)", 2000, 0., 200) ; + TH1F * h1 = new TH1F("hTOFSDigitsTime", "SDigits Time Spectrum in TOF (ns);SDigitized TOF time [ns];Counts", 25000, 0., 610) ; h1->Sumw2() ; - Add2SDigitsList(h1, 1, expert) ; + Add2SDigitsList(h1, 1, !expert, image) ; - TH2F * h2 = new TH2F("hTOFSDigitsClusMap","SDigits vs TOF eta-phi",183, -0.5, 182.5,865,-0.5,864.5) ; + TH2F * h2 = new TH2F("hTOFSDigitsClusMap","SDigits vs TOF eta-phi;2*strip+padz (eta);48*sector+padx (phi)",183, -0.5, 182.5,865,-0.5,864.5) ; h2->Sumw2() ; - Add2SDigitsList(h2, 2, expert) ; + h2->GetYaxis()->SetTitleOffset(1.15); + Add2SDigitsList(h2, 2, !expert, image) ; } //____________________________________________________________________________ -void AliTOFQADataMakerSim::MakeHits(TClonesArray * hits) +void AliTOFQADataMakerSim::MakeHits() { // //make QA data from Hits @@ -156,13 +165,13 @@ void AliTOFQADataMakerSim::MakeHits(TClonesArray * hits) Int_t in[5]; Int_t out[5]; - Int_t nentries=hits->GetEntriesFast(); + Int_t nentries= fHitsArray->GetEntriesFast(); if(nentries<=0) { GetHitsData(0)->Fill(-1.) ; } else{ - GetHitsData(0)->Fill(TMath::Log10(nentries)) ; + GetHitsData(0)->Fill(nentries) ; } - TIter next(hits) ; + TIter next(fHitsArray) ; AliTOFhitT0 * hit ; while ( (hit = dynamic_cast(next())) ) { @@ -177,7 +186,6 @@ void AliTOFQADataMakerSim::MakeHits(TClonesArray * hits) GetMapIndeces(in,out); GetHitsData(3)->Fill( out[0],out[1]) ;//hit map } - } @@ -189,7 +197,7 @@ void AliTOFQADataMakerSim::MakeHits(TTree * hitTree) // if(!hitTree){ AliError("can't get the tree with TOF hits !"); - return; + return; } TBranch * branch = hitTree->GetBranch("TOF") ; @@ -199,46 +207,39 @@ void AliTOFQADataMakerSim::MakeHits(TTree * hitTree) return; } - static TClonesArray statichits("AliTOFhitT0", 1000); - statichits.Clear(); - TClonesArray *hits = &statichits; - static TClonesArray staticdummy("AliTOFhitT0", 1000); - staticdummy.Clear(); - TClonesArray *dummy = &staticdummy; - branch->SetAddress(&dummy); - Int_t index = 0 ; + if (fHitsArray) + fHitsArray->Clear() ; + else + fHitsArray = new TClonesArray("AliTOFhitT0", 1000) ; + + branch->SetAddress(&fHitsArray); for (Int_t ientry = 0 ; ientry < branch->GetEntries() ; ientry++) { branch->GetEntry(ientry) ; - for (Int_t ihit = 0 ; ihit < dummy->GetEntries() ; ihit++) { - AliTOFhitT0 * hit = dynamic_cast (dummy->At(ihit)) ; - new((*hits)[index]) AliTOFhitT0(*hit) ; - index++ ; - } + MakeHits() ; + fHitsArray->Clear() ; } - - MakeHits(hits) ; - } //____________________________________________________________________________ -void AliTOFQADataMakerSim::MakeDigits(TClonesArray * digits) +void AliTOFQADataMakerSim::MakeDigits() { // // makes data from Digits // + Double_t tdc2ns=AliTOFGeometry::TdcBinWidth()*1E-3; Double_t tot2ns=AliTOFGeometry::ToTBinWidth()*1E-3; Int_t in[5]; Int_t out[5]; - Int_t nentries=digits->GetEntriesFast(); + Int_t nentries=fDigitsArray->GetEntriesFast(); if(nentries<=0){ GetDigitsData(0)->Fill(-1.) ; }else{ - GetDigitsData(0)->Fill(TMath::Log10(nentries)) ; + GetDigitsData(0)->Fill(nentries) ; } - TIter next(digits) ; + TIter next(fDigitsArray) ; AliTOFdigit * digit ; while ( (digit = dynamic_cast(next())) ) { @@ -263,37 +264,40 @@ void AliTOFQADataMakerSim::MakeDigits(TTree * digitTree) // // makes data from Digit Tree // - TClonesArray * digits = new TClonesArray("AliTOFdigit", 1000) ; + if (fDigitsArray) + fDigitsArray->Clear() ; + else + fDigitsArray = new TClonesArray("AliTOFdigit", 1000) ; TBranch * branch = digitTree->GetBranch("TOF") ; if ( ! branch ) { AliError("TOF branch in Digit Tree not found") ; return; } - branch->SetAddress(&digits) ; + branch->SetAddress(&fDigitsArray) ; branch->GetEntry(0) ; - MakeDigits(digits) ; + MakeDigits() ; } //____________________________________________________________________________ -void AliTOFQADataMakerSim::MakeSDigits(TClonesArray * sdigits) +void AliTOFQADataMakerSim::MakeSDigits() { // // makes data from SDigits // - + Double_t tdc2ns=AliTOFGeometry::TdcBinWidth()*1E-3; Int_t in[5]; Int_t out[5]; - Int_t nentries=sdigits->GetEntriesFast(); + Int_t nentries=fSDigitsArray->GetEntriesFast(); if(nentries<=0){ GetSDigitsData(0)->Fill(-1.) ; }else{ - GetSDigitsData(0)->Fill(TMath::Log10(nentries)) ; + GetSDigitsData(0)->Fill(nentries) ; } - TIter next(sdigits) ; + TIter next(fSDigitsArray) ; AliTOFSDigit * sdigit ; while ( (sdigit = dynamic_cast(next())) ) { @@ -317,16 +321,19 @@ void AliTOFQADataMakerSim::MakeSDigits(TTree * sdigitTree) // // makes data from SDigit Tree // - TClonesArray * sdigits = new TClonesArray("AliTOFSDigit", 1000) ; + if (fSDigitsArray) + fSDigitsArray->Clear() ; + else + fSDigitsArray = new TClonesArray("AliTOFSDigit", 1000) ; TBranch * branch = sdigitTree->GetBranch("TOF") ; if ( ! branch ) { AliError("TOF branch in SDigit Tree not found") ; return; } - branch->SetAddress(&sdigits) ; + branch->SetAddress(&fSDigitsArray) ; branch->GetEntry(0) ; - MakeSDigits(sdigits) ; + MakeSDigits() ; } //____________________________________________________________________________ @@ -338,12 +345,12 @@ void AliTOFQADataMakerSim::StartOfDetectorCycle() } //____________________________________________________________________________ -void AliTOFQADataMakerSim::EndOfDetectorCycle(AliQA::TASKINDEX_t task, TObjArray ** list) +void AliTOFQADataMakerSim::EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray ** list) { //Detector specific actions at end of cycle // do the QA checking - AliQAChecker::Instance()->Run(AliQA::kTOF, task, list) ; + AliQAChecker::Instance()->Run(AliQAv1::kTOF, task, list) ; } //____________________________________________________________________________ void AliTOFQADataMakerSim::GetMapIndeces(Int_t* in , Int_t* out)