CMS 3D CMS Logo

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

#include <SecondaryEventProvider.h>

Public Member Functions

void beginJob (ProductRegistry const &iRegistry)
 
void beginLuminosityBlock (LuminosityBlockPrincipal &lumi, const edm::EventSetup &setup, ModuleCallingContext const *)
 
void beginRun (RunPrincipal &run, const edm::EventSetup &setup, ModuleCallingContext const *)
 
void endJob ()
 
void endLuminosityBlock (LuminosityBlockPrincipal &lumi, const edm::EventSetup &setup, ModuleCallingContext const *)
 
void endRun (RunPrincipal &run, const edm::EventSetup &setup, ModuleCallingContext const *)
 
 SecondaryEventProvider (std::vector< ParameterSet > &psets, ProductRegistry &pregistry, std::shared_ptr< ProcessConfiguration > processConfiguration)
 
void setupPileUpEvent (EventPrincipal &ep, const EventSetup &setup)
 

Private Attributes

std::unique_ptr
< ExceptionToActionTable
exceptionToActionTable_
 
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 8 of file SecondaryEventProvider.cc.

References edm::WorkerManager::addToUnscheduledWorkers(), diffTwoXMLs::label, edm::WorkerManager::setOnDemandProducts(), AlCaHLTBitMon_QueryRunRegistry::string, and workerManager_.

10  :
11  exceptionToActionTable_(new ExceptionToActionTable),
12  workerManager_(std::make_shared<ActivityRegistry>(), *exceptionToActionTable_) {
13  std::vector<std::string> shouldBeUsedLabels;
14  std::set<std::string> unscheduledLabels;
15  const PreallocationConfiguration preallocConfig;
16  for(auto& pset : psets) {
17  std::string label = pset.getParameter<std::string>("@module_label");
19  preg,
20  &preallocConfig,
22  label,
23  unscheduledLabels,
24  shouldBeUsedLabels);
25  }
26  if(!unscheduledLabels.empty()) {
27  workerManager_.setOnDemandProducts(preg, unscheduledLabels);
28  }
29  } // SecondaryEventProvider::SecondaryEventProvider
void setOnDemandProducts(ProductRegistry &pregistry, std::set< std::string > const &unscheduledLabels) const
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)
processConfiguration
Definition: Schedule.cc:370
std::unique_ptr< ExceptionToActionTable > exceptionToActionTable_
preg
Definition: Schedule.cc:370

Member Function Documentation

void edm::SecondaryEventProvider::beginJob ( ProductRegistry const &  iRegistry)
inline

Definition at line 28 of file SecondaryEventProvider.h.

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

28 {workerManager_.beginJob(iRegistry);}
void beginJob(ProductRegistry const &iRegistry)
void edm::SecondaryEventProvider::beginLuminosityBlock ( LuminosityBlockPrincipal lumi,
const edm::EventSetup setup,
ModuleCallingContext const *  mcc 
)

Definition at line 38 of file SecondaryEventProvider.cc.

References edm::ModuleCallingContext::getGlobalContext(), edm::StreamID::invalidStreamID(), fjr2json::lumi, edm::WorkerManager::processOneOccurrence(), HcalObjRepresent::setup(), and workerManager_.

38  {
39  workerManager_.processOneOccurrence<OccurrenceTraits<LuminosityBlockPrincipal, BranchActionGlobalBegin> >(lumi, setup, StreamID::invalidStreamID(),
40  mcc->getGlobalContext(), mcc);
41  }
tuple lumi
Definition: fjr2json.py:35
void processOneOccurrence(typename T::MyPrincipal &principal, EventSetup const &eventSetup, StreamID streamID, typename T::Context const *topContext, U const *context, bool cleaningUpAfterException=false)
Definition: WorkerManager.h:91
static StreamID invalidStreamID()
Definition: StreamID.h:48
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")
void edm::SecondaryEventProvider::beginRun ( RunPrincipal run,
const edm::EventSetup setup,
ModuleCallingContext const *  mcc 
)

