}\r
\r
//____________________________________________________________________________ \r
-void AliITSQASDDDataMakerSim::InitDigits()\r
+Int_t AliITSQASDDDataMakerSim::InitDigits()\r
{ \r
// Initialization for DIGIT data - SDD - \r
const Bool_t expert = kTRUE ; \r
const Bool_t image = kTRUE ;\r
- \r
- fGenOffsetD = (fAliITSQADataMakerSim->fDigitsQAList[AliRecoParam::kDefault])->GetEntries();\r
+ Int_t rv = 0 ; \r
+ //fGenOffsetD = (fAliITSQADataMakerSim->fDigitsQAList[AliRecoParam::kDefault])->GetEntries();\r
//fSDDhTask must be incremented by one unit every time a histogram is ADDED to the QA List\r
TH1F* h0=new TH1F("SDD DIGITS Module Pattern","SDD DIGITS Module Pattern",260,239.5,499.5); //hmod\r
h0->GetXaxis()->SetTitle("SDD Module Number");\r
h0->GetYaxis()->SetTitle("# DIGITS");\r
- fAliITSQADataMakerSim->Add2DigitsList(h0,fGenOffsetD, !expert, image);\r
+ rv = fAliITSQADataMakerSim->Add2DigitsList(h0,fGenOffsetD, !expert, image);\r
fSDDhDTask ++;\r
TH1F* h1=new TH1F("SDD Anode Distribution","SDD DIGITS Anode Distribution",512,-0.5,511.5); //hanocc\r
h1->GetXaxis()->SetTitle("Anode Number");\r
h1->GetYaxis()->SetTitle("# DIGITS");\r
- fAliITSQADataMakerSim->Add2DigitsList(h1,1+fGenOffsetD, !expert, image);\r
+ rv = fAliITSQADataMakerSim->Add2DigitsList(h1,1+fGenOffsetD, !expert, image);\r
fSDDhDTask ++;\r
TH1F* h2=new TH1F("SDD Tbin Distribution","SDD DIGITS Tbin Distribution",256,-0.5,255.5); //htbocc\r
h2->GetXaxis()->SetTitle("Tbin Number");\r
h2->GetYaxis()->SetTitle("# DIGITS");\r
- fAliITSQADataMakerSim->Add2DigitsList(h2,2+fGenOffsetD, !expert, image);\r
+ rv = fAliITSQADataMakerSim->Add2DigitsList(h2,2+fGenOffsetD, !expert, image);\r
fSDDhDTask ++;\r
TH1F* h3=new TH1F("SDD ADC Counts Distribution","SDD DIGITS ADC Counts Distribution",200,0.,1024.); //hsig\r
h3->GetXaxis()->SetTitle("ADC Value");\r
h3->GetYaxis()->SetTitle("# DIGITS");\r
- fAliITSQADataMakerSim->Add2DigitsList(h3,3+fGenOffsetD, !expert, image);\r
+ rv = fAliITSQADataMakerSim->Add2DigitsList(h3,3+fGenOffsetD, !expert, image);\r
fSDDhDTask ++;\r
AliDebug(AliQAv1::GetQADebugLevel(),Form("%d SDD Digits histograms booked\n",fSDDhDTask));\r
+ return rv ; \r
}\r
\r
//____________________________________________________________________________\r
-void AliITSQASDDDataMakerSim::MakeDigits(TTree * digits)\r
+Int_t AliITSQASDDDataMakerSim::MakeDigits(TTree * digits)\r
{ \r
\r
// Fill QA for DIGIT - SDD -\r
+ Int_t rv = 0 ; \r
+ // Check id histograms already created for this Event Specie\r
+ if ( ! fAliITSQADataMakerSim->GetDigitsData(fGenOffsetD) )\r
+ rv = InitDigits() ;\r
+ \r
AliITS *fITS = (AliITS*)gAlice->GetModule("ITS");\r
fITS->SetTreeAddress();\r
TClonesArray *iITSdigits = fITS->DigitsAddress(1);\r
fAliITSQADataMakerSim->GetDigitsData(3+fGenOffsetD)->Fill(sig);\r
}\r
}\r
+ return rv ; \r
}\r
\r
//____________________________________________________________________________ \r
-void AliITSQASDDDataMakerSim::InitSDigits()\r
+Int_t AliITSQASDDDataMakerSim::InitSDigits()\r
{ \r
// Initialization for SDIGIT data - SDD -\r
const Bool_t expert = kTRUE ; \r
const Bool_t image = kTRUE ;\r
- \r
- fGenOffsetS = (fAliITSQADataMakerSim->fSDigitsQAList[AliRecoParam::kDefault])->GetEntries();\r
+ Int_t rv = 0 ; \r
+ //fGenOffsetS = (fAliITSQADataMakerSim->fSDigitsQAList[AliRecoParam::kDefault])->GetEntries();\r
//fSDDhTask must be incremented by one unit every time a histogram is ADDED to the QA List\r
TH1F* h0=new TH1F("SDD SDIGITS Module Pattern","SDIGITS SDD Module Pattern",260,239.5,499.5); //hmod\r
h0->GetXaxis()->SetTitle("SDD Module Number");\r
h0->GetYaxis()->SetTitle("# SDIGITS");\r
- fAliITSQADataMakerSim->Add2SDigitsList(h0,fGenOffsetS, !expert, image);\r
+ rv = fAliITSQADataMakerSim->Add2SDigitsList(h0,fGenOffsetS, !expert, image);\r
fSDDhSTask ++;\r
TH1F* h1=new TH1F("SDD Anode Distribution","SDIGITS SDD Anode Distribution",512,-0.5,511.5); //hanocc\r
h1->GetXaxis()->SetTitle("Anode Number");\r
h1->GetYaxis()->SetTitle("# SDIGITS");\r
- fAliITSQADataMakerSim->Add2SDigitsList(h1,1+fGenOffsetS, !expert, image);\r
+ rv = fAliITSQADataMakerSim->Add2SDigitsList(h1,1+fGenOffsetS, !expert, image);\r
fSDDhSTask ++;\r
TH1F* h2=new TH1F("SDD Tbin Distribution","SDIGITS SDD Tbin Distribution",256,-0.5,255.5); //htbocc\r
h2->GetXaxis()->SetTitle("Tbin Number");\r
h2->GetYaxis()->SetTitle("# SDIGITS");\r
- fAliITSQADataMakerSim->Add2SDigitsList(h2,2+fGenOffsetS);\r
+ rv = fAliITSQADataMakerSim->Add2SDigitsList(h2,2+fGenOffsetS);\r
fSDDhSTask ++;\r
TH1F* h3=new TH1F("SDD ADC Counts Distribution","SDIGITS SDD ADC Counts Distribution",200,0.,1024.); //hsig\r
h3->GetXaxis()->SetTitle("ADC Value");\r
h3->GetYaxis()->SetTitle("# SDIGITS");\r
- fAliITSQADataMakerSim->Add2SDigitsList(h3,3+fGenOffsetS, !expert, image);\r
+ rv = fAliITSQADataMakerSim->Add2SDigitsList(h3,3+fGenOffsetS, !expert, image);\r
fSDDhSTask ++;\r
\r
AliDebug(AliQAv1::GetQADebugLevel(),Form("%d SDD SDigits histograms booked\n",fSDDhSTask));\r
+ return rv ; \r
}\r
\r
//____________________________________________________________________________\r
-void AliITSQASDDDataMakerSim::MakeSDigits(TTree * sdigits)\r
+Int_t AliITSQASDDDataMakerSim::MakeSDigits(TTree * sdigits)\r
{ \r
// Fill QA for SDIGIT - SDD -\r
-\r
- AliITSsegmentationSDD* seg = new AliITSsegmentationSDD();\r
+ Int_t rv = 0 ; \r
+ // Check id histograms already created for this Event Specie\r
+ if ( ! fAliITSQADataMakerSim->GetSDigitsData(fGenOffsetS) )\r
+ rv = InitSDigits() ;\r
+ \r
+ AliITSsegmentationSDD* seg = new AliITSsegmentationSDD();\r
Int_t nan=seg->Npz();\r
Int_t ntb=seg->Npx();\r
Int_t scaleSize=4;\r
}\r
delete sdig;\r
}\r
+ return rv ; \r
}\r
\r
//____________________________________________________________________________ \r
-void AliITSQASDDDataMakerSim::InitHits()\r
+Int_t AliITSQASDDDataMakerSim::InitHits()\r
{ \r
\r
// Initialization for HITS data - SDD -\r
const Bool_t expert = kTRUE ; \r
const Bool_t image = kTRUE ;\r
- \r
- fGenOffsetH = (fAliITSQADataMakerSim->fHitsQAList[AliRecoParam::kDefault])->GetEntries();\r
+ Int_t rv = 0 ; \r
+\r
+ //fGenOffsetH = (fAliITSQADataMakerSim->fHitsQAList[AliRecoParam::kDefault])->GetEntries();\r
//fSDDhTask must be incremented by one unit every time a histogram is ADDED to the QA List\r
//printf("AliITSQASDDDataMakerSim::InitHits called \n");\r
TH1F *h0=new TH1F("SDD HITS Module Pattern","SDD HITS Module Pattern",260,239.5,499.5); \r
h0->GetXaxis()->SetTitle("SDD Module Number");\r
h0->GetYaxis()->SetTitle("# HITS");\r
- fAliITSQADataMakerSim->Add2HitsList(h0,fGenOffsetH, !expert, image);\r
+ rv = fAliITSQADataMakerSim->Add2HitsList(h0,fGenOffsetH, !expert, image);\r
fSDDhHTask ++;\r
TH1F *h1=new TH1F("SDD HIT lenght along local Y Coord","SDD HIT lenght along local Y Coord",200,0.,350.);\r
h1->GetXaxis()->SetTitle("HIT lenght (um)");\r
h1->GetYaxis()->SetTitle("# HITS");\r
- fAliITSQADataMakerSim->Add2HitsList(h1,1+fGenOffsetH, !expert, image);\r
+ rv = fAliITSQADataMakerSim->Add2HitsList(h1,1+fGenOffsetH, !expert, image);\r
fSDDhHTask ++;\r
TH1F *h2=new TH1F("SDD HIT lenght along local Y Coord - Zoom","SDD HIT lenght along local Y Coord - Zoom",200,250.,350.);\r
h2->GetXaxis()->SetTitle("HIT lenght (um)");\r
h2->GetYaxis()->SetTitle("# HITS");\r
- fAliITSQADataMakerSim->Add2HitsList(h2,2+fGenOffsetH, !expert, image);\r
+ rv = fAliITSQADataMakerSim->Add2HitsList(h2,2+fGenOffsetH, !expert, image);\r
fSDDhHTask ++;\r
TH1F *h3=new TH1F("SDD Deposited Energy Distribution (loc Y > 200um)","SDD HITS Deposited Energy Distribution (loc Y > 200um)",200,0.,350.);\r
h3->GetXaxis()->SetTitle("ADC counts ");\r
h3->GetYaxis()->SetTitle("# HITS");\r
- fAliITSQADataMakerSim->Add2HitsList(h3,3+fGenOffsetH, !expert, image);\r
+ rv = fAliITSQADataMakerSim->Add2HitsList(h3,3+fGenOffsetH, !expert, image);\r
fSDDhHTask ++;\r
AliDebug(AliQAv1::GetQADebugLevel(),Form("%d SDD Hits histograms booked\n",fSDDhHTask));\r
+ return rv ; \r
}\r
\r
//____________________________________________________________________________\r
-void AliITSQASDDDataMakerSim::MakeHits(TTree * hits)\r
+Int_t AliITSQASDDDataMakerSim::MakeHits(TTree * hits)\r
{ \r
// Fill QA for HITS - SDD -\r
-\r
- AliITS *fITS = (AliITS*)gAlice->GetModule("ITS");\r
+ Int_t rv = 0 ; \r
+ // Check id histograms already created for this Event Specie\r
+ if ( ! fAliITSQADataMakerSim->GetHitsData(fGenOffsetH) )\r
+ rv = InitHits() ;\r
+ \r
+ AliITS *fITS = (AliITS*)gAlice->GetModule("ITS");\r
fITS->SetTreeAddress();\r
Int_t nmodules;\r
if(!(fITS->InitModules(-1,nmodules))){\r
AliError("ITS geometry not available - nothing done");\r
- return;\r
+ return rv;\r
}\r
\r
fITS->FillModules(hits,0);\r
fAliITSQADataMakerSim->GetHitsData(1+fGenOffsetH)->Fill(dyloc);\r
Float_t edep=hit->GetIonization()*1000000;\r
if(dyloc>200.){ \r
- fAliITSQADataMakerSim->GetHitsData(2+fGenOffsetH)->Fill(edep);\r
- fAliITSQADataMakerSim->GetHitsData(3+fGenOffsetH)->Fill(dyloc);\r
+ fAliITSQADataMakerSim->GetHitsData(2+fGenOffsetH)->Fill(edep);\r
+ fAliITSQADataMakerSim->GetHitsData(3+fGenOffsetH)->Fill(dyloc);\r
}\r
}\r
}\r
+ return rv ; \r
}\r
\r
//_______________________________________________________________\r
return offset;\r
}\r
\r
+//____________________________________________________________________________ \r
+void AliITSQASDDDataMakerSim::SetOffset(AliQAv1::TASKINDEX_t task, Int_t offset){\r
+ // Returns histogram offset according to the specified task\r
+ if( task == AliQAv1::kHITS){\r
+ fGenOffsetH = offset; \r
+ }\r
+ else if( task == AliQAv1::kSDIGITS) {\r
+ fGenOffsetS = offset; \r
+ }\r
+ else if( task == AliQAv1::kDIGITS) {\r
+ fGenOffsetD = offset; \r
+ }\r
+ else {\r
+ AliInfo("No task has been selected. TaskHisto set to zero.\n");\r
+ }\r
+}\r
\r
//_______________________________________________________________\r
\r