CMS 3D CMS Logo

RunPrincipal.cc
Go to the documentation of this file.
2 
6 
7 namespace edm {
9  std::shared_ptr<RunAuxiliary> aux,
10  std::shared_ptr<ProductRegistry const> reg,
11  ProcessConfiguration const& pc,
12  HistoryAppender* historyAppender,
13  unsigned int iRunIndex,
14  bool isForPrimaryProcess) :
15  Base(reg, reg->productLookup(InRun), pc, InRun, historyAppender, isForPrimaryProcess),
16  aux_(aux), index_(iRunIndex) {
17  }
18 
19  void
21  m_reducedHistoryID = processHistoryRegistry.reducedProcessHistoryID(aux_->processHistoryID());
22  fillPrincipal(aux_->processHistoryID(), processHistoryRegistry, reader);
23 
24  for(auto& prod : *this) {
25  prod->setProcessHistory(processHistory());
26  }
27  }
28 
29  void
31  BranchDescription const& bd,
32  std::unique_ptr<WrapperBase> edp) const {
33  putOrMerge(bd,std::move(edp));
34  }
35 
36  void
38  std::unique_ptr<WrapperBase> edp) const {
39  auto phb = getProductResolverByIndex(index);
40  phb->putOrMergeProduct(std::move(edp));
41  }
42 
43  unsigned int
45  return index().value();
46  }
47 
48 }
edm::propagate_const< std::shared_ptr< RunAuxiliary > > aux_
Definition: RunPrincipal.h:100
unsigned int transitionIndex_() const override
Definition: RunPrincipal.cc:44
unsigned int ProductResolverIndex
void put(BranchDescription const &bd, std::unique_ptr< WrapperBase > edp) const
Definition: RunPrincipal.cc:30
unsigned int value() const
Definition: RunIndex.h:50
void fillRunPrincipal(ProcessHistoryRegistry const &processHistoryRegistry, DelayedReader *reader=0)
Definition: RunPrincipal.cc:20
ProcessHistory const & processHistory() const
Definition: Principal.h:139
ProcessHistoryID m_reducedHistoryID
Definition: RunPrincipal.h:101
RunPrincipal(std::shared_ptr< RunAuxiliary > aux, std::shared_ptr< ProductRegistry const > reg, ProcessConfiguration const &pc, HistoryAppender *historyAppender, unsigned int iRunIndex, bool isForPrimaryProcess=true)
Definition: RunPrincipal.cc:8
void putOrMerge(BranchDescription const &bd, std::unique_ptr< WrapperBase > edp) const
Definition: Principal.cc:881
ProcessHistoryID const & reducedProcessHistoryID(ProcessHistoryID const &fullID) const
DelayedReader * reader() const
Definition: Principal.h:182
RunIndex index() const
Definition: RunPrincipal.h:53
HLT enums.
ConstProductResolverPtr getProductResolverByIndex(ProductResolverIndex const &oid) const
Definition: Principal.cc:520
void fillPrincipal(ProcessHistoryID const &hist, ProcessHistoryRegistry const &phr, DelayedReader *reader)
Definition: Principal.cc:367
def move(src, dest)
Definition: eostools.py:510