CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | Friends
edm::LuminosityBlock Class Reference

#include <LuminosityBlock.h>

Inheritance diagram for edm::LuminosityBlock:
edm::LuminosityBlockBase

Public Types

typedef unsigned long CacheIdentifier_t
 

Public Member Functions

CacheIdentifier_t cacheIdentifier () const
 
void getAllProvenance (std::vector< Provenance const * > &provenances) const
 
template<typename PROD >
bool getByLabel (std::string const &label, Handle< PROD > &result) const
 
template<typename PROD >
bool getByLabel (std::string const &label, std::string const &productInstanceName, Handle< PROD > &result) const
 
template<typename PROD >
bool getByLabel (InputTag const &tag, Handle< PROD > &result) const
 same as above, but using the InputTag class More...
 
template<typename PROD >
bool getByToken (EDGetToken token, Handle< PROD > &result) const
 
template<typename PROD >
bool getByToken (EDGetTokenT< PROD > token, Handle< PROD > &result) const
 
template<typename PROD >
void getManyByType (std::vector< Handle< PROD > > &results) const
 
Provenance getProvenance (BranchID const &theID) const
 
Run const & getRun () const
 
LuminosityBlockIndex index () const
 
 LuminosityBlock (LuminosityBlockPrincipal &lbp, ModuleDescription const &md, ModuleCallingContext const *)
 
LuminosityBlockAuxiliary const & luminosityBlockAuxiliary () const
 
ModuleCallingContext const * moduleCallingContext () const
 
ProcessHistory const & processHistory () const
 
ProcessHistoryID const & processHistoryID () const
 
template<typename PROD >
void put (std::auto_ptr< PROD > product)
 Put a new product. More...
 
template<typename PROD >
void put (std::unique_ptr< PROD > product)
 
template<typename PROD >
void put (std::auto_ptr< PROD > product, std::string const &productInstanceName)
 Put a new product with a 'product instance name'. More...
 
template<typename PROD >
void put (std::unique_ptr< PROD > product, std::string const &productInstanceName)
 
void setConsumer (EDConsumerBase const *iConsumer)
 
 ~LuminosityBlock ()
 
- Public Member Functions inherited from edm::LuminosityBlockBase
Timestamp const & beginTime () const
 
Timestamp const & endTime () const
 
template<typename PROD >
bool getByLabel (InputTag const &tag, Handle< PROD > &result) const
 same as above, but using the InputTag class More...
 
template<class T >
bool getByLabel (const InputTag &tag, Handle< T > &result) const
 
LuminosityBlockID id () const
 
LuminosityBlockNumber_t luminosityBlock () const
 
 LuminosityBlockBase ()
 
RunNumber_t run () const
 
virtual ~LuminosityBlockBase ()
 

Private Types

typedef std::set< BranchIDBranchIDSet
 
typedef std::vector< std::pair
< std::unique_ptr< WrapperBase >
, BranchDescription const * > > 
ProductPtrVec
 

Private Member Functions

void addToGotBranchIDs (Provenance const &prov) const
 
void commit_ ()
 
virtual BasicHandle getByLabelImpl (std::type_info const &iWrapperType, std::type_info const &iProductType, InputTag const &iTag) const
 
LuminosityBlockPrincipal const & luminosityBlockPrincipal () const
 
LuminosityBlockPrincipalluminosityBlockPrincipal ()
 
ProductPtrVecputProducts ()
 
ProductPtrVec const & putProducts () const
 

Private Attributes

LuminosityBlockAuxiliary const & aux_
 
BranchIDSet gotBranchIDs_
 
ModuleCallingContext const * moduleCallingContext_
 
PrincipalGetAdapter provRecorder_
 
ProductPtrVec putProducts_
 
std::shared_ptr< Run const > const run_
 

Static Private Attributes

static const std::string emptyString_
 

Friends

class InputSource
 
class ProducerBase
 
class RawInputSource
 
template<typename T >
class stream::ProducingModuleAdaptorBase
 