Definition at line 33 of file SecondaryEventProvider.cc.

References edm::ModuleCallingContext::getGlobalContext(), edm::StreamID::invalidStreamID(), edm::WorkerManager::processOneOccurrence(), DTTTrigCorrFirst::run, HcalObjRepresent::setup(), and workerManager_.

33  {
34  workerManager_.processOneOccurrence<OccurrenceTraits<RunPrincipal, BranchActionGlobalBegin> >(run, setup, StreamID::invalidStreamID(),
35  mcc->getGlobalContext(), mcc);
36  }
void processOneOccurrence(typename T::MyPrincipal &principal, EventSetup const &eventSetup, StreamID streamID, typename T::Context const *topContext, U const *context, bool cleaningUpAfterException=false)
Definition: WorkerManager.h:91
static StreamID invalidStreamID()
Definition: StreamID.h:48
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")
void edm::SecondaryEventProvider::endJob ( void  )
inline
void edm::SecondaryEventProvider::endLuminosityBlock ( LuminosityBlockPrincipal lumi,
const edm::EventSetup setup,
ModuleCallingContext const *  mcc 
)

Definition at line 48 of file SecondaryEventProvider.cc.

References edm::ModuleCallingContext::getGlobalContext(), edm::StreamID::invalidStreamID(), fjr2json::lumi, edm::WorkerManager::processOneOccurrence(), HcalObjRepresent::setup(), and workerManager_.

48  {
49  workerManager_.processOneOccurrence<OccurrenceTraits<LuminosityBlockPrincipal, BranchActionGlobalEnd> >(lumi, setup, StreamID::invalidStreamID(),
50  mcc->getGlobalContext(), mcc);
51  }
tuple lumi
Definition: fjr2json.py:35
void processOneOccurrence(typename T::MyPrincipal &principal, EventSetup const &eventSetup, StreamID streamID, typename T::Context const *topContext, U const *context, bool cleaningUpAfterException=false)
Definition: WorkerManager.h:91
static StreamID invalidStreamID()
Definition: StreamID.h:48
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")
void edm::SecondaryEventProvider::endRun ( RunPrincipal run,
const edm::EventSetup setup,
ModuleCallingContext const *  mcc 
)

Definition at line 43 of file SecondaryEventProvider.cc.

References edm::ModuleCallingContext::getGlobalContext(), edm::StreamID::invalidStreamID(), edm::WorkerManager::processOneOccurrence(), DTTTrigCorrFirst::run, HcalObjRepresent::setup(), and workerManager_.

43  {
44  workerManager_.processOneOccurrence<OccurrenceTraits<RunPrincipal, BranchActionGlobalEnd> >(run, setup, StreamID::invalidStreamID(),
45  mcc->getGlobalContext(), mcc);
46  }
void processOneOccurrence(typename T::MyPrincipal &principal, EventSetup const &eventSetup, StreamID streamID, typename T::Context const *topContext, U const *context, bool cleaningUpAfterException=false)
Definition: WorkerManager.h:91
static StreamID invalidStreamID()
Definition: StreamID.h:48
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")
void edm::SecondaryEventProvider::setupPileUpEvent ( EventPrincipal ep,
const EventSetup setup 
)

Definition at line 53 of file SecondaryEventProvider.cc.

References edm::WorkerManager::processOneOccurrence(), HcalObjRepresent::setup(), and workerManager_.

53  {
54  workerManager_.processOneOccurrence<OccurrenceTraits<EventPrincipal, BranchActionStreamBegin>, StreamContext >(ep, setup, ep.streamID(),
55  nullptr, nullptr);
56  }
void processOneOccurrence(typename T::MyPrincipal &principal, EventSetup const &eventSetup, StreamID streamID, typename T::Context const *topContext, U const *context, bool cleaningUpAfterException=false)
Definition: WorkerManager.h:91
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")

Member Data Documentation

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

Definition at line 32 of file SecondaryEventProvider.h.

WorkerManager edm::SecondaryEventProvider::workerManager_
private