eic-smear
1.0.3
A collection of ROOT classes for Monte Carlo events and a fast-smearing code simulating detector effects for the Electron-Ion Collider task force
|
Go to the documentation of this file.
10 #ifndef INCLUDE_EICSMEAR_SMEAR_ACCEPTANCE_H_
11 #define INCLUDE_EICSMEAR_SMEAR_ACCEPTANCE_H_
25 class VirtualParticle;
48 CustomCut(
const TString&,
double min,
double max);
73 Zone(
double theta = 0.,
double = TMath::Pi(),
74 double phi = 0.,
double = TMath::TwoPi(),
75 double E = 0.,
double = TMath::Infinity(),
76 double p = 0.,
double = TMath::Infinity(),
77 double pt = 0.,
double = TMath::Infinity(),
78 double pz = -TMath::Infinity(),
double = TMath::Infinity());
192 #endif // INCLUDE_EICSMEAR_SMEAR_ACCEPTANCE_H_
Acceptance(int genre=kAll)
Default constructor.
bool Is(const erhic::VirtualParticle &prt) const
This function determines if the particle provided lies within the acceptance of the detector.
UInt_t GetNZones() const
Returns the number of acceptance zones.
virtual void Add(const CustomCut &)
Add a CustomCut to the list of acceptance tests.
void AddParticle(int particle)
Add a particle type to the list of particles to be smeared.
std::vector< Smear::Acceptance::CustomCut > CustomCuts
A single contiguous region of acceptance.
virtual ~Zone()
Destructor.
Defines a range of acceptance in one or more of: theta, phi, E, p, pt, pz.
std::set< int > mParticles
void SetGenre(int genre)
Select the class(es) of particles to accept.
void SetCharge(ECharge charge)
Select the charges of particles to accept.
Abstract base class for a general particle.
ECharge GetCharge() const
Returns the charge of particles to accept.
virtual Bool_t Contains(const erhic::VirtualParticle &) const
Returns true if the particle lies in this zone, false if not.
virtual ~Acceptance()
Destructor.
A (min, max) range in some variable evaluated as an arbitrary function of theta, phi,...
std::vector< Zone > mZones
Zone(double theta=0., double=TMath::Pi(), double phi=0., double=TMath::TwoPi(), double E=0., double=TMath::Infinity(), double p=0., double=TMath::Infinity(), double pt=0., double=TMath::Infinity(), double pz=-TMath::Infinity(), double=TMath::Infinity())
Constructor.
void AddZone(const Zone &)
Add a new zone with user-specified coverage.
KinType
Enumerator listing particle wise kinematic variables.
Int_t GetGenre() const
Returns the "genre" of the particle (em, hadronic or all).
virtual bool Contains(const erhic::VirtualParticle &) const