Detailed Description

Definition at line 43 of file LuminosityBlock.h.

Member Typedef Documentation

typedef std::set<BranchID> edm::LuminosityBlock::BranchIDSet
private

Definition at line 163 of file LuminosityBlock.h.

If you are caching data from the LuminosityBlock, you should also keep this number. If this number changes then you know that the data you have cached is invalid. The value of '0' will never be returned so you can use that to denote that you have not yet checked the value.

Definition at line 62 of file LuminosityBlock.h.

typedef std::vector<std::pair<std::unique_ptr<WrapperBase>, BranchDescription const*> > edm::LuminosityBlock::ProductPtrVec
private

Definition at line 142 of file LuminosityBlock.h.

Constructor & Destructor Documentation

LuminosityBlock::LuminosityBlock ( LuminosityBlockPrincipal lbp,
ModuleDescription const &  md,
ModuleCallingContext const *  moduleCallingContext 
)

Definition at line 11 of file LuminosityBlock.cc.

12  :
13  provRecorder_(lbp, md),
14  aux_(lbp.aux()),
15  run_(new Run(lbp.runPrincipal(), md, moduleCallingContext)),
17  }
std::shared_ptr< Run const > const run_
ModuleCallingContext const * moduleCallingContext() const
LuminosityBlockAuxiliary const & aux_
ModuleCallingContext const * moduleCallingContext_
PrincipalGetAdapter provRecorder_
LuminosityBlock::~LuminosityBlock ( )

Definition at line 19 of file LuminosityBlock.cc.

19  {
20  }

Member Function Documentation

void LuminosityBlock::addToGotBranchIDs ( Provenance const &  prov) const
private

Definition at line 85 of file LuminosityBlock.cc.

References edm::Provenance::branchID(), and gotBranchIDs_.

Referenced by getByLabelImpl().

85  {
86  gotBranchIDs_.insert(prov.branchID());
87  }
LuminosityBlock::CacheIdentifier_t LuminosityBlock::cacheIdentifier ( ) const

Definition at line 28 of file LuminosityBlock.cc.

References edm::Principal::cacheIdentifier(), and luminosityBlockPrincipal().

LuminosityBlockPrincipal const & luminosityBlockPrincipal() const
CacheIdentifier_t cacheIdentifier() const
Definition: Principal.h:169
void LuminosityBlock::commit_ ( )
private

Definition at line 60 of file LuminosityBlock.cc.

References begin, end, luminosityBlockPrincipal(), eostools::move(), edm::LuminosityBlockPrincipal::put(), and putProducts().

Referenced by edm::stream::ProducingModuleAdaptorBase< EDProducerBase >::commit(), edm::InputSource::doBeginLumi(), and edm::InputSource::doEndLumi().

60  {
61  LuminosityBlockPrincipal& lbp = luminosityBlockPrincipal();
62  ProductPtrVec::iterator pit(putProducts().begin());
63  ProductPtrVec::iterator pie(putProducts().end());
64 
65  while(pit != pie) {
66  lbp.put(*pit->second, std::move(pit->first));
67  ++pit;
68  }
69 
70  // the cleanup is all or none
71  putProducts().clear();
72  }
LuminosityBlockPrincipal const & luminosityBlockPrincipal() const
def move
Definition: eostools.py:508
#define end
Definition: vmac.h:37
ProductPtrVec & putProducts()
#define begin
Definition: vmac.h:30
void LuminosityBlock::getAllProvenance ( std::vector< Provenance const * > &  provenances) const

Definition at line 55 of file LuminosityBlock.cc.

References edm::Principal::getAllProvenance(), and luminosityBlockPrincipal().

55  {
57  }
LuminosityBlockPrincipal const & luminosityBlockPrincipal() const
void getAllProvenance(std::vector< Provenance const * > &provenances) const
Definition: Principal.cc:769
template<typename PROD >
bool LuminosityBlock::getByLabel ( std::string const &  label,
Handle< PROD > &  result 
) const
template<typename PROD >
bool LuminosityBlock::getByLabel ( std::string const &  label,
std::string const &  productInstanceName,
Handle< PROD > &  result 
) const

