#include "AliCFCutBase.h"
+class TH1F;
class TBits;
//_____________________________________________________________________________
class AliCFEventRecCuts: public AliCFCutBase
AliCFEventRecCuts(const AliCFEventRecCuts& c) ;
AliCFEventRecCuts& operator=(const AliCFEventRecCuts& c) ;
~AliCFEventRecCuts();
- void GetBitMap(TObject *obj, TBits*bitmap);
Bool_t IsSelected(TObject* obj);
- void Init(){;};
-
- enum{kNCuts=7};
+ Bool_t IsSelected(TList* /*list*/) {return kTRUE;}
void SetNTracksCut(Int_t xMin=-1, Int_t xMax=1000000) {fNTracksMin=xMin; fNTracksMax=xMax;} // cut values setter
void SetVertexYResCut(Double_t yMax=1.e99){fVtxYResMax=yMax;} // cut values setter
void SetVertexZResCut(Double_t zMax=1.e99){fVtxZResMax=zMax;} // cut values setter
+ void SetVertexNContributors(Int_t min, Int_t max) {fVtxNCtrbMin=min; fVtxNCtrbMax=max;}
+ void SetUseTPCVertex() {fVtxTPC=kTRUE ; fVtxSPD=kFALSE;} //default is vertex from tracks
+ void SetUseSPDVertex() {fVtxTPC=kFALSE; fVtxSPD=kTRUE ;} //default is vertex from tracks
+
Int_t GetNTracksMin() const {return fNTracksMin;} // cut values getter
Int_t GetNTracksMax() const {return fNTracksMax;} // cut values getter
Bool_t GetRequireVtxCuts() const {return fRequireVtxCuts;} // cut value getter
Double_t GetVertexXResMax() const {return fVtxXResMax;} // cut values getter
Double_t GetVertexYResMax() const {return fVtxYResMax;} // cut values getter
Double_t GetVertexZResMax() const {return fVtxZResMax;} // cut values getter
+
+ // QA histogram setter
+ // please use indices from the enumeration below
+ void SetHistogramBins(Int_t index, Int_t nbins, Double_t *bins);
+ void SetHistogramBins(Int_t index, Int_t nbins, Double_t xmin, Double_t xmax);
+ enum{kNTracks=0,
+ kVtxPosX,
+ kVtxPosY,
+ kVtxPosZ,
+ kVtxResX,
+ kVtxResY,
+ kVtxResZ,
+ kVtxNCtrb,
+ kNCuts,
+ kNStepQA=2
+ };
- private:
- TBits *SelectionBitMap(TObject* obj);
+ protected:
+ void SelectionBitMap(TObject* obj);
+ void AddQAHistograms(TList *qaList) ;
+ void DefineHistograms(); // books histograms
+ void Initialise(); // sets everything to 0
+ void FillHistograms(TObject* obj, Bool_t b);
+
Int_t fNTracksMin; //minimum number of esd tracks
Int_t fNTracksMax; //maximum number of esd tracks
Bool_t fRequireVtxCuts ; //The type of trigger to be checked
Double_t fVtxXResMax ;//Maximum value of sigma_vtx in X
Double_t fVtxYResMax ;//Maximum value of sigma_vtx in X
Double_t fVtxZResMax ;//Maximum value of sigma_vtx in X
-
+ Int_t fVtxNCtrbMin; //Min number of contributors to vertex
+ Int_t fVtxNCtrbMax; //Max number of contributors to vertex
+ Bool_t fVtxTPC; //Flag for use of TPC vertex
+ Bool_t fVtxSPD; //Flag for use of SPD vertex
TBits *fBitMap ; //cut mask
- ClassDef(AliCFEventRecCuts,1);
+ TH1F* fhQA[kNCuts][kNStepQA]; // QA Histograms
+
+ ClassDef(AliCFEventRecCuts,3);
};
#endif