CMS 3D CMS Logo

LuminosityBlockPrincipal.cc
Go to the documentation of this file.
2 
4 
5 namespace edm {
6 
8  std::shared_ptr<ProductRegistry const> reg,
9  ProcessConfiguration const& pc,
10  HistoryAppender* historyAppender,
11  unsigned int index,
12  bool isForPrimaryProcess) :
13  Base(reg, reg->productLookup(InLumi), pc, InLumi, historyAppender, isForPrimaryProcess),
14  runPrincipal_(),
15  index_(index) {
16  }
17 
18  void
20  ProcessHistoryRegistry const& processHistoryRegistry,
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 }
unsigned int ProductResolverIndex
void put(BranchDescription const &bd, std::unique_ptr< WrapperBase > edp) const
unsigned int transitionIndex_() const override
ProcessHistoryID const & processHistoryID() const
LuminosityBlockIndex index() const
ProcessHistory const & processHistory() const
Definition: Principal.h:139
void fillLuminosityBlockPrincipal(ProcessHistoryRegistry const &processHistoryRegistry, DelayedReader *reader=0)
void putOrMerge(BranchDescription const &bd, std::unique_ptr< WrapperBase > edp) const
Definition: Principal.cc:874
LuminosityBlockPrincipal(std::shared_ptr< ProductRegistry const > reg, ProcessConfiguration const &pc, HistoryAppender *historyAppender, unsigned int index, bool isForPrimaryProcess=true)
unsigned int value() const
DelayedReader * reader() const
Definition: Principal.h:182
HLT enums.
ConstProductResolverPtr getProductResolverByIndex(ProductResolverIndex const &oid) const
Definition: Principal.cc:513
void fillPrincipal(ProcessHistoryID const &hist, ProcessHistoryRegistry const &phr, DelayedReader *reader)
Definition: Principal.cc:360
def move(src, dest)
Definition: eostools.py:510