Line data Source code
1 : #ifndef ALIGENPERFORMANCE_H
2 : #define ALIGENPERFORMANCE_H
3 : /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 : // Perormance generator for Jet according generic functions
6 : //
7 : // TF1 * fF1Momentum; // momentum distribution function inGeV
8 : // TF1 * fFPhi; // phi distribution function in rad
9 : // TF1 * fFTheta; // theta distribution function in rad
10 : // TF3 * fFPosition; // position distribution function in cm
11 : // TF1 * fFPdg; // pdg distribution function
12 : // We assume that the moment, postion and PDG code of particles are independent
13 : // Only tracks/particle crossing the reference radius at given z range
14 : //
15 : // Origin: marian.ivanov@cern.ch
16 :
17 :
18 : #include "AliGenerator.h"
19 : class TF3;
20 : class TTreeSRedirector;
21 :
22 : class AliGenPerformance : public AliGenerator
23 : {
24 : public:
25 :
26 : AliGenPerformance();
27 : AliGenPerformance(const AliGenPerformance& perf);
28 : AliGenPerformance &operator=(const AliGenPerformance& perf);
29 0 : virtual ~AliGenPerformance() {}
30 : virtual void Generate();
31 : virtual void Init();
32 0 : void SetNJets(Double_t nJets){fNJets=nJets;}
33 0 : Double_t GetNJets()const {return fNJets;}
34 : void SetFunctions(TF1 * momentum, TF1 *fphi=0, TF1 *ftheta=0, TF3 * position=0, TF1* pdg=0);
35 0 : void SetStreamer(TTreeSRedirector *pcstream){fTestStream=pcstream;}
36 0 : TTreeSRedirector * GetStreamer(){return fTestStream;}
37 : static void TestAliGenPerformance(Int_t nEvents, TF1 *f1pt, TF1 *fpdg);
38 : private:
39 : Float_t fNJets; // mean number of jets
40 : TF1 * fF1Momentum; // momentum distribution function
41 : TF1 * fFPhi; // phi distribution function
42 : TF1 * fFTheta; // theta distribution function
43 : TF3 * fFPosition; // position distribution function
44 : TF1 * fFPdg; // pdg distribution function
45 : TTreeSRedirector *fTestStream; // test stream
46 : //
47 6 : ClassDef(AliGenPerformance,1) // performance generator
48 : };
49 :
50 : #endif
|