CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
SecondaryEventProvider.cc
Go to the documentation of this file.
6 
7 namespace edm {
8  SecondaryEventProvider::SecondaryEventProvider(std::vector<ParameterSet>& psets,
10  boost::shared_ptr<ProcessConfiguration> processConfiguration) :
11  exceptionToActionTable_(new ExceptionToActionTable),
12  workerManager_(boost::shared_ptr<ActivityRegistry>(new 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,
21  processConfiguration,
22  label,
23  false,
24  unscheduledLabels,
25  shouldBeUsedLabels);
26  }
27  if(!unscheduledLabels.empty()) {
28  workerManager_.setOnDemandProducts(preg, unscheduledLabels);
29  }
30  } // SecondaryEventProvider::SecondaryEventProvider
31 
32  //NOTE: When the Stream interfaces are propagated to the modules, this code must be updated
33  // to also send the stream based transitions
36  mcc->getGlobalContext(), mcc);
37  }
38 
41  mcc->getGlobalContext(), mcc);
42  }
43 
46  mcc->getGlobalContext(), mcc);
47  }
48 
51  mcc->getGlobalContext(), mcc);
52  }
53 
56  nullptr, nullptr);
57  }
58 }
void beginRun(RunPrincipal &run, const edm::EventSetup &setup, ModuleCallingContext const *)
void beginLuminosityBlock(LuminosityBlockPrincipal &lumi, const edm::EventSetup &setup, ModuleCallingContext const *)
void setOnDemandProducts(ProductRegistry &pregistry, std::set< std::string > const &unscheduledLabels) const
tuple lumi
Definition: fjr2json.py:35
void endLuminosityBlock(LuminosityBlockPrincipal &lumi, const edm::EventSetup &setup, ModuleCallingContext const *)
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:92
void addToUnscheduledWorkers(ParameterSet &pset, ProductRegistry &preg, PreallocationConfiguration const *prealloc, boost::shared_ptr< ProcessConfiguration > processConfiguration, std::string label, bool useStopwatch, std::set< std::string > &unscheduledLabels, std::vector< std::string > &shouldBeUsedLabels)
processConfiguration
Definition: Schedule.cc:362
static StreamID invalidStreamID()
Definition: StreamID.h:48
SecondaryEventProvider(std::vector< ParameterSet > &psets, ProductRegistry &pregistry, boost::shared_ptr< ProcessConfiguration > processConfiguration)
void setupPileUpEvent(EventPrincipal &ep, const EventSetup &setup)
void endRun(RunPrincipal &run, const edm::EventSetup &setup, ModuleCallingContext const *)
GlobalContext const * getGlobalContext() const
preg
Definition: Schedule.cc:362
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")