X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PWG3%2FvertexingHF%2FAliAnalysisTaskSED0Mass.h;h=c203a702cb7ba57d46a4178c98ac5497a2e36983;hb=9daf22f89a6ff15396be26c8f46d2ad43910561e;hp=58ab37e5fe44c1c2f66d109ad029ecebc1ead7b2;hpb=a41f6fadf5b41130510c0371c7ec285216ef91d1;p=u%2Fmrichter%2FAliRoot.git diff --git a/PWG3/vertexingHF/AliAnalysisTaskSED0Mass.h b/PWG3/vertexingHF/AliAnalysisTaskSED0Mass.h index 58ab37e5fe4..c203a702cb7 100644 --- a/PWG3/vertexingHF/AliAnalysisTaskSED0Mass.h +++ b/PWG3/vertexingHF/AliAnalysisTaskSED0Mass.h @@ -19,14 +19,17 @@ #include #include "AliAnalysisTaskSE.h" -#include "AliAnalysisVertexingHF.h" +#include "AliRDHFCutsD0toKpi.h" +#include "AliNormalizationCounter.h" + +class AliAODEvent; class AliAnalysisTaskSED0Mass : public AliAnalysisTaskSE { public: AliAnalysisTaskSED0Mass(); - AliAnalysisTaskSED0Mass(const char *name); + AliAnalysisTaskSED0Mass(const char *name,AliRDHFCutsD0toKpi* cuts); virtual ~AliAnalysisTaskSED0Mass(); @@ -37,19 +40,41 @@ class AliAnalysisTaskSED0Mass : public AliAnalysisTaskSE virtual void UserExec(Option_t *option); virtual void Terminate(Option_t *option); - + void SetArray(Int_t type=AliAnalysisTaskSED0Mass::kD0){fArray=type;} + enum{kD0,kLS}; + + void SetReadMC(Bool_t readMC=kFALSE){fReadMC=readMC;} + void SetCutOnDistr(Bool_t cutondistr=kFALSE){fCutOnDistr=cutondistr;} + void SetUsePid4Distr(Bool_t usepid=kTRUE){fUsePid4Distr=usepid;} + void SetFillOnlyD0D0bar(Int_t flagfill){fFillOnlyD0D0bar=flagfill;} + + Bool_t GetCutOnDistr() const {return fCutOnDistr;} + Bool_t GetUsePid4Distr() const {return fUsePid4Distr;} + Int_t GetFillOnlyD0D0bar() const {return fFillOnlyD0D0bar;} + private: AliAnalysisTaskSED0Mass(const AliAnalysisTaskSED0Mass &source); AliAnalysisTaskSED0Mass& operator=(const AliAnalysisTaskSED0Mass& source); - void FillHists(Int_t ptbin, AliAODRecoDecayHF2Prong *part, TClonesArray *arrMC, AliAnalysisVertexingHF *vhf, TList *listout); - TList *fOutputtight; //! list send on output slot 1 - TList *fOutputloose; //! list send on output slot 2 - TList *fDistr; //! list send on output slot 3 - AliAnalysisVertexingHF *fVHFtight; // Vertexer heavy flavour (used to pass the cuts) - AliAnalysisVertexingHF *fVHFloose; // Vertexer heavy flavour (used to pass the cuts) - TH1F *fNentries; //! histogram with number of events - ClassDef(AliAnalysisTaskSED0Mass,2); // AliAnalysisTaskSE for the MC association of heavy-flavour decay candidates + void FillMassHists(AliAODEvent *aodev,AliAODRecoDecayHF2Prong *part, TClonesArray *arrMC, AliRDHFCutsD0toKpi *cuts, TList *listout); + void FillVarHists(AliAODEvent *aodev,AliAODRecoDecayHF2Prong *part, TClonesArray *arrMC, AliRDHFCutsD0toKpi *cuts, TList *listout); + AliAODVertex* GetPrimaryVtxSkipped(AliAODEvent *aodev,AliAODRecoDecayHF2Prong *d); + + TList *fOutputMass; //! list send on output slot 1 + TList *fDistr; //! list send on output slot 2 + TH1F *fNentries; //! histogram with number of events on output slot 3 + AliRDHFCutsD0toKpi *fCuts; // Cuts - sent to output slot 4 + Int_t fArray; // can be D0 or Like Sign candidates + Bool_t fReadMC; // flag for MC array: kTRUE = read it, kFALSE = do not read it + Bool_t fCutOnDistr; // flag to decide if apply cut also on distributions: 0 no cuts, 1 looser cuts, 2 tighter cuts + Bool_t fUsePid4Distr; // flag to use the particle identification to fill the signal histograms of distributions. It has effect only with fReadMC=kFALSE + AliNormalizationCounter *fCounter;//!AliNormalizationCounter on output slot 6 + Int_t fNPtBins; // number of pt bins + Double_t fLsNormalization; // normalization + Int_t fFillOnlyD0D0bar; // flag to fill mass histogram with D0/D0bar only (0 = fill with both, 1 = fill with D0 only, 2 = fill with D0bar only) + + ClassDef(AliAnalysisTaskSED0Mass,11); // AliAnalysisTaskSE for the MC association of heavy-flavour decay candidates }; #endif +