FinalState.hh
Go to the documentation of this file.
00001 // -*- C++ -*- 00002 #ifndef RIVET_FinalState_HH 00003 #define RIVET_FinalState_HH 00004 00005 #include "Rivet/Projections/ParticleFinder.hh" 00006 #include "Rivet/Cuts.hh" 00007 00008 namespace Rivet { 00009 00010 /// @brief Project out all final-state particles in an event. 00011 /// Probably the most important projection in Rivet! 00012 class FinalState : public ParticleFinder { 00013 private: 00014 // hide lossy copy constructors for all classes derived from FinalState 00015 template<typename T> FinalState(const T& rhs); 00016 template<typename T> FinalState const& operator=(T const& rhs); 00017 00018 public: 00019 00020 /// @name Standard constructors etc. 00021 //@{ 00022 00023 /// Construction using Cuts object 00024 FinalState(const Cut& c=Cuts::open()); 00025 00026 /// Old constructor with numeric cut arguments, retained for compatibility 00027 /// @deprecated Use the versions with Cut arguments 00028 //DEPRECATED("Use the versions with Cut arguments") 00029 FinalState(double mineta, double maxeta, double minpt=0.0*GeV); 00030 00031 /// Clone on the heap. 00032 virtual const Projection* clone() const { 00033 return new FinalState(*this); 00034 } 00035 00036 //@} 00037 00038 00039 /// Apply the projection to the event. 00040 virtual void project(const Event& e); 00041 00042 /// Compare projections. 00043 virtual int compare(const Projection& p) const; 00044 00045 /// Decide if a particle is to be accepted or not. 00046 /// @todo Rename to _accept or acceptFinal? 00047 virtual bool accept(const Particle& p) const; 00048 00049 }; 00050 00051 00052 } 00053 00054 #endif Generated on Thu Mar 10 2016 08:29:50 for The Rivet MC analysis system by ![]() |