Definition at line 209 of file LuminosityBlock.h.

References edm::PrincipalGetAdapter::checkIfComplete(), edm::HandleBase::clear(), edm::convert_handle(), emptyString_, edm::HandleBase::failedToGet(), edm::PrincipalGetAdapter::getByLabel_(), moduleCallingContext_, eostools::move(), PROD, provRecorder_, and edm::principal_get_adapter_detail::throwOnPrematureRead().

211  {
213  principal_get_adapter_detail::throwOnPrematureRead("Lumi", TypeID(typeid(PROD)), label, productInstanceName);
214  }
215  result.clear();
216  BasicHandle bh = provRecorder_.getByLabel_(TypeID(typeid(PROD)), label, productInstanceName, emptyString_, moduleCallingContext_);
217  convert_handle(std::move(bh), result); // throws on conversion error
218  if (result.failedToGet()) {
219  return false;
220  }
221  return true;
222  }
BasicHandle getByLabel_(TypeID const &tid, InputTag const &tag, ModuleCallingContext const *mcc) const
static const std::string emptyString_
def move
Definition: eostools.py:508
void convert_handle(BasicHandle &&bh, Handle< T > &result)
Definition: ConvertHandle.h:20
ModuleCallingContext const * moduleCallingContext_
PrincipalGetAdapter provRecorder_
#define PROD(A, B)
void throwOnPrematureRead(char const *principalType, TypeID const &productType, std::string const &moduleLabel, std::string const &productInstanceName)
template<typename PROD >
bool LuminosityBlock::getByLabel ( InputTag const &  tag,
Handle< PROD > &  result 
) const

same as above, but using the InputTag class

Definition at line 227 of file LuminosityBlock.h.

References edm::PrincipalGetAdapter::checkIfComplete(), edm::HandleBase::clear(), edm::convert_handle(), edm::HandleBase::failedToGet(), edm::PrincipalGetAdapter::getByLabel_(), edm::InputTag::instance(), edm::InputTag::label(), moduleCallingContext_, eostools::move(), PROD, provRecorder_, and edm::principal_get_adapter_detail::throwOnPrematureRead().

227  {
229  principal_get_adapter_detail::throwOnPrematureRead("Lumi", TypeID(typeid(PROD)), tag.label(), tag.instance());
230  }
231  result.clear();
232  BasicHandle bh = provRecorder_.getByLabel_(TypeID(typeid(PROD)), tag, moduleCallingContext_);
233  convert_handle(std::move(bh), result); // throws on conversion error
234  if (result.failedToGet()) {
235  return false;
236  }
237  return true;
238  }
BasicHandle getByLabel_(TypeID const &tid, InputTag const &tag, ModuleCallingContext const *mcc) const
def move
Definition: eostools.py:508
void convert_handle(BasicHandle &&bh, Handle< T > &result)
Definition: ConvertHandle.h:20
ModuleCallingContext const * moduleCallingContext_
PrincipalGetAdapter provRecorder_
#define PROD(A, B)
void throwOnPrematureRead(char const *principalType, TypeID const &productType, std::string const &moduleLabel, std::string const &productInstanceName)
BasicHandle LuminosityBlock::getByLabelImpl ( std::type_info const &  iWrapperType,
std::type_info const &  iProductType,
InputTag const &  iTag 
) const
privatevirtual

Implements edm::LuminosityBlockBase.

Definition at line 90 of file LuminosityBlock.cc.

References addToGotBranchIDs(), edm::PrincipalGetAdapter::getByLabel_(), h, edm::BasicHandle::isValid(), moduleCallingContext_, edm::BasicHandle::provenance(), and provRecorder_.

