Particle.hh
Go to the documentation of this file.
1 
4 #pragma once
5 
8 
9 namespace boca
10 {
11 
12 class Particle : public PseudoJet
13  , public boost::addable<Particle>
14  , public boost::subtractable<Particle>
15  , public boost::multipliable<Particle, double>
16  , public boost::dividable<Particle, double>
17 {
18 
19 public:
20 
21  Particle();
22 
23 // Particle(double x, double y, double z, double e);
24 
25  Particle(fastjet::PseudoJet const& jet);
26 
27  Particle(TLorentzVector const& vector, Family const& family);
28 
29  Particle(exroot::GenParticle const& particle, int id);
30 
31  Particle(exroot::LHEFParticle const& particle, int id);
32 
33  ParticleInfo const& Info() const;
34 
35  ParticleInfo& Info();
36 
37  bool HasParticleInfo() const;
38 
47  Particle& operator+=(Particle const& pseudo_jet);
48 
52  Particle& operator-=(const Particle &pseudo_jet);
53 
57  Particle& operator*=(double scalar);
58 
62  Particle& operator/=(double scalar);
63 
65 
66 private:
67 
68  void SetInfo(ParticleInfo const& info = ParticleInfo());
69 
70 };
71 
72 std::vector<Particle> ParticleVector(std::vector<fastjet::PseudoJet> const& pseudo_jets);
73 
74 }
Particle()
Definition: Particle.cpp:13
Definition: ExRootClasses.h:84
Definition: Family.hh:38
Definition: Particle.hh:12
Particle & operator-=(const Particle &pseudo_jet)
subtract the other jet&#39;s momentum from this jet
Definition: Particle.cpp:91
ParticleInfo const & Info() const
Definition: Particle.cpp:47
Wrapper for fastjet::PseudoJet adding BoCA related functions.
Definition: PseudoJet.hh:30
Particle & operator*=(double scalar)
multiply the jet&#39;s momentum by the coefficient
Definition: Particle.cpp:97
Definition: ExRootClasses.h:134
Boosted Collider Analysis.
Definition: Analysis.hh:15
Particle & operator/=(double scalar)
divide the jet&#39;s momentum by the coefficient
Definition: Particle.cpp:103
Jet infos subclassed from Fastjet.
Definition: ParticleInfo.hh:17
std::vector< Particle > ParticleVector(std::vector< fastjet::PseudoJet > const &pseudo_jets)
Definition: Particle.cpp:71
Particle & operator+=(Particle const &pseudo_jet)
add the other jet&#39;s momentum to this jet
Definition: Particle.cpp:85
bool HasParticleInfo() const
Definition: Particle.cpp:79