NonPromptFinalState.hh
Go to the documentation of this file.
00001 // -*- C++ -*- 00002 #ifndef RIVET_NonPromptFinalState_HH 00003 #define RIVET_NonPromptFinalState_HH 00004 00005 #include "Rivet/Projections/FinalState.hh" 00006 00007 namespace Rivet { 00008 00009 00010 /// @brief Find final state particles NOT directly connected to the hard process. 00011 /// 00012 /// See PromptFinalState for details. 00013 class NonPromptFinalState : public FinalState { 00014 public: 00015 00016 /// @name Constructors 00017 //@{ 00018 00019 // Constructor from a final state. 00020 NonPromptFinalState(const FinalState& fsp, bool accepttaudecays=false, bool acceptmudecays=false); 00021 00022 /// Constructor from a Cut (and implicit general FS). 00023 NonPromptFinalState(const Cut& c, bool accepttaudecays=false, bool acceptmudecays=false); 00024 00025 // /// Constructor from a Cut and optional FinalState. 00026 // NonPromptFinalState(const Cut& c, const FinalState& fsp=FinalState(), 00027 // bool accepttaudecays=false, bool acceptmudecays=false); 00028 00029 /// Clone on the heap. 00030 DEFAULT_RIVET_PROJ_CLONE(NonPromptFinalState); 00031 00032 //@} 00033 00034 /// Treat particles from decays of prompt muons as non-prompt? 00035 void acceptMuonDecays(bool acc=true) { _acceptMuDecays = acc; } 00036 /// Treat particles from decays of prompt taus as non-prompt? 00037 void acceptTauDecays(bool acc=true) { _acceptTauDecays = acc; } 00038 00039 00040 protected: 00041 00042 /// Apply the projection on the supplied event. 00043 void project(const Event& e); 00044 00045 /// Compare projections. 00046 int compare(const Projection& p) const; 00047 00048 private: 00049 00050 bool _acceptMuDecays, _acceptTauDecays; 00051 00052 }; 00053 00054 } 00055 00056 00057 #endif Generated on Tue Dec 13 2016 16:32:39 for The Rivet MC analysis system by ![]() |