]>
Commit | Line | Data |
---|---|---|
c683985a | 1 | #ifndef ALIANALYSISTASKSEDMESONSFILTERCJ_H |
2 | #define ALIANALYSISTASKSEDMESONSFILTERCJ_H | |
3 | /************************************************************************** | |
4 | * Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. * | |
5 | * * | |
6 | * Author: The ALICE Off-line Project. * | |
7 | * Contributors are mentioned in the code where appropriate. * | |
8 | * * | |
9 | * Permission to use, copy, modify and distribute this software and its * | |
10 | * documentation strictly for non-commercial purposes is hereby granted * | |
11 | * without fee, provided that the above copyright notice appears in all * | |
12 | * copies and that both the copyright notice and this permission notice * | |
13 | * appear in the supporting documentation. The authors make no claims * | |
14 | * about the suitability of this software for any purpose. It is * | |
15 | * provided "as is" without express or implied warranty. * | |
16 | **************************************************************************/ | |
17 | ||
18 | //----------------------------------------------------------------------- | |
19 | // Author : A. Grelli, Utrecht University | |
20 | // C. Bianchin, Utrecht University | |
21 | // X. Zhang, LBNL | |
22 | //----------------------------------------------------------------------- | |
23 | ||
24 | ||
25 | #include <TH2F.h> | |
26 | #include "AliAODEvent.h" | |
27 | #include "AliPicoTrack.h" | |
28 | #include "AliAnalysisTaskSE.h" | |
29 | ||
30 | class TH3F; | |
31 | class TString; | |
32 | class TParticle ; | |
33 | class TClonesArray ; | |
34 | class AliMCParticle; | |
35 | class AliAODMCParticle; | |
36 | class AliRDHFCuts; | |
37 | class AliAODRecoCascadeHF; | |
38 | ||
39 | class AliAnalysisTaskSEDmesonsFilterCJ : public AliAnalysisTaskSE | |
40 | { | |
41 | ||
42 | public : | |
43 | ||
44 | enum ECandidateType{ kD0toKpi, kDstartoKpipi }; | |
45 | ||
46 | AliAnalysisTaskSEDmesonsFilterCJ(); | |
47 | AliAnalysisTaskSEDmesonsFilterCJ(const Char_t* name,AliRDHFCuts* cuts,ECandidateType candtype); | |
48 | virtual ~AliAnalysisTaskSEDmesonsFilterCJ(); | |
49 | ||
50 | virtual void UserCreateOutputObjects(); | |
51 | virtual void UserExec(Option_t *option); | |
52 | virtual void Terminate(Option_t *); | |
53 | virtual void Init(); | |
54 | virtual void LocalInit() { Init(); } | |
55 | ||
56 | // inizializations | |
57 | Bool_t DefineHistoForAnalysis(); | |
58 | ||
59 | // set MC usage | |
60 | void SetMC(Bool_t theMCon) { fUseMCInfo = theMCon; } | |
61 | Bool_t GetMC() const { return fUseMCInfo; } | |
62 | ||
63 | // set usage of generated or reconstucted quantities (relevant for MC) | |
64 | void SetUseReco(Bool_t useReco=kTRUE) { fUseReco= useReco;} | |
65 | Bool_t GetUseReco() const {return fUseReco;} | |
66 | ||
67 | void SetMassLimits(Double_t range, Int_t pdg); | |
68 | void SetMassLimits(Double_t lowlimit, Double_t uplimit); | |
69 | ||
70 | // Array of D0 width for the Dstar | |
71 | Bool_t SetD0WidthForDStar(Int_t nptbins, Float_t *width); | |
8577f7bc | 72 | |
73 | Float_t DeltaR(AliVParticle *p1, AliVParticle *p2) const; | |
c683985a | 74 | |
75 | private : | |
76 | ||
77 | AliAnalysisTaskSEDmesonsFilterCJ(const AliAnalysisTaskSEDmesonsFilterCJ &source); | |
78 | AliAnalysisTaskSEDmesonsFilterCJ& operator=(const AliAnalysisTaskSEDmesonsFilterCJ& source); | |
79 | ||
80 | Bool_t fUseMCInfo; // Use MC info | |
81 | Bool_t fUseReco; // use reconstructed tracks when running on MC | |
82 | ||
83 | UInt_t fCandidateType; // Dstar or D0 | |
84 | TString fCandidateName; // Dstar or D0 | |
85 | ||
86 | Int_t fPDGmother; // PDG code of D meson | |
87 | Int_t fNProngs; // number of prong of the decay channel | |
88 | Int_t fPDGdaughters[4]; // PDG codes of daughters | |
89 | Float_t fSigmaD0[30]; // D0 sigma for Dstar | |
90 | ||
91 | TString fBranchName; // AOD branch name | |
92 | TList *fOutput; //! user output | |
93 | ||
94 | AliRDHFCuts *fCuts; // Cuts | |
95 | Double_t fMinMass; // mass lower limit histogram | |
96 | Double_t fMaxMass; // mass upper limit histogram | |
97 | ||
98 | TClonesArray *fCandidateArray; //! contains candidates selected by AliRDHFCuts | |
99 | TClonesArray *fSideBandArray; //! contains candidates selected by AliRDHFCuts::IsSelected(kTracks), to be used for side bands (DStar case only!!) | |
e278882f | 100 | //Histograms |
d69d07c3 | 101 | TH2F* fhImpPar; //! |
102 | TH2F* fhImpParB; //! | |
103 | TH1F* fhInvMassS; //! | |
104 | TH1F* fhInvMassB; //! | |
e278882f | 105 | |
106 | ClassDef(AliAnalysisTaskSEDmesonsFilterCJ,3); // class for charm-jet correlations | |
c683985a | 107 | }; |
108 | ||
109 | #endif |