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
PerfectID.h
Go to the documentation of this file.
1 
10 #ifndef INCLUDE_EICSMEAR_SMEAR_PERFECTID_H_
11 #define INCLUDE_EICSMEAR_SMEAR_PERFECTID_H_
12 
13 #include <set>
14 #include <vector>
15 
16 #include "eicsmear/smear/Smearer.h"
17 
18 namespace Smear {
19 
27 class PerfectID : public Smearer {
28  public:
35  PerfectID(const std::vector<Int_t>& pdg = std::vector<int>());
36 
40  virtual ~PerfectID();
41 
46  virtual PerfectID* Clone(const char* = "") const;
47 
53  virtual void Smear(const erhic::VirtualParticle&, ParticleMCS&);
54 
58  virtual void Print(Option_t* = "") const;
59 
63  virtual void Insert(Int_t);
64 
65  protected:
67  std::set<Int_t> mPdg;
68 
69  ClassDef(Smear::PerfectID, 1)
70 };
71 
72 } // namespace Smear
73 
74 #endif // INCLUDE_EICSMEAR_SMEAR_PERFECTID_H_
Smear
Definition: Acceptance.cxx:16
Smear::PerfectID::PerfectID
PerfectID(const std::vector< Int_t > &pdg=std::vector< int >())
Constructor.
Definition: PerfectID.cxx:40
Smear::PerfectID::mPdg
std::set< Int_t > mPdg
PDG codes to copy. Does not operate on particles with other codes.
Definition: PerfectID.h:67
erhic::VirtualParticle
Abstract base class for a general particle.
Definition: VirtualParticle.h:23
Smearer.h
Smear::Smearer
Abstract base class for objects performing smearing.
Definition: Smearer.h:33
Smear::ParticleMCS
A smeared Monte Carlo particle.
Definition: ParticleMCS.h:27
Smear::PerfectID::Print
virtual void Print(Option_t *="") const
Prints information about this object.
Definition: PerfectID.cxx:60
Smear::PerfectID::Smear
virtual void Smear(const erhic::VirtualParticle &, ParticleMCS &)
Copies the PDG code from the ParticleMC to the ParticleMCS if either the PDG code is in the initialis...
Definition: PerfectID.cxx:47
Smear::PerfectID::Insert
virtual void Insert(Int_t)
Add a PDG code to the list.
Definition: PerfectID.cxx:78
Smear::PerfectID
Smearer that copies the PDG ID of a particle to a smeared particle with no modification.
Definition: PerfectID.h:27
Smear::PerfectID::~PerfectID
virtual ~PerfectID()
Destructor.
Definition: PerfectID.cxx:44
Smear::PerfectID::Clone
virtual PerfectID * Clone(const char *="") const
Returns a new copy of this object.
Definition: PerfectID.cxx:56