CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
edm::SecondaryEventProvider Class Reference

#include <SecondaryEventProvider.h>

Public Member Functions

void beginJob (ProductRegistry const &iRegistry, eventsetup::ESRecordsToProxyIndices const &)
 
void beginLuminosityBlock (LuminosityBlockPrincipal &lumi, const edm::EventSetupImpl &setup, ModuleCallingContext const *, StreamContext &sContext)
 
void beginRun (RunPrincipal &run, const edm::EventSetupImpl &setup, ModuleCallingContext const *, StreamContext &sContext)
 
void beginStream (edm::StreamID iID, StreamContext &sContext)
 
void endJob ()
 
void endLuminosityBlock (LuminosityBlockPrincipal &lumi, const edm::EventSetupImpl &setup, ModuleCallingContext const *, StreamContext &sContext)
 
void endRun (RunPrincipal &run, const edm::EventSetupImpl &setup, ModuleCallingContext const *, StreamContext &sContext)
 
void endStream (edm::StreamID iID, StreamContext &sContext)
 
 SecondaryEventProvider (std::vector< ParameterSet > &psets, ProductRegistry &pregistry, std::shared_ptr< ProcessConfiguration > processConfiguration)
 
void setupPileUpEvent (EventPrincipal &ep, const EventSetupImpl &setup, StreamContext &sContext)
 

Private Attributes

std::unique_ptr< ExceptionToActionTableexceptionToActionTable_
 
WorkerManager workerManager_
 

Detailed Description

Definition at line 14 of file SecondaryEventProvider.h.

Constructor & Destructor Documentation

edm::SecondaryEventProvider::SecondaryEventProvider ( std::vector< ParameterSet > &  psets,
ProductRegistry pregistry,
std::shared_ptr< ProcessConfiguration processConfiguration 
)

Definition at line 9 of file SecondaryEventProvider.cc.

References edm::WorkerManager::addToUnscheduledWorkers(), label, muonDTDigis_cfi::pset, edm::ProductRegistry::setUnscheduledProducts(), AlCaHLTBitMon_QueryRunRegistry::string, and workerManager_.

11  :
12  exceptionToActionTable_(new ExceptionToActionTable),
13  workerManager_(std::make_shared<ActivityRegistry>(), *exceptionToActionTable_) {
14  std::vector<std::string> shouldBeUsedLabels;
15  std::set<std::string> unscheduledLabels;
16  const PreallocationConfiguration preallocConfig;
17  for(auto& pset : psets) {
18  std::string label = pset.getParameter<std::string>("@module_label");
20  preg,
21  &preallocConfig,
22  processConfiguration,
23  label,
24  unscheduledLabels,
25  shouldBeUsedLabels);
26  }
27  if(!unscheduledLabels.empty()) {
28  preg.setUnscheduledProducts(unscheduledLabels);
29  }
30  } // SecondaryEventProvider::SecondaryEventProvider
void addToUnscheduledWorkers(ParameterSet &pset, ProductRegistry &preg, PreallocationConfiguration const *prealloc, std::shared_ptr< ProcessConfiguration > processConfiguration, std::string label, std::set< std::string > &unscheduledLabels, std::vector< std::string > &shouldBeUsedLabels)
std::unique_ptr< ExceptionToActionTable > exceptionToActionTable_
char const * label

Member Function Documentation

void edm::SecondaryEventProvider::beginJob ( ProductRegistry const &  iRegistry,
eventsetup::ESRecordsToProxyIndices const &  iIndices 
)

Definition at line 33 of file SecondaryEventProvider.cc.

References edm::WorkerManager::beginJob(), and workerManager_.

33  {
34  workerManager_.beginJob(iRegistry, iIndices);
35  }
void beginJob(ProductRegistry const &iRegistry, eventsetup::ESRecordsToProxyIndices const &)
void edm::SecondaryEventProvider::beginLuminosityBlock ( LuminosityBlockPrincipal lumi,
const edm::EventSetupImpl setup,
ModuleCallingContext const *  mcc,
StreamContext sContext 
)

Definition at line 46 of file SecondaryEventProvider.cc.

References edm::StreamID::invalidStreamID(), csvLumiCalc::lumi, edm::WorkerManager::processOneOccurrence(), GeneralSetup::setup(), edm::StreamContext::streamID(), and workerManager_.

46  {
47  workerManager_.processOneOccurrence<OccurrenceTraits<LuminosityBlockPrincipal, BranchActionGlobalBegin> >(lumi, setup, StreamID::invalidStreamID(),
48  nullptr, mcc);
49  workerManager_.processOneOccurrence<OccurrenceTraits<LuminosityBlockPrincipal, BranchActionStreamBegin> >(lumi, setup, sContext.streamID(),
50  &sContext, mcc);
51  }
void processOneOccurrence(typename T::MyPrincipal &principal, EventSetupImpl const &eventSetup, StreamID streamID, typename T::Context const *topContext, U const *context, bool cleaningUpAfterException=false)
def setup(process, global_tag, zero_tesla=False)
Definition: GeneralSetup.py:2
static StreamID invalidStreamID()
Definition: StreamID.h:44
void edm::SecondaryEventProvider::beginRun ( RunPrincipal run,
const edm::EventSetupImpl setup,
ModuleCallingContext const *  mcc,
StreamContext sContext 
)