90  {
91  BasicHandle h = provRecorder_.getByLabel_(TypeID(iProductType), iTag, moduleCallingContext_);
92  if (h.isValid()) {
93  addToGotBranchIDs(*(h.provenance()));
94  }
95  return h;
96  }
BasicHandle getByLabel_(TypeID const &tid, InputTag const &tag, ModuleCallingContext const *mcc) const
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
Definition: Activities.doc:4
void addToGotBranchIDs(Provenance const &prov) const
ModuleCallingContext const * moduleCallingContext_
PrincipalGetAdapter provRecorder_
template<typename PROD >
bool LuminosityBlock::getByToken ( EDGetToken  token,
Handle< PROD > &  result 
) const

Definition at line 242 of file LuminosityBlock.h.

References edm::PrincipalGetAdapter::checkIfComplete(), edm::HandleBase::clear(), edm::convert_handle(), edm::HandleBase::failedToGet(), edm::PrincipalGetAdapter::getByToken_(), moduleCallingContext_, eostools::move(), PROD, edm::PRODUCT_TYPE, provRecorder_, and edm::principal_get_adapter_detail::throwOnPrematureRead().

Referenced by EventHeader::analyze(), StudyHLT::analyze(), TrackCount::analyze(), IsoTrig::analyze(), IsoTrackCalib::analyze(), HLTPrescaleRecorder::beginLuminosityBlock(), pat::PATTriggerEventProducer::beginLuminosityBlock(), FTSLuminosityFromLumiSummary::doStreamBeginLuminosityBlock_(), DQMLumiMonitor::endLuminosityBlock(), GenXSecAnalyzer::endLuminosityBlock(), VertexHistogramMaker::fill(), DigiLumiCorrHistogramMaker::fill(), edm::GetterOfProducts< trigger::HLTPrescaleTable >::fillHandles(), GetLumi::getRawValue(), and AlcaBeamSpotManager::readLumi().

242  {
244  principal_get_adapter_detail::throwOnPrematureRead("Lumi", TypeID(typeid(PROD)), token);
245  }
246  result.clear();
247  BasicHandle bh = provRecorder_.getByToken_(TypeID(typeid(PROD)),PRODUCT_TYPE, token, moduleCallingContext_);
248  convert_handle(std::move(bh), result); // throws on conversion error
249  if (result.failedToGet()) {
250  return false;
251  }
252  return true;
253  }
BasicHandle getByToken_(TypeID const &id, KindOfType kindOfType, EDGetToken token, ModuleCallingContext const *mcc) const
def move
Definition: eostools.py:508
void convert_handle(BasicHandle &&bh, Handle< T > &result)
Definition: ConvertHandle.h:20
ModuleCallingContext const * moduleCallingContext_
PrincipalGetAdapter provRecorder_
#define PROD(A, B)
void throwOnPrematureRead(char const *principalType, TypeID const &productType, std::string const &moduleLabel, std::string const &productInstanceName)
template<typename PROD >
bool LuminosityBlock::getByToken ( EDGetTokenT< PROD token,
Handle< PROD > &  result 
) const

Definition at line 257 of file LuminosityBlock.h.

References edm::PrincipalGetAdapter::checkIfComplete(), edm::HandleBase::clear(), edm::convert_handle(), edm::HandleBase::failedToGet(), edm::PrincipalGetAdapter::getByToken_(), moduleCallingContext_, eostools::move(), PROD, edm::PRODUCT_TYPE, provRecorder_, and edm::principal_get_adapter_detail::throwOnPrematureRead().

