AliACORDEQAChecker() : AliQACheckerBase("ACORDE","ACORDE Quality Assurance Data Checker") {;} // constructor
// AliACORDEQAChecker(const AliACORDEQAChecker& qac) : AliQACheckerBase(qac.GetName(), qac.GetTitle()) {;} // constructor
virtual ~AliACORDEQAChecker() {;} // destructor
-using AliQACheckerBase::Check;
- virtual Double_t * Check(AliQAv1::ALITASK_t, TObjArray **, AliDetectorRecoParam * /*recoParam*/) ;
+
+ virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list, AliDetectorRecoParam * recoParam) ;
Double_t CheckAcordeRefHits(TObjArray *AcordeList, TObjArray *AcordeRef) const;
ClassImp(AliHMPIDQAChecker)
//_________________________________________________________________
-Double_t * AliHMPIDQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list)
+Double_t * AliHMPIDQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list, AliDetectorRecoParam * /*recoParam*/)
{
//
// Main check function: Depending on the TASK, different checks are applied
AliHMPIDQAChecker(const AliHMPIDQAChecker& qac) : AliQACheckerBase(qac.GetName(), qac.GetTitle()) {;} // cpy ctor
virtual ~AliHMPIDQAChecker() {;} // dtor
- virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list) ;
+ virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list, AliDetectorRecoParam * recoParam) ;
Double_t CheckEntries(TObjArray * list) const ;
Double_t CheckRec(TObjArray *listrec, TObjArray *listref) const ;
}
//____________________________________________________________________________
-Double_t * AliITSQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list)
+Double_t * AliITSQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list, AliDetectorRecoParam * /*recoParam*/)
{
// Super-basic check on the QA histograms on the input list:
virtual void SetDetTaskOffset(Int_t subdet=0,Int_t offset=0);
protected:
- virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list ) ;
+ virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list, AliDetectorRecoParam * recoParam) ;
virtual void SetSPDTaskOffset(Int_t SPDOffset){fSPDOffset = SPDOffset;} ;
virtual void SetSDDTaskOffset(Int_t SDDOffset){fSDDOffset = SDDOffset;} ;
virtual void SetSSDTaskOffset(Int_t SSDOffset){fSSDOffset = SSDOffset;} ;
//______________________________________________________________________________
Double_t *
-AliMUONQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list)
+AliMUONQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list, AliDetectorRecoParam * /*recoParam*/)
{
/// Check objects in list
protected:
- using AliQACheckerBase::Check;
+ //using AliQACheckerBase::Check;
- virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list) ;
+ virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list, AliDetectorRecoParam * recoParam) ;
virtual void SetQA(AliQAv1::ALITASK_t index, Double_t * value) const ;
Double_t * CheckRaws(TObjArray** list);
if (!fClusterStore)
{
- AliCodeTimerAuto("ClusterStore creation",0);
+ AliCodeTimerAuto("ClusterStore creation",1);
fClusterStore = AliMUONVClusterStore::Create(*clustersTree);
if (!fClusterStore)
{
case AliPWG0Helper::kTPCITS:
etaRange = 1.0; break;
case AliPWG0Helper::kSPD: etaRange = 1.0; break;
+ default: break;
}
if (!fReadMC) // Processing of ESD information
\r
AliLRCProcess& AliLRCProcess::operator = (const AliLRCProcess& lrc) {\r
//assignment operator\r
- fIsEventOpend = lrc.fIsEventOpend;\r
- fIsOnline = lrc.fIsOnline;\r
- fDisplayInitOnDemandWarning = lrc.fDisplayInitOnDemandWarning;\r
- fEventCount = lrc.fEventCount;\r
- fStartForwardETA = lrc.fStartForwardETA;\r
- fEndForwardETA = lrc.fEndForwardETA;\r
- fStartBakwardETA = lrc.fStartBakwardETA;\r
- fEndBakwardETA = lrc.fEndBakwardETA;\r
- fHiPt = lrc.fHiPt;\r
- fLoPt = lrc.fLoPt;\r
- fHiMult = lrc.fHiMult;\r
- fLoMult = lrc.fLoMult;\r
- fMultBins = lrc.fMultBins;\r
- fPtBins = lrc.fPtBins;\r
- fSumPtFw = lrc.fSumPtFw;\r
- fSumPtBw = lrc.fSumPtBw;\r
- fNchFw = lrc.fNchFw;\r
- fNchBw = lrc.fNchBw;\r
- fOutList = lrc.fOutList;\r
- fShortDef = lrc.fShortDef;\r
- fHistPt = lrc.fHistPt;\r
- fHistEta = lrc.fHistEta;\r
- fHistNN = lrc.fHistNN;\r
- fHistPtN = lrc.fHistPtN;\r
- fHistPtPt = lrc.fHistPtPt;\r
- fProfNberr = lrc.fProfNberr;\r
- fProfdPtB = lrc.fProfdPtB;\r
- fProfTestLRC = lrc.fProfTestLRC;\r
- fHistPtForward = lrc.fHistPtForward;\r
- fHistEtaForward = lrc.fHistEtaForward;\r
- fHistNchForward = lrc.fHistNchForward;\r
- fHistPtBakward = lrc.fHistPtBakward;\r
- fHistEtaBakward = lrc.fHistEtaBakward;\r
- fHistNchBakward = lrc.fHistNchBakward;\r
+ if(this != &lrc) {\r
+ TObject::operator=(lrc);\r
+ fIsEventOpend = lrc.fIsEventOpend;\r
+ fIsOnline = lrc.fIsOnline;\r
+ fDisplayInitOnDemandWarning = lrc.fDisplayInitOnDemandWarning;\r
+ fEventCount = lrc.fEventCount;\r
+ fStartForwardETA = lrc.fStartForwardETA;\r
+ fEndForwardETA = lrc.fEndForwardETA;\r
+ fStartBakwardETA = lrc.fStartBakwardETA;\r
+ fEndBakwardETA = lrc.fEndBakwardETA;\r
+ fHiPt = lrc.fHiPt;\r
+ fLoPt = lrc.fLoPt;\r
+ fHiMult = lrc.fHiMult;\r
+ fLoMult = lrc.fLoMult;\r
+ fMultBins = lrc.fMultBins;\r
+ fPtBins = lrc.fPtBins;\r
+ fSumPtFw = lrc.fSumPtFw;\r
+ fSumPtBw = lrc.fSumPtBw;\r
+ fNchFw = lrc.fNchFw;\r
+ fNchBw = lrc.fNchBw;\r
+ fOutList = lrc.fOutList;\r
+ fShortDef = lrc.fShortDef;\r
+ fHistPt = lrc.fHistPt;\r
+ fHistEta = lrc.fHistEta;\r
+ fHistNN = lrc.fHistNN;\r
+ fHistPtN = lrc.fHistPtN;\r
+ fHistPtPt = lrc.fHistPtPt;\r
+ fProfNberr = lrc.fProfNberr;\r
+ fProfdPtB = lrc.fProfdPtB;\r
+ fProfTestLRC = lrc.fProfTestLRC;\r
+ fHistPtForward = lrc.fHistPtForward;\r
+ fHistEtaForward = lrc.fHistEtaForward;\r
+ fHistNchForward = lrc.fHistNchForward;\r
+ fHistPtBakward = lrc.fHistPtBakward;\r
+ fHistEtaBakward = lrc.fHistEtaBakward;\r
+ fHistNchBakward = lrc.fHistNchBakward;\r
+ }\r
+ return *this;\r
}\r
\r
Bool_t AliLRCProcess::InitDataMembers()\r
PostData(2,fCFManager->GetParticleContainer()) ;
}
//________________________________________________________________________
-const Float_t AliCFMuonResTask1::Imass(Float_t e1, Float_t px1, Float_t py1, Float_t pz1,
+Float_t AliCFMuonResTask1::Imass(Float_t e1, Float_t px1, Float_t py1, Float_t pz1,
Float_t e2, Float_t px2, Float_t py2, Float_t pz2)
{
// invariant mass calculation
return imassrec;
}
//________________________________________________________________________
-const Float_t AliCFMuonResTask1::Rap(Float_t e, Float_t pz)
+Float_t AliCFMuonResTask1::Rap(Float_t e, Float_t pz)
{
// calculate rapidity
Float_t rap;
}
}
//________________________________________________________________________
-const Float_t AliCFMuonResTask1::Phideg(Float_t phi)
+Float_t AliCFMuonResTask1::Phideg(Float_t phi)
{
// calculate Phi in range [-180,180]
Float_t phideg;
return phideg;
}
//________________________________________________________________________
-const Double_t AliCFMuonResTask1::CostCS(Double_t px1, Double_t py1, Double_t pz1, Double_t e1,
+Double_t AliCFMuonResTask1::CostCS(Double_t px1, Double_t py1, Double_t pz1, Double_t e1,
Double_t charge1, Double_t px2, Double_t py2, Double_t pz2, Double_t e2,
Double_t Energy)
{
//________________________________________________________________________
//________________________________________________________________________
-const Double_t AliCFMuonResTask1::CostHE(Double_t px1, Double_t py1, Double_t pz1, Double_t e1,
+Double_t AliCFMuonResTask1::CostHE(Double_t px1, Double_t py1, Double_t pz1, Double_t e1,
Double_t charge1, Double_t px2, Double_t py2, Double_t pz2, Double_t e2)
{
TLorentzVector PMu1CM, PMu2CM, PDimuCM; // In the CM frame
//________________________________________________________________________
//________________________________________________________________________
-const Double_t AliCFMuonResTask1::PhiCS(Double_t px1, Double_t py1, Double_t pz1, Double_t e1,
+Double_t AliCFMuonResTask1::PhiCS(Double_t px1, Double_t py1, Double_t pz1, Double_t e1,
Double_t charge1, Double_t px2, Double_t py2, Double_t pz2, Double_t e2,
Double_t Energy)
{
//________________________________________________________________________
//________________________________________________________________________
-const Double_t AliCFMuonResTask1::PhiHE(Double_t px1, Double_t py1, Double_t pz1, Double_t e1,
+Double_t AliCFMuonResTask1::PhiHE(Double_t px1, Double_t py1, Double_t pz1, Double_t e1,
Double_t charge1, Double_t px2, Double_t py2, Double_t pz2, Double_t e2, Double_t Energy)
{
TLorentzVector PMu1CM, PMu2CM, PProjCM, PTargCM, PDimuCM; // In the CM frame
TH1I *fHistEventsProcessed; // simple histo for monitoring the number of events processed
Double_t fNevt ; // event counter
- const Float_t Imass(Float_t e1, Float_t px1, Float_t py1, Float_t pz1,
+ Float_t Imass(Float_t e1, Float_t px1, Float_t py1, Float_t pz1,
Float_t e2, Float_t px2, Float_t py2, Float_t p2);
- const Float_t Rap(Float_t e, Float_t pz);
- const Float_t Phideg(Float_t phi);
+ Float_t Rap(Float_t e, Float_t pz);
+ Float_t Phideg(Float_t phi);
- const Double_t CostCS(Double_t px1, Double_t py1, Double_t pz1, Double_t e1, Double_t charge1,
+ Double_t CostCS(Double_t px1, Double_t py1, Double_t pz1, Double_t e1, Double_t charge1,
Double_t px2, Double_t py2, Double_t pz2, Double_t e2, Double_t energy);
- const Double_t CostHE(Double_t px1, Double_t py1, Double_t pz1, Double_t e1, Double_t charge1,
+ Double_t CostHE(Double_t px1, Double_t py1, Double_t pz1, Double_t e1, Double_t charge1,
Double_t px2, Double_t py2, Double_t pz2, Double_t e2);
- const Double_t PhiCS(Double_t px1, Double_t py1, Double_t pz1, Double_t e1, Double_t charge1,
+ Double_t PhiCS(Double_t px1, Double_t py1, Double_t pz1, Double_t e1, Double_t charge1,
Double_t px2, Double_t py2, Double_t pz2, Double_t e2, Double_t energy);
- const Double_t PhiHE(Double_t px1, Double_t py1, Double_t pz1, Double_t e1, Double_t charge1,
+ Double_t PhiHE(Double_t px1, Double_t py1, Double_t pz1, Double_t e1, Double_t charge1,
Double_t px2, Double_t py2, Double_t pz2, Double_t e2, Double_t energy);
ClassDef(AliCFMuonResTask1,1);
ClassImp(AliCorrQAChecker)
//__________________________________________________________________
-Double_t * AliCorrQAChecker::Check(AliQAv1::ALITASK_t index, TNtupleD ** nData)
+Double_t * AliCorrQAChecker::CheckN(AliQAv1::ALITASK_t index, TNtupleD ** nData, AliDetectorRecoParam * /*recoParam*/)
{
// check the QA of correlated data stored in a ntuple
// }
return test ;
}
+//__________________________________________________________________
+void AliCorrQAChecker::Run(AliQAv1::ALITASK_t tsk, TNtupleD ** nt, AliDetectorRecoParam * recoParam)
+{
+ // special run for TNtupleD
+ AliDebug(AliQAv1::GetQADebugLevel(), Form("Processing %s", AliQAv1::GetAliTaskName(tsk))) ;
+
+ Double_t * rv = NULL ;
+ rv = CheckN(tsk, nt, recoParam) ;
+ SetQA(tsk, rv) ;
+
+ AliDebug(AliQAv1::GetQADebugLevel(), Form("Test result of %s", AliQAv1::GetAliTaskName(tsk))) ;
+
+ if (rv)
+ delete [] rv ;
+ Finish() ;
+}
AliCorrQAChecker(const AliCorrQAChecker& qac) : AliQACheckerBase(qac.GetName(), qac.GetTitle()) {;} // cpy ctor
virtual ~AliCorrQAChecker() {;} // dtor
- virtual Double_t * Check(AliQAv1::ALITASK_t index, AliDetectorRecoParam * recoParam) { return AliQACheckerBase::Check(index, recoParam) ;}
- virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** obj, AliDetectorRecoParam * recoParam) { return AliQACheckerBase::Check(index, obj, recoParam) ;}
- Double_t * Check(AliQAv1::ALITASK_t index, TNtupleD ** nData) ;
+ virtual void Run(AliQAv1::ALITASK_t /*tsk*/, TNtupleD ** /*nt*/, AliDetectorRecoParam * /*recoParam*/) ;
+
private:
-
+ Double_t * CheckN(AliQAv1::ALITASK_t index, TNtupleD ** nData, AliDetectorRecoParam * recoParam) ;
+
ClassDef(AliCorrQAChecker,1) // description
};
void SetRefandData(TDirectory * ref, TObjArray ** refOCDB, TDirectory * data=NULL) { fRefSubDir = ref ; fRefOCDBSubDir = refOCDB, fDataSubDir = data ; }
protected:
- virtual Double_t * Check(AliQAv1::ALITASK_t index, AliDetectorRecoParam * recoParam) ;
virtual Double_t * Check(AliQAv1::ALITASK_t, TObjArray **, AliDetectorRecoParam * recoParam) ;
Double_t DiffC(const TH1 * href, const TH1 * hin) const ;
TCanvas ** fImage ;//[AliRecoParam::kNSpecies]
Bool_t fPrintImage ;//! flag to print the images or not
+private:
+ Double_t * Check(AliQAv1::ALITASK_t index, AliDetectorRecoParam * recoParam) ;
+
ClassDef(AliQACheckerBase,2) // description
};
ClassImp(AliT0QAChecker)
//__________________________________________________________________
-Double_t * AliT0QAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list)
+Double_t * AliT0QAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list, AliDetectorRecoParam * /*recoParam*/)
{
// Super-basic check on the QA histograms on the input list:
Double_t AliT0QAChecker::CheckRaw(TObjArray *listrec , TObjArray *listref) const
{
- TH1 *fhRawEff;
- TH1 *fhRawRef;
+ //TH1 *fhRawEff;
+ //TH1 *fhRawRef;
TH2 *fhRawRec2d;
TH2 *fhTime;
TIter next(listref) ;
- Int_t counter=0;
+ //Int_t counter=0;
Float_t refmean[50][25];
Float_t refrms[50][25];
Float_t checkr = 0;
- Int_t nref = listref->GetEntries();
- Int_t nrec = listrec->GetEntries();
+ //Int_t nref = listref->GetEntries();
+ //Int_t nrec = listrec->GetEntries();
for (Int_t iii=4; iii<6; iii++){
fhRawRec2d =(TH2*) listref->At(iii);
fhTime = (TH2*) listrec->At(icase);
for (Int_t idet=1; idet<25; idet++) {
Double_t binmean = fhTime->
- ProjectionY(Form("%s_py_%i_%i", fhTime ->GetName(), idet,icase),
+ ProjectionY(Form("%s_py_%i_%i", fhTime ->GetName(), idet,icase),
idet,idet+1)->GetMean();
- Double_t rms= fhTime ->
- ProjectionY(Form("%s_py%i_%i",
- fhTime ->GetName(), idet,icase),
- idet,idet+1)->GetRMS();
+// Double_t rms= fhTime ->ProjectionY(Form("%s_py%i_%i",
+// fhTime ->GetName(), idet,icase),
+// idet,idet+1)->GetRMS();
Double_t diffmean = binmean-refmean[icase-208][idet];
if (TMath::Abs(diffmean) < 2 ) {
checkr = 0.5;
// printf(" Laser calibration signal shifted by %f ps for PMT %s %i : check = %f\n", diffmean*24.4, nameDev[icase-208].Data(),idet, checkr);
AliDebug(AliQAv1::GetQADebugLevel(),
- Form(" Laser calibration signal shifted by %f ps (%f channels) for PMT %s %i : check = %f\n", diffmean*24.4 ,diffmean , nameDev[icase-208],idet, checkr)) ;
+ Form(" Laser calibration signal shifted by %f ps (%f channels) for PMT %s %i : check = %f\n", diffmean*24.4 ,diffmean , nameDev[icase-208].Data(),idet, checkr)) ;
}
if (TMath::Abs(diffmean) > 5) {
checkr = 0.25;
virtual ~AliT0QAChecker() {;}
Double_t CheckRaw(TObjArray *listrec , TObjArray *listref) const ;
private:
- virtual Double_t * Check(AliQAv1::ALITASK_t, TObjArray ** list) ;
+ virtual Double_t * Check(AliQAv1::ALITASK_t, TObjArray ** list, AliDetectorRecoParam * recoParam) ;
ClassDef(AliT0QAChecker,1) // description
TObjArray ** list,
AliDetectorRecoParam * /*recoParam*/)
{
-
// Super-basic check on the QA histograms on the input list:
// look whether they are empty!
protected:
- virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/,
- AliDetectorRecoParam * /*recoParam*/) {return NULL;} ;
virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/, TObjArray ** list,
AliDetectorRecoParam * recoParam=0) ;
//__________________________________________________________________
-Double_t * AliTRDQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list)
+Double_t * AliTRDQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list, AliDetectorRecoParam* /*param*/)
{
// Super-basic check on the QA histograms on the input list:
AliTRDQAChecker(const AliTRDQAChecker& qac) : AliQACheckerBase(qac.GetName(), qac.GetTitle()) {;} // cpy ctor
virtual ~AliTRDQAChecker() {;} // dtor
- virtual Double_t * Check(TList * /*list*/) {return NULL;}
- virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/, TObjArray ** /*list*/);
- virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/, TNtupleD** /*nt*/) {return NULL;}
- virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/, AliDetectorRecoParam* /*param*/) {return NULL;}
- virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/, TObjArray** /*list*/, AliDetectorRecoParam* /*param*/) {return NULL;}
+ virtual Double_t * Check(AliQAv1::ALITASK_t /*index*/, TObjArray** /*list*/, AliDetectorRecoParam* /*param*/) ;
private:
ClassImp(AliVZEROQAChecker)
//__________________________________________________________________
-Double_t * AliVZEROQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list)
+Double_t * AliVZEROQAChecker::Check(AliQAv1::ALITASK_t index, TObjArray ** list, AliDetectorRecoParam * /*recoParam*/)
{
// Main check function: Depending on the TASK, different checks will be applied
virtual void Init(const AliQAv1::DETECTORINDEX_t det) ;
protected:
- virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list);
+ virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list, AliDetectorRecoParam * recoParam);
Double_t CheckEntries(TObjArray * list) const ;
Double_t CheckEsds(TObjArray * list) const;