Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:13:50

0001 #ifndef FWCore_Sources_LHEProvenanceHelper_h
0002 #define FWCore_Sources_LHEProvenanceHelper_h
0003 
0004 #include "DataFormats/Provenance/interface/BranchDescription.h"
0005 #include "DataFormats/Provenance/interface/ProcessHistoryID.h"
0006 #include "DataFormats/Provenance/interface/ProductProvenance.h"
0007 #include "DataFormats/Provenance/interface/BranchListIndex.h"
0008 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0009 
0010 namespace lhef {
0011   class LHERunInfo;
0012 }
0013 
0014 namespace edm {
0015   class ProcessHistoryRegistry;
0016   class ProductRegistry;
0017   class TypeID;
0018   class BranchIDListHelper;
0019   struct LHEProvenanceHelper {
0020     explicit LHEProvenanceHelper(TypeID const& eventProductType,
0021                                  TypeID const& runProductType,
0022                                  ProductRegistry& productRegistry,
0023                                  BranchIDListHelper& helper);
0024     ParameterSet fillCommonProcessParameterSet();
0025     void lheAugment(lhef::LHERunInfo const* runInfo);
0026     ProcessHistoryID lheInit(ProcessHistoryRegistry& processHistoryRegistry);
0027     BranchDescription const eventProductBranchDescription_;
0028     BranchDescription const runProductBranchDescription_;
0029     ProductProvenance eventProductProvenance_;
0030     ParameterSet const commonProcessParameterSet_;
0031     ParameterSet processParameterSet_;
0032     BranchListIndexes branchListIndexes_;
0033   };
0034 }  // namespace edm
0035 #endif