X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=CORRFW%2FAliCFEventClassCuts.cxx;h=f312cfb054693c172e3d2d0e2f2f85b0f92edc41;hb=4d4ce2d2bcf24a13f742b83d01fd1ece3c7bed49;hp=00114940d1b8a132784c4fc3ab579cbd15a37dcb;hpb=9baeb4efe3f3efdabdcb42f9c2be7b8e993bf19f;p=u%2Fmrichter%2FAliRoot.git diff --git a/CORRFW/AliCFEventClassCuts.cxx b/CORRFW/AliCFEventClassCuts.cxx index 00114940d1b..f312cfb0546 100644 --- a/CORRFW/AliCFEventClassCuts.cxx +++ b/CORRFW/AliCFEventClassCuts.cxx @@ -26,7 +26,6 @@ #include "TH1F.h" #include "TList.h" #include "AliLog.h" -#include "TMath.h" #include "AliVEvent.h" #include "AliCFEventClassCuts.h" ClassImp(AliCFEventClassCuts) @@ -47,21 +46,7 @@ AliCFEventClassCuts::AliCFEventClassCuts() : fZDCP2EnergyMax(1.e99), fZDCEM1EnergyMax(1.e99), fZDCEM2EnergyMax(1.e99), - fBitMap(0x0), - fhNBinsTrigger(0), - fhBinLimTrigger(0), - fhNBinsZDCEnN1(0), - fhBinLimZDCEnN1(0), - fhNBinsZDCEnP1(0), - fhBinLimZDCEnP1(0), - fhNBinsZDCEnN2(0), - fhBinLimZDCEnN2(0), - fhNBinsZDCEnP2(0), - fhBinLimZDCEnP2(0), - fhNBinsZDCEnEM1(0), - fhBinLimZDCEnEM1(0), - fhNBinsZDCEnEM2(0), - fhBinLimZDCEnEM2(0) + fBitMap(0x0) { // //ctor @@ -88,21 +73,7 @@ AliCFEventClassCuts::AliCFEventClassCuts(Char_t* name, Char_t* title) : fZDCP2EnergyMax(1.e99), fZDCEM1EnergyMax(1.e99), fZDCEM2EnergyMax(1.e99), - fBitMap(0x0), - fhNBinsTrigger(0), - fhBinLimTrigger(0), - fhNBinsZDCEnN1(0), - fhBinLimZDCEnN1(0), - fhNBinsZDCEnP1(0), - fhBinLimZDCEnP1(0), - fhNBinsZDCEnN2(0), - fhBinLimZDCEnN2(0), - fhNBinsZDCEnP2(0), - fhBinLimZDCEnP2(0), - fhNBinsZDCEnEM1(0), - fhBinLimZDCEnEM1(0), - fhNBinsZDCEnEM2(0), - fhBinLimZDCEnEM2(0) + fBitMap(0x0) { // //ctor @@ -128,21 +99,7 @@ AliCFEventClassCuts::AliCFEventClassCuts(const AliCFEventClassCuts& c) : fZDCP2EnergyMax(c.fZDCP2EnergyMax), fZDCEM1EnergyMax(c.fZDCEM1EnergyMax), fZDCEM2EnergyMax(c.fZDCEM2EnergyMax), - fBitMap(c.fBitMap), - fhNBinsTrigger(c.fhNBinsTrigger), - fhBinLimTrigger(c.fhBinLimTrigger ), - fhNBinsZDCEnN1(c.fhNBinsZDCEnN1), - fhBinLimZDCEnN1(c.fhBinLimZDCEnN1), - fhNBinsZDCEnP1(c.fhNBinsZDCEnP1), - fhBinLimZDCEnP1(c.fhBinLimZDCEnP1), - fhNBinsZDCEnN2(c.fhNBinsZDCEnN2), - fhBinLimZDCEnN2(c.fhBinLimZDCEnN2), - fhNBinsZDCEnP2(c.fhNBinsZDCEnP2), - fhBinLimZDCEnP2(c.fhBinLimZDCEnP2), - fhNBinsZDCEnEM1(c.fhNBinsZDCEnEM1), - fhBinLimZDCEnEM1(c.fhBinLimZDCEnEM1), - fhNBinsZDCEnEM2(c.fhNBinsZDCEnEM2), - fhBinLimZDCEnEM2(c.fhBinLimZDCEnEM2) + fBitMap(c.fBitMap) { // @@ -172,20 +129,6 @@ AliCFEventClassCuts& AliCFEventClassCuts::operator=(const AliCFEventClassCuts& c fZDCEM1EnergyMax = c.fZDCEM1EnergyMax; fZDCEM2EnergyMax = c.fZDCEM2EnergyMax; fBitMap = c.fBitMap; - fhNBinsTrigger = c.fhNBinsTrigger; - fhBinLimTrigger = c.fhBinLimTrigger ; - fhNBinsZDCEnN1 = c.fhNBinsZDCEnN1; - fhBinLimZDCEnN1 = c.fhBinLimZDCEnN1; - fhNBinsZDCEnP1 = c.fhNBinsZDCEnP1; - fhBinLimZDCEnP1 = c.fhBinLimZDCEnP1; - fhNBinsZDCEnN2 = c.fhNBinsZDCEnN2; - fhBinLimZDCEnN2 = c.fhBinLimZDCEnN2; - fhNBinsZDCEnP2 = c.fhNBinsZDCEnP2; - fhBinLimZDCEnP2 = c.fhBinLimZDCEnP2; - fhNBinsZDCEnEM1 = c.fhNBinsZDCEnEM1; - fhBinLimZDCEnEM1 = c.fhBinLimZDCEnEM1; - fhNBinsZDCEnEM2 = c.fhNBinsZDCEnEM2; - fhBinLimZDCEnEM2 = c.fhBinLimZDCEnEM2; } @@ -211,53 +154,21 @@ AliCFEventClassCuts::~AliCFEventClassCuts() } if(fBitMap)delete fBitMap; - if(fhBinLimTrigger)delete fhBinLimTrigger; - if(fhBinLimZDCEnN1)delete fhBinLimZDCEnN1; - if(fhBinLimZDCEnP1)delete fhBinLimZDCEnP1; - if(fhBinLimZDCEnN2)delete fhBinLimZDCEnN2; - if(fhBinLimZDCEnP2)delete fhBinLimZDCEnP2; - if(fhBinLimZDCEnEM1)delete fhBinLimZDCEnEM1; - if(fhBinLimZDCEnEM2)delete fhBinLimZDCEnEM2; } -//_____________________________________________________________________________ -void AliCFEventClassCuts::Init() { - // - // initialises all QA histograms - // - if(fIsQAOn) - DefineHistograms(); -} - //_____________________________________________________________________________ void AliCFEventClassCuts::Initialise() { // //initialization - // - - // // sets pointers to histos to zero - // - for(Int_t i=0; iGetNbits();icut++) - if(!bitmap->TestBitNumber(icut)) isSelected = kFALSE; + for (UInt_t icut=0; icutGetNbits();icut++) + if(!fBitMap->TestBitNumber(icut)) isSelected = kFALSE; - return isSelected; + if (!isSelected) return kFALSE ; + if (fIsQAOn) FillHistograms(obj,1); + return kTRUE; } //____________________________________________________________________ -TBits *AliCFEventClassCuts::SelectionBitMap(TObject* obj) { +void AliCFEventClassCuts::SetHistogramBins(Int_t index, Int_t nbins, Double_t *bins) +{ + // + //setting x-axis bin limits of QA histogram fhQA[index] + // + for(Int_t i=0;iGetXaxis()->Set(nbins,bins); + } +} +//____________________________________________________________________ +void AliCFEventClassCuts::SetHistogramBins(Int_t index, Int_t nbins, Double_t xmin, Double_t xmax) +{ + // + //setting x-axis bins and range of QA histogram fhQA[index] + // + for(Int_t i=0;iGetXaxis()->Set(nbins,xmin,xmax); + } +} +//____________________________________________________________________ +void AliCFEventClassCuts::SelectionBitMap(TObject* obj) { // //cut on trigger type (just pp running trigger types implemented so far) //and on the energy observed in the ZDC. The argument is cast into @@ -286,8 +226,9 @@ TBits *AliCFEventClassCuts::SelectionBitMap(TObject* obj) { // for(Int_t j=0;jSetBitNumber(j,kFALSE); + AliVEvent* esd = dynamic_cast(obj); - if (!esd ) return fBitMap ; + if (!esd ) return; //now start checking the cuts @@ -327,7 +268,7 @@ TBits *AliCFEventClassCuts::SelectionBitMap(TObject* obj) { if( esd->GetZDCP2Energy()GetZDCP2Energy()>fZDCP2EnergyMax)fBitMap->SetBitNumber(4,kFALSE); if( esd->GetZDCEMEnergy(0)GetZDCEMEnergy(0)>fZDCEM1EnergyMax)fBitMap->SetBitNumber(5,kFALSE); if( esd->GetZDCEMEnergy(1)GetZDCEMEnergy(1)>fZDCEM2EnergyMax)fBitMap->SetBitNumber(6,kFALSE); - return fBitMap; + return ; } @@ -380,123 +321,6 @@ void AliCFEventClassCuts::TriggerBitMap(AliVEvent* ev, TBits *bitmapT ) { return; } -//_____________________________________________________________________________ -void AliCFEventClassCuts::GetBitMap(TObject* obj, TBits* bitmap){ - // - // retrieve the pointer to the bitmap - // - - bitmap = SelectionBitMap(obj); - -} - -//_____________________________________________________________________________ -void AliCFEventClassCuts::SetHistogramBins(Int_t index, Int_t nbins, Double_t *bins) -{ - // - // QA histogram axis parameters - // variable bin size:user inputs nbins and the vector of bin limits - // - - switch(index){ - case kTrigger: - fhNBinsTrigger=nbins; - fhBinLimTrigger=new Double_t[nbins+1]; - for(Int_t i=0;iSetXTitle("Trigger Bits"); fhQA[kZDCEnergyN1][i] ->SetXTitle("ZDC Energy N1 (GeV)"); @@ -540,7 +362,7 @@ void AliCFEventClassCuts::SetHistogramBins(Int_t index, Int_t nbins, Double_t xm } //_____________________________________________________________________________ -void AliCFEventClassCuts::FillHistograms(TObject* obj, Bool_t b) +void AliCFEventClassCuts::FillHistograms(TObject* obj, Bool_t afterCuts) { // // fill the QA histograms @@ -551,12 +373,6 @@ void AliCFEventClassCuts::FillHistograms(TObject* obj, Bool_t b) AliVEvent* esd = dynamic_cast(obj); if (!esd ) return ; - // index = 0: fill histograms before cuts - // index = 1: fill histograms after cuts - Int_t index = -1; - index = ((b) ? 1 : 0); - - //look at the Trigger mask in current event TBits *triggerBitMap=new TBits(0); TriggerBitMap(esd, triggerBitMap); @@ -564,31 +380,32 @@ void AliCFEventClassCuts::FillHistograms(TObject* obj, Bool_t b) //trigger Mask for(Int_t itrig=0;itrigTestBitNumber(itrig)){ - fhQA[kTrigger][index]->Fill(itrig); + fhQA[kTrigger][afterCuts]->Fill(itrig); } } delete triggerBitMap; //ZDC Quantities - fhQA[kZDCEnergyN1][index]->Fill(esd->GetZDCN1Energy()); - fhQA[kZDCEnergyP1][index]->Fill(esd->GetZDCP1Energy()); - fhQA[kZDCEnergyN2][index]->Fill(esd->GetZDCN2Energy()); - fhQA[kZDCEnergyP2][index]->Fill(esd->GetZDCP2Energy()); - fhQA[kZDCEnergyEM1][index]->Fill(esd->GetZDCEMEnergy(0)); - fhQA[kZDCEnergyEM2][index]->Fill(esd->GetZDCEMEnergy(1)); + fhQA[kZDCEnergyN1][afterCuts] ->Fill(esd->GetZDCN1Energy()); + fhQA[kZDCEnergyP1][afterCuts] ->Fill(esd->GetZDCP1Energy()); + fhQA[kZDCEnergyN2][afterCuts] ->Fill(esd->GetZDCN2Energy()); + fhQA[kZDCEnergyP2][afterCuts] ->Fill(esd->GetZDCP2Energy()); + fhQA[kZDCEnergyEM1][afterCuts]->Fill(esd->GetZDCEMEnergy(0)); + fhQA[kZDCEnergyEM2][afterCuts]->Fill(esd->GetZDCEMEnergy(1)); } //_____________________________________________________________________________ -void AliCFEventClassCuts::AddQAHistograms(TList *list) const { +void AliCFEventClassCuts::AddQAHistograms(TList *qaList) { // // saves the histograms in a TList // - if(!fIsQAOn) return; + + DefineHistograms(); for (Int_t j=0; jAdd(fhQA[i][j]); + qaList->Add(fhQA[i][j]); } }