7 #include <HepMC/GenEvent.h>
24 extern void alveto_(
int* ipveto);
35 :
JetMatching(params), applyMatching(params.getParameter<bool>(
"applyMatching")), runInitialized(
false) {
45 std::set<std::string>
result;
46 result.insert(
"psFinalState");
47 result.insert(
"hepevt");
48 result.insert(
"pythia6");
56 std::vector<std::string> headerLines = runInfo->
findHeader(
"AlpgenUnwParFile");
57 if (headerLines.empty())
58 throw cms::Exception(
"Generator|PartonShowerVeto") <<
"In order to use Alpgen jet matching, "
59 "the input file has to contain the corresponding "
64 header.
parse(headerLines.begin(), headerLines.end());
98 for (std::map<AlpgenHeader::Parameter, double>::const_iterator iter =
header.
params.begin();
116 throw cms::Exception(
"Generator|PartonShowerVeto") <<
"Run not initialized in JetMatchingAlpgen" << std::endl;
142 throw cms::Exception(
"Generator|PartonShowerVeto") <<
"Run not initialized in JetMatchingAlpgen" << std::endl;
145 throw cms::Exception(
"Generator|PartonShowerVeto") <<
"Event not initialized in JetMatchingAlpgen" << std::endl;
166 std::memcpy(csho,
"PYT", 3);
void beforeHadronisation(const lhef::LHEEvent *event) override
JetMatchingAlpgen(const edm::ParameterSet ¶ms)
void alshcd_(char csho[3])
~JetMatchingAlpgen() override
void init(const lhef::LHERunInfo *runInfo) override
int match(const lhef::LHEEvent *partonLevel, const std::vector< fastjet::PseudoJet > *jetInput) override
T getParameter(std::string const &) const
static const unsigned int nparam
std::set< std::string > capabilities() const override
std::vector< std::string > findHeader(const std::string &tag) const
void alveto_(int *ipveto)