rivet is hosted by Hepforge, IPPP Durham
ChargedFinalState.hh
Go to the documentation of this file.
00001 // -*- C++ -*-
00002 #ifndef RIVET_ChargedFinalState_HH
00003 #define RIVET_ChargedFinalState_HH
00004 
00005 #include "Rivet/Projections/FinalState.hh"
00006 
00007 namespace Rivet {
00008 
00009 
00010   /// @brief Project only charged final state particles.
00011   class ChargedFinalState : public FinalState {
00012   public:
00013 
00014     /// @name Constructors
00015     //@{
00016 
00017     /// Construction from another FinalState
00018     ChargedFinalState(const FinalState& fsp);
00019 
00020     /// Construction using Cuts object
00021     ChargedFinalState(const Cut& c=Cuts::open());
00022 
00023     /// Single eta-range constructor.
00024     ChargedFinalState(double mineta, double maxeta, double minpt=0*GeV);
00025 
00026     /// Clone on the heap.
00027     DEFAULT_RIVET_PROJ_CLONE(ChargedFinalState);
00028 
00029     //@}
00030 
00031 
00032   protected:
00033 
00034     /// Apply the projection on the supplied event.
00035     void project(const Event& e);
00036 
00037     /// Compare projections.
00038     int compare(const Projection& p) const;
00039   };
00040 
00041 
00042 }
00043 
00044 
00045 #endif