CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/GeneratorInterface/PartonShowerVeto/interface/JetMatchingMadgraph.h

Go to the documentation of this file.
00001 #ifndef GeneratorInterface_PartonShowerVeto_JetMatchingMadggraph_h
00002 #define GeneratorInterface_PartonShowerVeto_JetMatchingMadgraph_h
00003 
00004 #include "GeneratorInterface/PartonShowerVeto/interface/JetMatching.h"
00005 
00006 namespace gen
00007 {
00008 
00009 class JetMatchingMadgraph : public JetMatching {
00010     public:
00011         JetMatchingMadgraph(const edm::ParameterSet &params);
00012         ~JetMatchingMadgraph();
00013 
00014     private:
00015         void init(const lhef::LHERunInfo* runInfo);
00016         void beforeHadronisation(const lhef::LHEEvent* event);
00017         void beforeHadronisationExec();
00018 
00019         int match(const HepMC::GenEvent *partonLevel,
00020                   const HepMC::GenEvent *finalState,
00021                   bool showeredFinalState);
00022 
00023         std::set<std::string> capabilities() const;
00024 
00025         template<typename T>
00026         static T parseParameter(const std::string &value);
00027         template<typename T>
00028         static T getParameter(const std::map<std::string, std::string> &params,
00029                               const std::string &var, const T &defValue = T());
00030         template<typename T>
00031         T getParameter(const std::string &var, const T &defValue = T()) const;
00032 
00033         template<typename T>
00034         static void updateOrDie(
00035                         const std::map<std::string, std::string> &params,
00036                         T &param, const std::string &name);
00037 
00038         std::map<std::string, std::string>      mgParams;
00039 
00040         bool                                    runInitialized;
00041         bool                                    eventInitialized;
00042         bool                                    soup;
00043         bool                                    exclusive;
00044 };
00045 
00046 } // namespace gen
00047 
00048 
00049 #endif // GeneratorCommon_PartonShowerVeto_JetMatchingMadgraph_h