Line data Source code
1 : #ifndef ALIGENTOY_H
2 : #define ALIGENTOY_H
3 : /* Copyright(c) 1998-2016, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 :
6 : class AliVParticle;
7 : class AliGenToyEventHeader;
8 :
9 : #include "AliGenerator.h"
10 :
11 : class AliGenToy : public AliGenerator
12 : {
13 : public:
14 : AliGenToy(const std::string &name = "toy MC");
15 : virtual ~AliGenToy();
16 : virtual void Init();
17 : virtual void Generate();
18 :
19 : virtual void UserGenerate() = 0;
20 :
21 : protected:
22 : // AddParticle returns label
23 : Int_t AddParticle(const TLorentzVector &part);
24 : Int_t AddParticle(const AliVParticle &part);
25 : Int_t AddParticle(Double_t px, Double_t py, Double_t pz, Int_t pdg);
26 :
27 : void SetCentrality(Double_t cent);
28 : void SetVertex(Double_t vx, Double_t vy, Double_t vz);
29 : void SetValue(const std::string &key, Double_t value);
30 :
31 : AliGenToyEventHeader *fHeader;
32 :
33 : Int_t fNProduced;
34 : Float_t fEventWeight;
35 : TArrayF fEventVertex;
36 :
37 : private:
38 : AliGenToy(const AliGenToy ¶);
39 : AliGenToy& operator = (const AliGenToy ¶);
40 :
41 6 : ClassDef(AliGenToy, 1) // toy generator
42 : };
43 : #endif
|