AliPhysics  9fe175b (9fe175b)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnalysisTaskChargedJetsHadronToy.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKCHARGEDJETSHADRONTOY_H
2 #define ALIANALYSISTASKCHARGEDJETSHADRONTOY_H
3 /* Copyright(c) 1998-2016, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
6 class TClonesArray;
7 class TString;
8 class TRandom3;
9 
10 #include "AliAnalysisTaskSE.h"
11 
12 // Toy model to create an event for charged jet-hadron correlations
13 
14 class AliAnalysisTaskChargedJetsHadronToy : public AliAnalysisTaskSE {
15 public:
18 
19  virtual void UserCreateOutputObjects();
20  virtual void UserExec(Option_t *);
21  virtual void Terminate(Option_t *) {}
22  void ExecOnce();
23 
24  // ### SETTERS/GETTERS
25  void SetCreateUE(Bool_t val) {fCreateUE = val;}
26  void SetCreateJets(Bool_t val) {fCreateJets = val;}
28  void SetUEDistribution(TF1* val) {fUEDistribution = val;}
29  void SetUEMultiplicity(Int_t val) {fUEMultiplicity = val;}
32  void SetGeneratedJetCount(Int_t val) {fGeneratedJetCount = val;}
33  void SetGeneratedJetPtRange(Double_t min, Double_t max) {fGeneratedJetPtMin = min; fGeneratedJetPtMax = max;}
34  void SetGeneratedJetWidthPhi(Double_t val) {fGeneratedJetWidthPhi = val;}
35  void SetGeneratedJetWidthEta(Double_t val) {fGeneratedJetWidthEta = val;}
36  void SetGeneratedJetMinEta(Double_t val) {fGeneratedJetMinEta = val;}
37  void SetGeneratedJetMaxEta(Double_t val) {fGeneratedJetMaxEta = val;}
38 
39  void SetInputTracksName(const char* val) {fInputArrTracksName = val;}
40  void SetOutputTracksName(const char* val) {fOutputArrTracksName = val;}
41  void SetGeneratedJetsName(const char* val) {fGeneratedJetsArrName = val;}
42 
43 private:
44  // ### Settings
45  Bool_t fCreateUE; // create UE in toymodel
46  Bool_t fCreateJets; // create jets in toymodel
47  TH1* fUEMultDistribution; // histogram for multiplicity distribution
48  TF1* fUEDistribution; // function for particle pt distribution
49  Int_t fUEMultiplicity; // multiplicity in UE
50  TF1* fGeneratedJetParticleDistribution; // function for particle pt distribution in jets
51  TH1* fGeneratedJetPtDistribution; // pt distribution used to produce jets
52  Int_t fGeneratedJetCount; // count of generated jets
53 
54  Double_t fGeneratedJetPtMin; // generated jets pT (min)
55  Double_t fGeneratedJetPtMax; // generated jets pT (max)
56  Double_t fGeneratedJetWidthPhi; // width of generated jets in phi
57  Double_t fGeneratedJetWidthEta; // width of generated jets in eta
58  Double_t fGeneratedJetMinEta; // generated jets min eta
59  Double_t fGeneratedJetMaxEta; // generated jets max eta
60 
61  // ### Input/output settings+arrays
62  TClonesArray* fInputArrTracks;
63  TString fInputArrTracksName; // Name of the TClonesArray that will be loaded
64  TClonesArray* fOutputArrTracks;
65  TString fOutputArrTracksName; // Name of the destination TClonesArray
66  TClonesArray* fGeneratedJetsArr;
67  TString fGeneratedJetsArrName; // Name of the destination TClonesArray
68 
69  // ### Misc
72  TRandom3* fRandom;
73  Bool_t fInitialized; // internal state when ExecOnce has been executed
74 
75  void AssembleEvent();
76 
79 
81 };
82 
83 #endif
ClassDef(AliAnalysisTaskChargedJetsHadronToy, 1)
void SetGeneratedJetPtRange(Double_t min, Double_t max)
TF1 * fDistPhiGaussian
function for gaussian distribution in toy
TRandom3 * fRandom
function for gaussian distribution in toy
TString fInputArrTracksName
input array containing tracks from events
TString fOutputArrTracksName
array holding tracks from toy model
TString fGeneratedJetsArrName
array holding generated jets from toy model
AliAnalysisTaskChargedJetsHadronToy & operator=(const AliAnalysisTaskChargedJetsHadronToy &)