]> git.uio.no Git - u/mrichter/AliRoot.git/blame - JETAN/jetan2004/AliTkJetTrigger.h
SetInput call corrected for generated jets.
[u/mrichter/AliRoot.git] / JETAN / jetan2004 / AliTkJetTrigger.h
CommitLineData
b9a6a391 1// $Id$
2
3/****************************************************************************
4 * AliTkJetTrigger.h *
5 * Test version of jet-trigger, includes many analysis functions to tune *
6 * paramters *
7 * Thorsten Kollegger <kollegge@ikf.physik.uni-frankfurt.de> *
8 ***************************************************************************/
9
10#ifndef TKJETTRIGGER_H
11#define TKJETTRIGGER_H
12
13#include <Riostream.h>
14#include <list>
15#include <TParticle.h>
16#include "AliTkJetTriggerEvent.h"
17
18class AliTkJetTrigger : public TObject {
19 public:
20 AliTkJetTrigger() : TObject() {
21 mEvOutName=0;
22 setDefaults();
23 }
24 virtual ~AliTkJetTrigger(){if(mEvOutName) delete[] mEvOutName;}
25
26 void init();
27 void initEvent();
28 void initEvent(TClonesArray *particles, Int_t type);
29 void initEvent(TClonesArray *particles);
30 void make();
31 void run() { make(); }
32 void finishEvent();
33 void finish();
34
35 void setDefaults();
36 void setEvOutFilename(Char_t *filename);
37 Char_t *getEvOutFilename() { return mEvOutName; }
38
39 void setParticleType(Int_t type);
40 Int_t getParticleType() { return mParticleType; }
41 void addConeRadius(Float_t radius);
42 void addConeNParticles(UInt_t nParticles);
43 void addConePtThreshold(Float_t ptThreshold);
44
45 void mixParticles(TClonesArray *particles, Int_t type);
46
47 void setParticleMinPt(Float_t f){fParticleMinPt=f;}
48 void setParticleMinPtSeed(Float_t f){fParticleMinPtSeed=f;}
49
50 void setExpectedParticleNumber(UInt_t n) {mExpectedNParticles = n; }
51 UInt_t getExpectedParticleNumber() { return mExpectedNParticles; }
52
53 private:
54
55 void createSeedPoints();
56
57 Bool_t isParticleAccepted(TParticle *particle);
58 Bool_t isParticleAccepted(TParticle *particle, Int_t type);
59 Bool_t isParticleAcceptedPythia(TParticle *particle);
60 Bool_t isParticleAcceptedPythiaAliceGeo(TParticle *particle);
61 Bool_t isParticleAcceptedHijing(TParticle *particle);
62 Bool_t isParticleAcceptedHijingAliceGeo(TParticle *particle);
63
64 void clearParticles();
65
66 list<TParticle*> *getParticlesInCone(AliTkEtaPhiVector center, Float_t radius);
67 list<TParticle*> *getParticlesInCone(AliTkEtaPhiVector center,
68 Float_t radius,
69 TClonesArray *particles);
70 Bool_t decide(list<TParticle*> *particles, Float_t ptThreshold,
71 UInt_t nParticles);
72
73 Int_t mParticleType;
74 TClonesArray *mParticles;
75 UInt_t mExpectedNParticles;
76
77 list<AliTkEtaPhiVector> seedPoints;
78 list<Float_t> mConeRadia;
79 list<UInt_t> mConeNParticles;
80 list<Float_t> mConePtThreshold;
81
82 Char_t *mEvOutName; //!
83 TFile *mEvOutFile; //!
84 TTree *mEvOutTree; //!
85 AliTkJetTriggerEvent *mEvOutEvent; //!
86 TObjArray *mDecisions;
87
88 Float_t fParticleMinPt;
89 Float_t fParticleMinPtSeed;
90
91 ClassDef(AliTkJetTrigger,0)
92};
93
94
95#endif