DISFinalState.hh
Go to the documentation of this file.
00001 // -*- C++ -*- 00002 #ifndef RIVET_DISFinalState_HH 00003 #define RIVET_DISFinalState_HH 00004 00005 #include "Rivet/Projections/FinalState.hh" 00006 #include "Rivet/Projections/DISKinematics.hh" 00007 00008 namespace Rivet { 00009 00010 00011 /// @brief Final state particles boosted to the hadronic center of mass system. 00012 /// 00013 /// NB. The DIS scattered lepton is not included in the final state particles. 00014 class DISFinalState: public FinalState { 00015 public: 00016 00017 /// Type of DIS boost to apply 00018 enum BoostType { HCM, BREIT }; 00019 00020 00021 /// @name Constructors 00022 //@{ 00023 00024 /// Constructor 00025 DISFinalState(const DISKinematics& kinematicsp, BoostType boosttype) 00026 : _boosttype(boosttype) 00027 { 00028 setName("DISFinalState"); 00029 addProjection(kinematicsp, "Kinematics"); 00030 } 00031 00032 /// Clone on the heap. 00033 DEFAULT_RIVET_PROJ_CLONE(DISFinalState); 00034 00035 //@} 00036 00037 00038 protected: 00039 00040 /// Apply the projection on the supplied event. 00041 void project(const Event& e); 00042 00043 /// Compare projections. 00044 int compare(const Projection& p) const { 00045 const DISFinalState& other = dynamic_cast<const DISFinalState&>(p); 00046 return mkNamedPCmp(p, "Kinematics") || cmp(_boosttype, other._boosttype); 00047 } 00048 00049 00050 private: 00051 00052 BoostType _boosttype; 00053 00054 }; 00055 00056 00057 } 00058 00059 #endif Generated on Tue Dec 13 2016 16:32:37 for The Rivet MC analysis system by ![]() |