LHEProvenanceHelper

Macros

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
#ifndef FWCore_Sources_LHEProvenanceHelper_h
#define FWCore_Sources_LHEProvenanceHelper_h

#include "DataFormats/Provenance/interface/ProductDescription.h"
#include "DataFormats/Provenance/interface/ProcessHistoryID.h"
#include "DataFormats/Provenance/interface/ProductProvenance.h"
#include "DataFormats/Provenance/interface/BranchListIndex.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"

namespace lhef {
  class LHERunInfo;
}

namespace edm {
  class ProcessHistoryRegistry;
  class ProductRegistry;
  class TypeID;
  class BranchIDListHelper;
  struct LHEProvenanceHelper {
    explicit LHEProvenanceHelper(TypeID const& eventProductType,
                                 TypeID const& runProductType,
                                 ProductRegistry& productRegistry,
                                 BranchIDListHelper& helper);
    ParameterSet fillCommonProcessParameterSet();
    void lheAugment(lhef::LHERunInfo const* runInfo);
    ProcessHistoryID lheInit(ProcessHistoryRegistry& processHistoryRegistry);
    ProductDescription const eventProductProductDescription_;
    ProductDescription const runProductProductDescription_;
    ProductProvenance eventProductProvenance_;
    ParameterSet const commonProcessParameterSet_;
    ParameterSet processParameterSet_;
    BranchListIndexes branchListIndexes_;
  };
}  // namespace edm
#endif