AliPhysics  fceccc5 (fceccc5)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliMCParticleContainerToyModel.h
Go to the documentation of this file.
1 
13 #ifndef ALIMCPARTICLECONTAINERTOYMODEL_H
14 #define ALIMCPARTICLECONTAINERTOYMODEL_H
15 
16 /**************************************************************************
17 * Copyright(c) 1998-2016, ALICE Experiment at CERN, All rights reserved. *
18 * *
19 * Author: The ALICE Off-line Project. *
20 * Contributors are mentioned in the code where appropriate. *
21 * *
22 * Permission to use, copy, modify and distribute this software and its *
23 * documentation strictly for non-commercial purposes is hereby granted *
24 * without fee, provided that the above copyright notice appears in all *
25 * copies and that both the copyright notice and this permission notice *
26 * appear in the supporting documentation. The authors make no claims *
27 * about the suitability of this software for any purpose. It is *
28 * provided "as is" without express or implied warranty. *
29 **************************************************************************/
30 
31 class AliAODEvent;
32 
33 #include "AliAODEvent.h"
34 #include "AliMCParticleContainer.h"
35 
36 
38 public:
40  AliMCParticleContainerToyModel(const char *name);
41 
44 
45  virtual Bool_t GetMomentumFromParticle(TLorentzVector &mom, const AliAODMCParticle* track, Double_t mass) const;
46  virtual Bool_t GetMomentum(TLorentzVector &mom, Int_t i) const;
47  virtual Bool_t GetAcceptMomentum(TLorentzVector &mom, Int_t i) const;
48  virtual Bool_t GetNextMomentum(TLorentzVector &mom);
49  virtual Bool_t GetNextAcceptMomentum(TLorentzVector &mom);
50 
51  void ScalePtOfLorentzVector(TLorentzVector &mom) const;
52  void SetRandomEtaPhiOfLorentzVector(TLorentzVector &mom) const;
53 protected:
54  void ExecOnce();
55  Double_t fTrackScalePt; //scaling of the track pT by given fraction (0....1)
56  Double_t fTrackEtaWindow; //eta acceptance
57  Double_t fRandomizeEtaPhi; //break correlations by setting random eta phi to the tracks
58 
59 
60  private:
62  ClassDef(AliMCParticleContainerToyModel, 1);
64 };
65 #endif
virtual Bool_t GetNextAcceptMomentum(TLorentzVector &mom)
double Double_t
Definition: External.C:58
virtual Bool_t GetMomentum(TLorentzVector &mom, Int_t i) const
Double_t mass
void ScalePtOfLorentzVector(TLorentzVector &mom) const
int Int_t
Definition: External.C:63
void SetRandomEtaPhiOfLorentzVector(TLorentzVector &mom) const
virtual Bool_t GetNextMomentum(TLorentzVector &mom)
virtual Bool_t GetAcceptMomentum(TLorentzVector &mom, Int_t i) const
virtual Bool_t GetMomentumFromParticle(TLorentzVector &mom, const AliAODMCParticle *track, Double_t mass) const
bool Bool_t
Definition: External.C:53
Container for MC-true particles within the EMCAL framework.
Allows to modify the tracks to implement toy models.