CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_7/src/GeneratorInterface/PartonShowerVeto/interface/JetMatchingMadgraph.h

Go to the documentation of this file.
00001 #ifndef GeneratorInterface_PartonShowerVeto_JetMatchingMadgraph_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     protected:
00015         virtual void init(const lhef::LHERunInfo* runInfo);
00016         virtual void beforeHadronisation(const lhef::LHEEvent* event);
00017         virtual void beforeHadronisationExec();
00018 
00019         virtual int match( const lhef::LHEEvent* partonLevel, const std::vector<fastjet::PseudoJet>* jetInput );
00020         
00021         virtual double                  getJetEtaMax() const;
00022         
00023 /*
00024         int match(const HepMC::GenEvent *partonLevel,
00025                   const HepMC::GenEvent *finalState,
00026                   bool showeredFinalState);
00027 */
00028         std::set<std::string> capabilities() const;
00029 
00030         template<typename T>
00031         static T parseParameter(const std::string &value);
00032         template<typename T>
00033         static T getParameter(const std::map<std::string, std::string> &params,
00034                               const std::string &var, const T &defValue = T());
00035         template<typename T>
00036         T getParameter(const std::string &var, const T &defValue = T()) const;
00037 
00038         template<typename T>
00039         static void updateOrDie(
00040                         const std::map<std::string, std::string> &params,
00041                         T &param, const std::string &name);
00042 
00043         std::map<std::string, std::string>      mgParams;
00044 
00045         bool                                    runInitialized;
00046         bool                                    eventInitialized;
00047         bool                                    soup;
00048         bool                                    exclusive;
00049 };
00050 
00051 } // namespace gen
00052 
00053 
00054 #endif // GeneratorInterface_PartonShowerVeto_JetMatchingMadgraph_h