rivet is hosted by Hepforge, IPPP Durham
Rivet 4.0.0
FinalState.hh
1// -*- C++ -*-
2#ifndef RIVET_FinalState_HH
3#define RIVET_FinalState_HH
4
5#include "Rivet/Projections/ParticleFinder.hh"
6
7namespace Rivet {
8
9
12 class FinalState : public ParticleFinder {
13 public:
14
17
19 FinalState(const Cut& c=Cuts::OPEN);
20
22 FinalState(const FinalState& fsp, const Cut& c);
23
26
28
29
31 using Projection::operator =;
32
33
35 virtual void project(const Event& e);
36
38 virtual CmpState compare(const Projection& p) const;
39
42 virtual bool accept(const Particle& p) const;
43
44
45 private:
46
47 // Hide lossy copy constructors for all classes derived from FinalState
49 template<typename T>
50 FinalState(const T& rhs) = delete;
51 template<typename T>
52 const FinalState& operator=(const T& rhs) = delete;
53
54 };
55
56
57}
58
59#endif
Representation of a HepMC event, and enabler of Projection caching.
Definition Event.hh:22
Project out all final-state particles in an event. Probably the most important projection in Rivet!
Definition FinalState.hh:12
virtual void project(const Event &e)
Apply the projection to the event.
FinalState(const Cut &c=Cuts::OPEN)
Construction using Cuts object.
virtual CmpState compare(const Projection &p) const
Compare projections.
FinalState(const FinalState &fsp, const Cut &c)
Construction using another FinalState and a Cuts object.
RIVET_DEFAULT_PROJ_CLONE(FinalState)
Clone on the heap.
virtual bool accept(const Particle &p) const
Base class for projections which return subsets of an event's particles.
Definition ParticleFinder.hh:11
Particle representation, either from a HepMC::GenEvent or reconstructed.
Definition Particle.hh:45
Base class for all Rivet projections.
Definition Projection.hh:29
Definition MC_CENT_PPB_Projections.hh:10