257  {
259  principal_get_adapter_detail::throwOnPrematureRead("Lumi", TypeID(typeid(PROD)), token);
260  }
261  result.clear();
262  BasicHandle bh = provRecorder_.getByToken_(TypeID(typeid(PROD)),PRODUCT_TYPE, token, moduleCallingContext_);
263  convert_handle(std::move(bh), result); // throws on conversion error
264  if (result.failedToGet()) {
265  return false;
266  }
267  return true;
268  }
BasicHandle getByToken_(TypeID const &id, KindOfType kindOfType, EDGetToken token, ModuleCallingContext const *mcc) const
def move
Definition: eostools.py:508
void convert_handle(BasicHandle &&bh, Handle< T > &result)
Definition: ConvertHandle.h:20
ModuleCallingContext const * moduleCallingContext_
PrincipalGetAdapter provRecorder_
#define PROD(A, B)
void throwOnPrematureRead(char const *principalType, TypeID const &productType, std::string const &moduleLabel, std::string const &productInstanceName)
template<typename PROD >
void LuminosityBlock::getManyByType ( std::vector< Handle< PROD > > &  results) const

Definition at line 273 of file LuminosityBlock.h.

References edm::PrincipalGetAdapter::checkIfComplete(), edm::PrincipalGetAdapter::getManyByType(), moduleCallingContext_, PROD, provRecorder_, python.entryComment::results, and edm::principal_get_adapter_detail::throwOnPrematureRead().

273  {
276  }
278  }
void getManyByType(std::vector< Handle< PROD > > &results, ModuleCallingContext const *mcc) const
ModuleCallingContext const * moduleCallingContext_
PrincipalGetAdapter provRecorder_
#define PROD(A, B)
void throwOnPrematureRead(char const *principalType, TypeID const &productType, std::string const &moduleLabel, std::string const &productInstanceName)
Provenance LuminosityBlock::getProvenance ( BranchID const &  theID) const

Definition at line 50 of file LuminosityBlock.cc.

References edm::Principal::getProvenance(), luminosityBlockPrincipal(), and moduleCallingContext_.

50  {
52  }
LuminosityBlockPrincipal const & luminosityBlockPrincipal() const
Provenance getProvenance(BranchID const &bid, ModuleCallingContext const *mcc) const
Definition: Principal.cc:749
ModuleCallingContext const * moduleCallingContext_
Run const& edm::LuminosityBlock::getRun ( ) const
inline

Definition at line 97 of file LuminosityBlock.h.

References run_.

Referenced by LumiCalculator::endLuminosityBlock(), and edm::Event::getRun().

97  {
98  return *run_;
99  }
std::shared_ptr< Run const > const run_
LuminosityBlockIndex LuminosityBlock::index ( ) const
LuminosityBlockAuxiliary const& edm::LuminosityBlock::luminosityBlockAuxiliary ( ) const
inlinevirtual

Implements edm::LuminosityBlockBase.

Definition at line 50 of file LuminosityBlock.h.

References aux_.

Referenced by edm::PileUp::beginLuminosityBlock(), PixelLumiDQM::beginLuminosityBlock(), and PixelLumiDQM::endLuminosityBlock().

50 {return aux_;}
LuminosityBlockAuxiliary const & aux_
LuminosityBlockPrincipal const & LuminosityBlock::luminosityBlockPrincipal ( ) const
private

Definition at line 45 of file LuminosityBlock.cc.

References compareJSON::const, edm::PrincipalGetAdapter::principal(), and provRecorder_.

Referenced by cacheIdentifier(), commit_(), getAllProvenance(), getProvenance(), index(), and processHistoryID().

45  {
46  return dynamic_cast<LuminosityBlockPrincipal const&>(provRecorder_.principal());
47  }
string const
Definition: compareJSON.py:14
PrincipalGetAdapter provRecorder_
LuminosityBlockPrincipal & LuminosityBlock::luminosityBlockPrincipal ( )
private

Definition at line 32 of file LuminosityBlock.cc.

References edm::PrincipalGetAdapter::principal(), and provRecorder_.

32  {
33  return dynamic_cast<LuminosityBlockPrincipal&>(provRecorder_.principal());
34  }
PrincipalGetAdapter provRecorder_
ModuleCallingContext const* edm::LuminosityBlock::moduleCallingContext ( ) const
inline
ProcessHistory const & LuminosityBlock::processHistory ( ) const

Definition at line 80 of file LuminosityBlock.cc.

References edm::PrincipalGetAdapter::processHistory(), and provRecorder_.

