Updating the effecftive multiplicity calculation using the official
[u/mrichter/AliRoot.git] / TPC / Upgrade / AliToyMCEventGeneratorSimple.h
CommitLineData
de0014b7 1#ifndef AliToyMCEventGeneratorSimple_H
2#define AliToyMCEventGeneratorSimple_H
3
f356075c 4#include <AliESDEvent.h>
de0014b7 5
de0014b7 6#include "AliToyMCEventGenerator.h"
f356075c 7#include <TString.h>
a1a695e5 8class AliToyMCEvent;
f356075c 9class AliESDtrackCuts;
609d6d39 10class TTree;
29b7f480 11class TFile;
1e62e876 12class TH1F;
de0014b7 13class AliToyMCEventGeneratorSimple : public AliToyMCEventGenerator {
14 public:
15 AliToyMCEventGeneratorSimple();
16 AliToyMCEventGeneratorSimple(const AliToyMCEventGeneratorSimple &gen);
17 virtual ~AliToyMCEventGeneratorSimple();
18 AliToyMCEventGeneratorSimple & operator = (const AliToyMCEventGeneratorSimple &gen);
19
20 AliToyMCEvent* Generate(Double_t time);
f356075c 21 AliToyMCEvent* GenerateESD(AliESDEvent& esdEvent, Double_t time);
29b7f480 22 AliToyMCEvent* GenerateESD2(Double_t time);
0403120d 23 AliToyMCEvent* GenerateLaser(Double_t time);
f356075c 24
0403120d 25 void SetParametersToyGen(const Char_t* parfilename="$ALICE_ROOT/TPC/Upgrade/files/params.root", Double_t vertexMean = 0., Double_t vertexSigma = 7.);
fa97f7bd 26 void RunSimulation(const Int_t nevents=10, const Int_t ntracks=20, const Int_t rate=50);
609d6d39 27 void RunSimulationBunchTrain(const Int_t nevents=10, const Int_t ntracks=20);
f356075c 28 void RunSimulationESD(const Int_t nevents=10, const Int_t ntracks=20);
0403120d 29 void RunSimulationLaser(const Int_t nevents=1);
30
f356075c 31 void SetInputESD(const Char_t* filename) {fInputFileNameESD = filename;}
29b7f480 32 Int_t OpenInputAndGetMaxEvents(const Int_t type, const Int_t nevents);
33 void RunSimulation2(const Bool_t equalspacing, const Int_t type, const Int_t nevents, const Int_t ntracks);
34 void GetNGeneratedEventsAndSpacing(const Bool_t equalSpacing, Int_t &ngen, Double_t &spacing);
35 Bool_t CloseInputFile();
a1a695e5 36
de0014b7 37 private:
38
39 Double_t fVertexMean;
40 Double_t fVertexSigma;
41
32438f4e 42 Int_t fNtracks;
f356075c 43 TString fInputFileNameESD;
44
45 AliESDtrackCuts *fESDCuts;
29b7f480 46 Int_t fInputIndex;
47 AliESDEvent* fESDEvent;
48 TTree* fESDTree;
49 TFile* fInputFile;
1e62e876 50 TH1F* fHPt;
51 TH1F* fHEta;
52 TH1I* fHMult;
53 Bool_t fHistosSet;
54 TFile* fParamFile;
29b7f480 55
de0014b7 56 ClassDef(AliToyMCEventGeneratorSimple, 1)
57
58};
59
60
61
62
63
64
65#endif
66