7 #ifndef LHAPDF_Factories_H
8 #define LHAPDF_Factories_H
36 PDF*
mkPDF(
const std::string& setname,
int member);
42 PDF*
mkPDF(
int lhaid);
55 PDF*
mkPDF(
const std::string& setname_nmem);
78 PDFSet&
getPDFSet(
const std::string& setname);
81 void mkPDFs(
const std::string& setname, std::vector<PDF*>& pdfs);
84 std::vector<PDF*>
mkPDFs(
const std::string& setname);
89 template <
typename PTR>
90 void mkPDFs(
const std::string& setname, std::vector<PTR>& pdfs) {
91 std::vector<PDF*> rawptrs;
94 pdfs.reserve(rawptrs.size());
96 for (
size_t i = 0; i < rawptrs.size(); ++i) pdfs.push_back(PTR(rawptrs[i]));
121 PDFInfo*
mkPDFInfo(
const std::string& setname,
int member);
170 AlphaS*
mkAlphaS(
const std::string& setname);
179 AlphaS*
mkAlphaS(
const std::string& setname,
int member);
PDFSet & getPDFSet(const std::string &setname)
PDF * mkPDF(const std::string &setname, int member)
Extrapolator * mkExtrapolator(const std::string &name)
PDFInfo * mkPDFInfo(const std::string &setname, int member)
AlphaS * mkAlphaS(const Info &info)
Make an AlphaS object from an Info object.
void mkPDFs(const std::string &setname, std::vector< PDF * > &pdfs)
Get all PDFs in a named set (return by filling the supplied vector).
Interpolator * mkInterpolator(const std::string &name)
AlphaS * mkBareAlphaS(const std::string &type)
Make an AlphaS object of the requested type without a PDF reference.