80  {
82  }
ProcessHistory const & processHistory() const
PrincipalGetAdapter provRecorder_
ProcessHistoryID const & LuminosityBlock::processHistoryID ( ) const

Definition at line 75 of file LuminosityBlock.cc.

References luminosityBlockPrincipal(), and edm::Principal::processHistoryID().

75  {
77  }
LuminosityBlockPrincipal const & luminosityBlockPrincipal() const
ProcessHistoryID const & processHistoryID() const
Definition: Principal.h:141
template<typename PROD >
void edm::LuminosityBlock::put ( std::auto_ptr< PROD product)
inline
template<typename PROD >
void edm::LuminosityBlock::put ( std::unique_ptr< PROD product)
inline

Definition at line 108 of file LuminosityBlock.h.

References AlCaHLTBitMon_QueryRunRegistry::string.

108 {put<PROD>(product, std::string());}
template<typename PROD >
void LuminosityBlock::put ( std::auto_ptr< PROD product,
std::string const &  productInstanceName 
)

Put a new product with a 'product instance name'.

Definition at line 172 of file LuminosityBlock.h.

References put().

172  {
173  put(std::unique_ptr<PROD>(product.release()),productInstanceName);
174  }
void put(std::auto_ptr< PROD > product)
Put a new product.
template<typename PROD >
void LuminosityBlock::put ( std::unique_ptr< PROD product,
std::string const &  productInstanceName 
)

Definition at line 178 of file LuminosityBlock.h.

References edm::PrincipalGetAdapter::getBranchDescription(), eostools::move(), PROD, provRecorder_, putProducts(), edm::principal_get_adapter_detail::throwOnPutOfNullProduct(), and relativeConstraints::value.

178  {
179  if(product.get() == 0) { // null pointer is illegal
180  TypeID typeID(typeid(PROD));
181  principal_get_adapter_detail::throwOnPutOfNullProduct("LuminosityBlock", typeID, productInstanceName);
182  }
183 
184  // The following will call post_insert if T has such a function,
185  // and do nothing if T has no such function.
187  DoPostInsert<PROD>,
188  DoNotPostInsert<PROD> >::type maybe_inserter;
189  maybe_inserter(product.get());
190 
191  BranchDescription const& desc =
192  provRecorder_.getBranchDescription(TypeID(*product), productInstanceName);
193 
194  std::unique_ptr<Wrapper<PROD> > wp(new Wrapper<PROD>(std::move(product)));
195  putProducts().emplace_back(std::move(wp), &desc);
196 
197  // product.release(); // The object has been copied into the Wrapper.
198  // The old copy must be deleted, so we cannot release ownership.
199  }
type
Definition: HCALResponse.h:21
def move
Definition: eostools.py:508
ProductPtrVec & putProducts()
BranchDescription const & getBranchDescription(TypeID const &type, std::string const &productInstanceName) const
PrincipalGetAdapter provRecorder_
#define PROD(A, B)
void throwOnPutOfNullProduct(char const *principalType, TypeID const &productType, std::string const &productInstanceName)
ProductPtrVec& edm::LuminosityBlock::putProducts ( )
inlineprivate

Definition at line 143 of file LuminosityBlock.h.

References putProducts_.

Referenced by commit_(), and put().

143 {return putProducts_;}
ProductPtrVec putProducts_
ProductPtrVec const& edm::LuminosityBlock::putProducts ( ) const
inlineprivate

Definition at line 144 of file LuminosityBlock.h.

References putProducts_.

144 {return putProducts_;}
ProductPtrVec putProducts_
void LuminosityBlock::setConsumer ( EDConsumerBase const *  iConsumer)

Definition at line 37 of file LuminosityBlock.cc.

References provRecorder_, run_, and edm::PrincipalGetAdapter::setConsumer().

