Rivet  3.1.0
FinalState.hh
1 // -*- C++ -*-
2 #ifndef RIVET_FinalState_HH
3 #define RIVET_FinalState_HH
4 
5 #include "Rivet/Projections/ParticleFinder.hh"
6 
7 namespace Rivet {
8 
9 
12  class FinalState : public ParticleFinder {
13  public:
14 
16 
17 
19  FinalState(const Cut& c=Cuts::open());
20 
22  FinalState(const FinalState& fsp, const Cut& c);
23 
26 
28 
29 
31  virtual void project(const Event& e);
32 
34  virtual CmpState compare(const Projection& p) const;
35 
38  virtual bool accept(const Particle& p) const;
39 
40 
41  private:
42 
43  // Hide lossy copy constructors for all classes derived from FinalState
44  template<typename T> FinalState(const T& rhs);
45  template<typename T> FinalState const& operator=(T const& rhs);
46 
47  };
48 
49 
50 }
51 
52 #endif
Definition: MC_Cent_pPb.hh:10
DEFAULT_RIVET_PROJ_CLONE(FinalState)
Clone on the heap.
FinalState(const Cut &c=Cuts::open())
Construction using Cuts object.
const Cut & open()
Fully open cut singleton, accepts everything.
Particle representation, either from a HepMC::GenEvent or reconstructed.
Definition: Particle.hh:18
Base class for projections which return subsets of an event&#39;s particles.
Definition: ParticleFinder.hh:11
Representation of a HepMC event, and enabler of Projection caching.
Definition: Event.hh:22
virtual CmpState compare(const Projection &p) const
Compare projections.
Project out all final-state particles in an event. Probably the most important projection in Rivet! ...
Definition: FinalState.hh:12
virtual bool accept(const Particle &p) const
virtual void project(const Event &e)
Apply the projection to the event.
Base class for all Rivet projections.
Definition: Projection.hh:29