File indexing completed on 2025-01-31 02:19:36
0001 #ifndef FWCore_Sources_LHEProvenanceHelper_h
0002 #define FWCore_Sources_LHEProvenanceHelper_h
0003
0004 #include "DataFormats/Provenance/interface/ProductDescription.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 ProductDescription const eventProductProductDescription_;
0028 ProductDescription const runProductProductDescription_;
0029 ProductProvenance eventProductProvenance_;
0030 ParameterSet const commonProcessParameterSet_;
0031 ParameterSet processParameterSet_;
0032 BranchListIndexes branchListIndexes_;
0033 };
0034 }
0035 #endif