Referenced by edm::EDAnalyzer::doBeginLuminosityBlock(), edm::EDProducer::doBeginLuminosityBlock(), edm::EDFilter::doBeginLuminosityBlock(), edm::one::EDFilterBase::doBeginLuminosityBlock(), edm::one::EDProducerBase::doBeginLuminosityBlock(), edm::one::EDAnalyzerBase::doBeginLuminosityBlock(), edm::global::EDAnalyzerBase::doBeginLuminosityBlock(), edm::global::EDFilterBase::doBeginLuminosityBlock(), edm::global::EDProducerBase::doBeginLuminosityBlock(), edm::stream::EDAnalyzerAdaptor< T >::doBeginLuminosityBlock(), edm::stream::ProducingModuleAdaptor< T, M, B >::doBeginLuminosityBlock(), edm::EDAnalyzer::doEndLuminosityBlock(), edm::EDProducer::doEndLuminosityBlock(), edm::EDFilter::doEndLuminosityBlock(), edm::one::EDFilterBase::doEndLuminosityBlock(), edm::one::EDProducerBase::doEndLuminosityBlock(), edm::one::EDAnalyzerBase::doEndLuminosityBlock(), edm::global::EDAnalyzerBase::doEndLuminosityBlock(), edm::global::EDFilterBase::doEndLuminosityBlock(), edm::global::EDProducerBase::doEndLuminosityBlock(), edm::stream::EDAnalyzerAdaptor< T >::doEndLuminosityBlock(), edm::stream::ProducingModuleAdaptor< T, M, B >::doEndLuminosityBlock(), edm::global::EDAnalyzerBase::doStreamBeginLuminosityBlock(), edm::global::EDFilterBase::doStreamBeginLuminosityBlock(), edm::global::EDProducerBase::doStreamBeginLuminosityBlock(), edm::global::EDAnalyzerBase::doStreamEndLuminosityBlock(), edm::global::EDFilterBase::doStreamEndLuminosityBlock(), edm::global::EDProducerBase::doStreamEndLuminosityBlock(), edm::stream::EDAnalyzerAdaptorBase::doStreamEndLuminosityBlock(), and edm::stream::ProducingModuleAdaptorBase< T >::doStreamEndLuminosityBlock().

37  {
38  provRecorder_.setConsumer(iConsumer);
39  if(run_) {
40  const_cast<Run*>(run_.get())->setConsumer(iConsumer);
41  }
42  }
void setConsumer(EDConsumerBase const *iConsumer)
void setConsumer(EDConsumerBase const *iConsumer)
std::shared_ptr< Run const > const run_
PrincipalGetAdapter provRecorder_

Friends And Related Function Documentation

friend class InputSource
friend

Definition at line 150 of file LuminosityBlock.h.

friend class ProducerBase
friend

Definition at line 152 of file LuminosityBlock.h.

friend class RawInputSource
friend

Definition at line 151 of file LuminosityBlock.h.

template<typename T >
friend class stream::ProducingModuleAdaptorBase
friend

Definition at line 153 of file LuminosityBlock.h.

Member Data Documentation

LuminosityBlockAuxiliary const& edm::LuminosityBlock::aux_
private

Definition at line 161 of file LuminosityBlock.h.

Referenced by luminosityBlockAuxiliary().

std::string const LuminosityBlock::emptyString_
staticprivate

Definition at line 167 of file LuminosityBlock.h.

Referenced by getByLabel().

BranchIDSet edm::LuminosityBlock::gotBranchIDs_
mutableprivate

Definition at line 164 of file LuminosityBlock.h.

Referenced by addToGotBranchIDs().

ModuleCallingContext const* edm::LuminosityBlock::moduleCallingContext_
private
PrincipalGetAdapter edm::LuminosityBlock::provRecorder_
private
ProductPtrVec edm::LuminosityBlock::putProducts_
private

Definition at line 160 of file LuminosityBlock.h.

Referenced by putProducts().

std::shared_ptr<Run const> const edm::LuminosityBlock::run_
private

Definition at line 162 of file LuminosityBlock.h.

Referenced by getRun(), and setConsumer().