Definition at line 39 of file SecondaryEventProvider.cc.

References edm::StreamID::invalidStreamID(), edm::WorkerManager::processOneOccurrence(), writedatasetfile::run, GeneralSetup::setup(), edm::StreamContext::streamID(), and workerManager_.

39  {
40  workerManager_.processOneOccurrence<OccurrenceTraits<RunPrincipal, BranchActionGlobalBegin> >(run, setup, StreamID::invalidStreamID(),
41  nullptr, mcc);
42  workerManager_.processOneOccurrence<OccurrenceTraits<RunPrincipal, BranchActionStreamBegin> >(run, setup, sContext.streamID(),
43  &sContext, mcc);
44  }
void processOneOccurrence(typename T::MyPrincipal &principal, EventSetupImpl const &eventSetup, StreamID streamID, typename T::Context const *topContext, U const *context, bool cleaningUpAfterException=false)
def setup(process, global_tag, zero_tesla=False)
Definition: GeneralSetup.py:2
static StreamID invalidStreamID()
Definition: StreamID.h:44
void edm::SecondaryEventProvider::beginStream ( edm::StreamID  iID,
StreamContext sContext 
)

Definition at line 70 of file SecondaryEventProvider.cc.

References edm::WorkerManager::beginStream(), and workerManager_.

Referenced by endJob().

70  {
71  workerManager_.beginStream(iID, sContext);
72  }
void beginStream(StreamID iID, StreamContext &streamContext)
void edm::SecondaryEventProvider::endJob ( void  )
inline
void edm::SecondaryEventProvider::endLuminosityBlock ( LuminosityBlockPrincipal lumi,
const edm::EventSetupImpl setup,
ModuleCallingContext const *  mcc,
StreamContext sContext 
)

Definition at line 60 of file SecondaryEventProvider.cc.

References edm::StreamID::invalidStreamID(), csvLumiCalc::lumi, edm::WorkerManager::processOneOccurrence(), GeneralSetup::setup(), edm::StreamContext::streamID(), and workerManager_.

60  {
61  workerManager_.processOneOccurrence<OccurrenceTraits<LuminosityBlockPrincipal, BranchActionStreamEnd> >(lumi, setup, sContext.streamID(),
62  &sContext, mcc);
63  workerManager_.processOneOccurrence<OccurrenceTraits<LuminosityBlockPrincipal, BranchActionGlobalEnd> >(lumi, setup, StreamID::invalidStreamID(),
64  nullptr, mcc);
65  }
void processOneOccurrence(typename T::MyPrincipal &principal, EventSetupImpl const &eventSetup, StreamID streamID, typename T::Context const *topContext, U const *context, bool cleaningUpAfterException=false)
def setup(process, global_tag, zero_tesla=False)
Definition: GeneralSetup.py:2
static StreamID invalidStreamID()
Definition: StreamID.h:44
void edm::SecondaryEventProvider::endRun ( RunPrincipal run,
const edm::EventSetupImpl setup,
ModuleCallingContext const *  mcc,
StreamContext sContext 
)

Definition at line 53 of file SecondaryEventProvider.cc.

References edm::StreamID::invalidStreamID(), edm::WorkerManager::processOneOccurrence(), writedatasetfile::run, GeneralSetup::setup(), edm::StreamContext::streamID(), and workerManager_.

53  {
54  workerManager_.processOneOccurrence<OccurrenceTraits<RunPrincipal, BranchActionStreamEnd> >(run, setup, sContext.streamID(),
55  &sContext, mcc);
56  workerManager_.processOneOccurrence<OccurrenceTraits<RunPrincipal, BranchActionGlobalEnd> >(run, setup, StreamID::invalidStreamID(),
57  nullptr, mcc);
58  }
void processOneOccurrence(typename T::MyPrincipal &principal, EventSetupImpl const &eventSetup, StreamID streamID, typename T::Context const *topContext, U const *context, bool cleaningUpAfterException=false)
def setup(process, global_tag, zero_tesla=False)
Definition: GeneralSetup.py:2
static StreamID invalidStreamID()
Definition: StreamID.h:44
void edm::SecondaryEventProvider::endStream ( edm::StreamID  iID,
StreamContext sContext 
)

Definition at line 74 of file SecondaryEventProvider.cc.

References edm::WorkerManager::endStream(), and workerManager_.

Referenced by endJob().

74  {
75  workerManager_.endStream(iID, sContext);
76  }
void endStream(StreamID iID, StreamContext &streamContext)
void edm::SecondaryEventProvider::setupPileUpEvent ( EventPrincipal ep,
const EventSetupImpl setup,
StreamContext sContext 
)

Definition at line 67 of file SecondaryEventProvider.cc.

References edm::WorkerManager::setupOnDemandSystem(), and workerManager_.

67  {
69  }
void setupOnDemandSystem(Principal &principal, EventSetupImpl const &es)

Member Data Documentation

std::unique_ptr<ExceptionToActionTable> edm::SecondaryEventProvider::exceptionToActionTable_
private

Definition at line 35 of file SecondaryEventProvider.h.

WorkerManager edm::SecondaryEventProvider::workerManager_
private