File indexing completed on 2024-04-06 12:23:26
0001 #ifndef PhysicsTools_Heppy_PdfWeightProducerTool_h
0002 #define PhysicsTools_Heppy_PdfWeightProducerTool_h
0003
0004 #include "TRandom3.h"
0005 #include <iostream>
0006
0007
0008
0009 #include <string>
0010 #include <vector>
0011 #include <map>
0012 #include "SimDataFormats/GeneratorProducts/interface/GenEventInfoProduct.h"
0013
0014 namespace heppy {
0015
0016 class PdfWeightProducerTool {
0017 public:
0018 PdfWeightProducerTool() {}
0019 void addPdfSet(const std::string &name);
0020 void beginJob();
0021 void processEvent(const GenEventInfoProduct &pdfstuff);
0022 const std::vector<double> &getWeights(const std::string &name) const;
0023
0024 private:
0025 std::vector<std::string> pdfs_;
0026 std::map<std::string, std::vector<double> > weights_;
0027 };
0028
0029 };
0030
0031 #endif