CMS 3D CMS Logo

SubProcess.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_SubProcess_h
2 #define FWCore_Framework_SubProcess_h
3 
21 
23 
24 #include <map>
25 #include <memory>
26 #include <set>
27 #include <vector>
28 
29 namespace edm {
30  class ActivityRegistry;
31  class BranchDescription;
32  class BranchIDListHelper;
33  class EventPrincipal;
34  class EventSetupImpl;
35  class HistoryAppender;
36  class LuminosityBlockPrincipal;
37  class LumiTransitionInfo;
38  class MergeableRunProductMetadata;
39  class ParameterSet;
40  class Principal;
41  class ProcessBlockTransitionInfo;
42  class ProductRegistry;
43  class PreallocationConfiguration;
44  class RunTransitionInfo;
45  class ThinnedAssociationsHelper;
46  class SubProcessParentageHelper;
47  class WaitingTaskHolder;
48 
49  namespace eventsetup {
50  class EventSetupsController;
51  }
52  class SubProcess : public EDConsumerBase {
53  public:
55  ParameterSet const& topLevelParameterSet,
56  std::shared_ptr<ProductRegistry const> parentProductRegistry,
57  std::shared_ptr<BranchIDListHelper const> parentBranchIDListHelper,
58  ProcessBlockHelperBase const& parentProcessBlockHelper,
59  ThinnedAssociationsHelper const& parentThinnedAssociationsHelper,
60  SubProcessParentageHelper const& parentSubProcessParentageHelper,
62  ActivityRegistry& parentActReg,
63  ServiceToken const& token,
65  PreallocationConfiguration const& preallocConfig,
66  ProcessContext const* parentProcessContext);
67 
68  ~SubProcess() override;
69 
70  SubProcess(SubProcess const&) = delete; // Disallow copying
71  SubProcess& operator=(SubProcess const&) = delete; // Disallow copying
72  SubProcess(SubProcess&&) = default; // Allow Moving
73  SubProcess& operator=(SubProcess&&) = delete; // Move not supported by PrincipalCache
74 
75  //From OutputModule
76  void selectProducts(ProductRegistry const& preg,
77  ThinnedAssociationsHelper const& parentThinnedAssociationsHelper,
78  std::map<BranchID, bool>& keepAssociation);
79 
81 
82  // Returns the set of modules whose products may be consumed by
83  // modules in this SubProcess or its child SubProcesses
84  std::vector<ModuleProcessName> keepOnlyConsumedUnscheduledModules(bool deleteModules);
85 
86  void doBeginJob();
87  void doEndJob();
88 
89  void doEventAsync(WaitingTaskHolder iHolder,
90  EventPrincipal const& principal,
91  std::vector<std::shared_ptr<const EventSetupImpl>> const*);
92 
93  template <typename Traits>
95  ProcessBlockTransitionInfo const& iTransitionInfo,
96  bool cleaningUpAfterException);
97 
99  ProcessBlockTransitionInfo const& iTransitionInfo,
100  bool cleaningUpAfterException);
101 
102  void doBeginRunAsync(WaitingTaskHolder iHolder, RunTransitionInfo const& iTransitionInfo);
103 
104  void doEndRunAsync(WaitingTaskHolder iHolder,
105  RunTransitionInfo const& iTransitionInfo,
106  bool cleaningUpAfterException);
107 
108  void doBeginLuminosityBlockAsync(WaitingTaskHolder iHolder, LumiTransitionInfo const& iTransitionInfo);
109 
111  LumiTransitionInfo const& iTransitionInfo,
112  bool cleaningUpAfterException);
113 
114  void doBeginStream(unsigned int);
115  void doEndStream(unsigned int);
116  void doStreamBeginRunAsync(WaitingTaskHolder iHolder, unsigned int iID, RunTransitionInfo const&);
117 
119  unsigned int iID,
120  RunTransitionInfo const&,
121  bool cleaningUpAfterException);
122 
123  void doStreamBeginLuminosityBlockAsync(WaitingTaskHolder iHolder, unsigned int iID, LumiTransitionInfo const&);
124 
126  unsigned int iID,
127  LumiTransitionInfo const&,
128  bool cleaningUpAfterException);
129 
131 
133 
136 
138  ProcessHistoryID const& parentPhID,
139  int runNumber,
141 
142  void deleteRunFromCache(ProcessHistoryID const& parentPhID, int runNumber);
143 
145 
146  // Call closeFile() on all OutputModules.
149  schedule_->closeOutputFiles();
150  for_all(subProcesses_, [](auto& subProcess) { subProcess.closeOutputFiles(); });
151  }
152 
153  // Call openFiles() on all OutputModules
156  schedule_->openOutputFiles(fb);
157  for_all(subProcesses_, [&fb](auto& subProcess) { subProcess.openOutputFiles(fb); });
158  }
159 
161 
162  // Call respondToOpenInputFile() on all Modules
163  void respondToOpenInputFile(FileBlock const& fb);
164 
165  // Call respondToCloseInputFile() on all Modules
168  schedule_->respondToCloseInputFile(fb);
169  for_all(subProcesses_, [&fb](auto& subProcess) { subProcess.respondToCloseInputFile(fb); });
170  }
171 
172  // Call shouldWeCloseFile() on all OutputModules.
173  bool shouldWeCloseOutput() const {
175  if (schedule_->shouldWeCloseOutput()) {
176  return true;
177  }
178  for (auto const& subProcess : subProcesses_) {
179  if (subProcess.shouldWeCloseOutput()) {
180  return true;
181  }
182  }
183  return false;
184  }
185 
187 
191  std::vector<ModuleDescription const*> getAllModuleDescriptions() const;
192 
196  int totalEvents() const { return schedule_->totalEvents(); }
197 
199  int totalEventsPassed() const {
201  return schedule_->totalEventsPassed();
202  }
203 
206  int totalEventsFailed() const {
208  return schedule_->totalEventsFailed();
209  }
210 
213  void enableEndPaths(bool active) {
215  schedule_->enableEndPaths(active);
216  for_all(subProcesses_, [active](auto& subProcess) { subProcess.enableEndPaths(active); });
217  }
218 
220  bool endPathsEnabled() const {
222  return schedule_->endPathsEnabled();
223  }
224 
229  schedule_->getTriggerReport(rep);
230  }
231 
234  bool terminate() const {
236  if (schedule_->terminate()) {
237  return true;
238  }
239  for (auto const& subProcess : subProcesses_) {
240  if (subProcess.terminate()) {
241  return true;
242  }
243  }
244  return false;
245  }
246 
248  void clearCounters() {
250  schedule_->clearCounters();
251  for_all(subProcesses_, [](auto& subProcess) { subProcess.clearCounters(); });
252  }
253 
254  private:
255  void beginJob();
256  void endJob();
257  void processAsync(WaitingTaskHolder iHolder,
258  EventPrincipal const& e,
259  std::vector<std::shared_ptr<const EventSetupImpl>> const*);
260 
261  void propagateProducts(BranchType type, Principal const& parentPrincipal, Principal& principal) const;
262  bool parentProducedProductIsKept(Principal const& parentPrincipal, Principal& principal) const;
264  std::map<BranchID::value_type, BranchID::value_type> const& droppedBranchIDToKeptBranchID);
266  std::map<BranchID, BranchDescription const*>& trueBranchIDToKeptBranchDesc,
267  std::set<BranchID>& keptProductsInEvent);
268 
269  std::map<BranchID::value_type, BranchID::value_type> const& droppedBranchIDToKeptBranchID() {
271  }
272 
273  std::shared_ptr<BranchIDListHelper const> branchIDListHelper() const {
275  }
276  std::shared_ptr<BranchIDListHelper>& branchIDListHelper() { return get_underlying_safe(branchIDListHelper_); }
277  std::shared_ptr<ThinnedAssociationsHelper const> thinnedAssociationsHelper() const {
279  }
280  std::shared_ptr<ThinnedAssociationsHelper> thinnedAssociationsHelper() {
282  }
283 
284  std::shared_ptr<ActivityRegistry> actReg_; // We do not use propagate_const because the registry itself is mutable.
286  std::shared_ptr<ProductRegistry const> parentPreg_;
287  std::shared_ptr<ProductRegistry const> preg_;
292  std::unique_ptr<ExceptionToActionTable const> act_table_;
293  std::shared_ptr<ProcessConfiguration const> processConfiguration_;
296  //We require 1 history for each Run, Lumi and Stream
297  // The vectors first hold Stream info, then Lumi then Run
298  unsigned int historyLumiOffset_;
299  unsigned int historyRunOffset_;
300  std::vector<ProcessHistoryRegistry> processHistoryRegistries_;
301  std::vector<HistoryAppender> historyAppenders_;
303  //vector index is principal lumi's index value
304  std::vector<std::shared_ptr<LuminosityBlockPrincipal>> inUseLumiPrincipals_;
307  std::map<ProcessHistoryID, ProcessHistoryID> parentToChildPhID_;
308  std::vector<SubProcess> subProcesses_;
310 
311  // keptProducts_ are pointers to the BranchDescription objects describing
312  // the branches we are to write.
313  //
314  // We do not own the BranchDescriptions to which we point.
318 
319  //EventSelection
323 
324  // needed because of possible EDAliases.
325  // filled in only if key and value are different.
326  std::map<BranchID::value_type, BranchID::value_type> droppedBranchIDToKeptBranchID_;
327  };
328 
329  // free function
330  std::vector<ParameterSet> popSubProcessVParameterSet(ParameterSet& parameterSet);
331 } // namespace edm
332 #endif
edm::SubProcess::beginJob
void beginJob()
Definition: SubProcess.cc:290
edm::SubProcess::enableEndPaths
void enableEndPaths(bool active)
Definition: SubProcess.h:213
edm::SubProcess::respondToOpenInputFile
void respondToOpenInputFile(FileBlock const &fb)
Definition: SubProcess.cc:828
edm::SubProcess::processConfiguration_
std::shared_ptr< ProcessConfiguration const > processConfiguration_
Definition: SubProcess.h:293
edm::SubProcess::historyRunOffset_
unsigned int historyRunOffset_
Definition: SubProcess.h:299
edm::SubProcess::historyLumiOffset_
unsigned int historyLumiOffset_
Definition: SubProcess.h:298
edm::SubProcess::selector_config_id_
ParameterSetID selector_config_id_
Definition: SubProcess.h:321
edm::SubProcessParentageHelper
Definition: SubProcessParentageHelper.h:21
edm::popSubProcessVParameterSet
std::vector< ParameterSet > popSubProcessVParameterSet(ParameterSet &parameterSet)
Definition: SubProcess.cc:835
edm::SubProcess::parentProducedProductIsKept
bool parentProducedProductIsKept(Principal const &parentPrincipal, Principal &principal) const
Definition: SubProcess.cc:803
edm::ProcessBlockTransitionInfo
Definition: TransitionInfoTypes.h:80
edm::SubProcess
Definition: SubProcess.h:52
edm::SubProcess::processHistoryRegistries_
std::vector< ProcessHistoryRegistry > processHistoryRegistries_
Definition: SubProcess.h:300
BranchType.h
edm::SubProcess::clearProcessBlockPrincipal
void clearProcessBlockPrincipal(ProcessBlockType)
Definition: SubProcess.cc:660
ActivityRegistry
EventSetupProvider.h
edm::SubProcess::branchIDListHelper
std::shared_ptr< BranchIDListHelper const > branchIDListHelper() const
Definition: SubProcess.h:273
edm::LumiTransitionInfo
Definition: TransitionInfoTypes.h:42
propagate_const.h
edm::SubProcess::keptProducts
SelectedProductsForBranchType const & keptProducts() const
Definition: SubProcess.h:80
edm::SubProcess::pathsAndConsumesOfModules_
PathsAndConsumesOfModules pathsAndConsumesOfModules_
Definition: SubProcess.h:295
edm::SubProcess::doStreamEndRunAsync
void doStreamEndRunAsync(WaitingTaskHolder iHolder, unsigned int iID, RunTransitionInfo const &, bool cleaningUpAfterException)
Definition: SubProcess.cc:752
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::ProcessContext
Definition: ProcessContext.h:27
BranchID.h
edm::SubProcess::updateBranchIDListHelper
void updateBranchIDListHelper(BranchIDLists const &)
Definition: SubProcess.cc:821
edm::LuminosityBlockPrincipal
Definition: LuminosityBlockPrincipal.h:31
Algorithms.h
edm::SubProcess::thinnedAssociationsHelper_
edm::propagate_const< std::shared_ptr< ThinnedAssociationsHelper > > thinnedAssociationsHelper_
Definition: SubProcess.h:290
edm::SubProcess::subProcesses_
std::vector< SubProcess > subProcesses_
Definition: SubProcess.h:308
edm::SubProcess::doEndStream
void doEndStream(unsigned int)
Definition: SubProcess.cc:736
edm::SubProcess::processBlockHelper_
edm::propagate_const< std::shared_ptr< SubProcessBlockHelper > > processBlockHelper_
Definition: SubProcess.h:289
edm::Principal
Definition: Principal.h:56
ServiceToken.h
edm::SubProcess::doBeginProcessBlockAsync
void doBeginProcessBlockAsync(WaitingTaskHolder iHolder, ProcessBlockTransitionInfo const &iTransitionInfo, bool cleaningUpAfterException)
edm::get_underlying_safe
constexpr std::shared_ptr< T > & get_underlying_safe(propagate_const< std::shared_ptr< T >> &iP)
Definition: get_underlying_safe.h:41
edm::SubProcess::doEndProcessBlockAsync
void doEndProcessBlockAsync(WaitingTaskHolder iHolder, ProcessBlockTransitionInfo const &iTransitionInfo, bool cleaningUpAfterException)
Definition: SubProcess.cc:503
edm::RunTransitionInfo
Definition: TransitionInfoTypes.h:64
edm::SubProcess::doBeginJob
void doBeginJob()
Definition: SubProcess.cc:286
edm::SubProcess::totalEventsFailed
int totalEventsFailed() const
Definition: SubProcess.h:206
edm::SubProcess::processAsync
void processAsync(WaitingTaskHolder iHolder, EventPrincipal const &e, std::vector< std::shared_ptr< const EventSetupImpl >> const *)
Definition: SubProcess.cc:414
edm::BranchType
BranchType
Definition: BranchType.h:11
edm::PathsAndConsumesOfModules
Definition: PathsAndConsumesOfModules.h:32
convertSQLiteXML.runNumber
runNumber
Definition: convertSQLiteXML.py:91
edm::SubProcess::operator=
SubProcess & operator=(SubProcess const &)=delete
PathsAndConsumesOfModules.h
edm::for_all
Func for_all(ForwardSequence &s, Func f)
wrapper for std::for_each
Definition: Algorithms.h:14
edm::ProductRegistry
Definition: ProductRegistry.h:37
edm::parameterSet
ParameterSet const & parameterSet(StableProvenance const &provenance, ProcessHistory const &history)
Definition: Provenance.cc:11
edm::FileBlock
Definition: FileBlock.h:22
edm::SubProcess::wantAllEvents_
bool wantAllEvents_
Definition: SubProcess.h:320
edm::ServiceToken
Definition: ServiceToken.h:42
edm::SubProcess::openOutputFiles
void openOutputFiles(FileBlock &fb)
Definition: SubProcess.h:154
edm::EDConsumerBase
Definition: EDConsumerBase.h:71
edm::SubProcess::droppedBranchIDToKeptBranchID
std::map< BranchID::value_type, BranchID::value_type > const & droppedBranchIDToKeptBranchID()
Definition: SubProcess.h:269
edm::propagate_const
Definition: propagate_const.h:32
edm::SubProcess::deleteRunFromCache
void deleteRunFromCache(ProcessHistoryID const &parentPhID, int runNumber)
Definition: SubProcess.cc:651
edm::SubProcess::schedule_
edm::propagate_const< std::unique_ptr< Schedule > > schedule_
Definition: SubProcess.h:306
edm::EventPrincipal
Definition: EventPrincipal.h:48
edm::SubProcess::inUseLumiPrincipals_
std::vector< std::shared_ptr< LuminosityBlockPrincipal > > inUseLumiPrincipals_
Definition: SubProcess.h:304
edm::SubProcess::getTriggerReport
void getTriggerReport(TriggerReport &rep) const
Definition: SubProcess.h:227
edm::SubProcess::totalEventsPassed
int totalEventsPassed() const
Return the number of events which have been passed by one or more trigger paths.
Definition: SubProcess.h:199
edm::PrincipalCache
Definition: PrincipalCache.h:48
edm::SubProcess::thinnedAssociationsHelper
std::shared_ptr< ThinnedAssociationsHelper const > thinnedAssociationsHelper() const
Definition: SubProcess.h:277
edm::SubProcess::selectProducts
void selectProducts(ProductRegistry const &preg, ThinnedAssociationsHelper const &parentThinnedAssociationsHelper, std::map< BranchID, bool > &keepAssociation)
Definition: SubProcess.cc:319
TrackValidation_cff.task
task
Definition: TrackValidation_cff.py:253
edm::ActivityRegistry
Definition: ActivityRegistry.h:134
edm::MergeableRunProductMetadata
Definition: MergeableRunProductMetadata.h:52
edm::SubProcess::doEventAsync
void doEventAsync(WaitingTaskHolder iHolder, EventPrincipal const &principal, std::vector< std::shared_ptr< const EventSetupImpl >> const *)
Definition: SubProcess.cc:398
WaitingTaskHolder
edm::Hash
Definition: Hash.h:43
edm::SubProcess::serviceToken_
ServiceToken serviceToken_
Definition: SubProcess.h:285
edm::SubProcess::terminate
bool terminate() const
Definition: SubProcess.h:234
edm::SubProcess::esp_
edm::propagate_const< std::shared_ptr< eventsetup::EventSetupProvider > > esp_
Definition: SubProcess.h:305
edm::SubProcess::doBeginLuminosityBlockAsync
void doBeginLuminosityBlockAsync(WaitingTaskHolder iHolder, LumiTransitionInfo const &iTransitionInfo)
Definition: SubProcess.cc:668
edm::BranchIDLists
std::vector< BranchIDList > BranchIDLists
Definition: BranchIDList.h:19
edm::SubProcess::~SubProcess
~SubProcess() override
Definition: SubProcess.cc:229
edm::ProductSelector
Definition: ProductSelector.h:26
edm::ProductSelectorRules
Definition: ProductSelectorRules.h:24
edm::SubProcess::propagateProducts
void propagateProducts(BranchType type, Principal const &parentPrincipal, Principal &principal) const
Definition: SubProcess.cc:788
edm::SubProcess::keptProducts_
SelectedProductsForBranchType keptProducts_
Definition: SubProcess.h:315
edm::SubProcess::doEndJob
void doEndJob()
Definition: SubProcess.cc:288
edm::SubProcess::getAllModuleDescriptions
std::vector< ModuleDescription const * > getAllModuleDescriptions() const
Return a vector allowing const access to all the ModuleDescriptions for this SubProcess.
edm::ThinnedAssociationsHelper
Definition: ThinnedAssociationsHelper.h:37
edm::SubProcess::deleteLumiFromCache
void deleteLumiFromCache(LuminosityBlockPrincipal &)
Definition: SubProcess.cc:721
edm::ProcessBlockHelperBase
Definition: ProcessBlockHelperBase.h:18
edm::SubProcess::productSelectorRules_
ProductSelectorRules productSelectorRules_
Definition: SubProcess.h:316
edm::ParameterSet
Definition: ParameterSet.h:47
PrincipalCache.h
EDConsumerBase.h
edm::SubProcess::closeOutputFiles
void closeOutputFiles()
Definition: SubProcess.h:147
ParameterSet
Definition: Functions.h:16
edm::WaitingTaskHolder
Definition: WaitingTaskHolder.h:32
type
type
Definition: SiPixelVCal_PayloadInspector.cc:39
edm::SubProcess::processParameterSet_
edm::propagate_const< std::unique_ptr< ParameterSet > > processParameterSet_
Definition: SubProcess.h:309
edm::SubProcess::act_table_
std::unique_ptr< ExceptionToActionTable const > act_table_
Definition: SubProcess.h:292
ProductSelector.h
edm::SubProcess::keepThisBranch
void keepThisBranch(BranchDescription const &desc, std::map< BranchID, BranchDescription const * > &trueBranchIDToKeptBranchDesc, std::set< BranchID > &keptProductsInEvent)
Definition: SubProcess.cc:361
edm::detail::TriggerResultsBasedEventSelector
Definition: TriggerResultsBasedEventSelector.h:47
edm::SubProcess::droppedBranchIDToKeptBranchID_
std::map< BranchID::value_type, BranchID::value_type > droppedBranchIDToKeptBranchID_
Definition: SubProcess.h:326
Schedule.h
edm::SubProcess::writeRunAsync
void writeRunAsync(WaitingTaskHolder, ProcessHistoryID const &parentPhID, int runNumber, MergeableRunProductMetadata const *)
Definition: SubProcess.cc:624
edm::SubProcess::endPathsEnabled
bool endPathsEnabled() const
Return true if end_paths are active, and false if they are inactive.
Definition: SubProcess.h:220
edm::SubProcess::selectors_
detail::TriggerResultsBasedEventSelector selectors_
Definition: SubProcess.h:322
cuy.rep
rep
Definition: cuy.py:1189
edm::SubProcess::doStreamBeginLuminosityBlockAsync
void doStreamBeginLuminosityBlockAsync(WaitingTaskHolder iHolder, unsigned int iID, LumiTransitionInfo const &)
Definition: SubProcess.cc:764
trackerHitRTTI::vector
Definition: trackerHitRTTI.h:21
edm::SubProcess::respondToCloseInputFile
void respondToCloseInputFile(FileBlock const &fb)
Definition: SubProcess.h:166
edm::SubProcess::actReg_
std::shared_ptr< ActivityRegistry > actReg_
Definition: SubProcess.h:284
edm::eventsetup::EventSetupsController
Definition: EventSetupsController.h:80
edm::TriggerReport
Definition: TriggerReport.h:56
edm::SubProcess::writeProcessBlockAsync
void writeProcessBlockAsync(edm::WaitingTaskHolder task, ProcessBlockType)
Definition: SubProcess.cc:605
edm::SubProcess::SubProcess
SubProcess(ParameterSet &parameterSet, ParameterSet const &topLevelParameterSet, std::shared_ptr< ProductRegistry const > parentProductRegistry, std::shared_ptr< BranchIDListHelper const > parentBranchIDListHelper, ProcessBlockHelperBase const &parentProcessBlockHelper, ThinnedAssociationsHelper const &parentThinnedAssociationsHelper, SubProcessParentageHelper const &parentSubProcessParentageHelper, eventsetup::EventSetupsController &esController, ActivityRegistry &parentActReg, ServiceToken const &token, serviceregistry::ServiceLegacy iLegacy, PreallocationConfiguration const &preallocConfig, ProcessContext const *parentProcessContext)
Definition: SubProcess.cc:50
edm::PrincipalCache::ProcessBlockType
ProcessBlockType
Definition: PrincipalCache.h:57
edm::SubProcess::productSelector_
ProductSelector productSelector_
Definition: SubProcess.h:317
edm::PreallocationConfiguration
Definition: PreallocationConfiguration.h:27
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
edm::SubProcess::doStreamBeginRunAsync
void doStreamBeginRunAsync(WaitingTaskHolder iHolder, unsigned int iID, RunTransitionInfo const &)
Definition: SubProcess.cc:742
edm::SelectedProductsForBranchType
std::array< SelectedProducts, NumBranchTypes > SelectedProductsForBranchType
Definition: SelectedProducts.h:13
edm::SubProcess::totalEvents
int totalEvents() const
Definition: SubProcess.h:196
edm::SubProcess::endJob
void endJob()
Definition: SubProcess.cc:306
edm::SubProcess::parentToChildPhID_
std::map< ProcessHistoryID, ProcessHistoryID > parentToChildPhID_
Definition: SubProcess.h:307
edm::SubProcess::doBeginStream
void doBeginStream(unsigned int)
Definition: SubProcess.cc:730
edm::SubProcess::parentPreg_
std::shared_ptr< ProductRegistry const > parentPreg_
Definition: SubProcess.h:286
edm::SubProcess::doEndRunAsync
void doEndRunAsync(WaitingTaskHolder iHolder, RunTransitionInfo const &iTransitionInfo, bool cleaningUpAfterException)
Definition: SubProcess.cc:592
edm::SubProcess::doBeginRunAsync
void doBeginRunAsync(WaitingTaskHolder iHolder, RunTransitionInfo const &iTransitionInfo)
Definition: SubProcess.cc:562
edm::SubProcess::fixBranchIDListsForEDAliases
void fixBranchIDListsForEDAliases(std::map< BranchID::value_type, BranchID::value_type > const &droppedBranchIDToKeptBranchID)
Definition: SubProcess.cc:380
edm::SubProcess::branchIDListHelper
std::shared_ptr< BranchIDListHelper > & branchIDListHelper()
Definition: SubProcess.h:276
edm::SubProcess::branchIDListHelper_
edm::propagate_const< std::shared_ptr< BranchIDListHelper > > branchIDListHelper_
Definition: SubProcess.h:288
ServiceLegacy.h
edm::SubProcess::shouldWeCloseOutput
bool shouldWeCloseOutput() const
Definition: SubProcess.h:173
edm::SubProcess::historyAppenders_
std::vector< HistoryAppender > historyAppenders_
Definition: SubProcess.h:301
edm::BranchDescription
Definition: BranchDescription.h:32
edm::SubProcess::writeLumiAsync
void writeLumiAsync(WaitingTaskHolder, LuminosityBlockPrincipal &)
Definition: SubProcess.cc:704
edm::SubProcess::processContext_
ProcessContext processContext_
Definition: SubProcess.h:294
edm::SubProcess::subProcessParentageHelper_
edm::propagate_const< std::shared_ptr< SubProcessParentageHelper > > subProcessParentageHelper_
Definition: SubProcess.h:291
get_underlying_safe.h
ProcessContext.h
edm::SubProcess::keepOnlyConsumedUnscheduledModules
std::vector< ModuleProcessName > keepOnlyConsumedUnscheduledModules(bool deleteModules)
Definition: SubProcess.cc:231
edm::ServiceRegistry::Operate
Definition: ServiceRegistry.h:40
edm::SubProcess::doStreamEndLuminosityBlockAsync
void doStreamEndLuminosityBlockAsync(WaitingTaskHolder iHolder, unsigned int iID, LumiTransitionInfo const &, bool cleaningUpAfterException)
Definition: SubProcess.cc:776
edm::SubProcess::clearCounters
void clearCounters()
Clear all the counters in the trigger report.
Definition: SubProcess.h:248
edm::SubProcess::thinnedAssociationsHelper
std::shared_ptr< ThinnedAssociationsHelper > thinnedAssociationsHelper()
Definition: SubProcess.h:280
SelectedProducts.h
edm::serviceregistry::ServiceLegacy
ServiceLegacy
Definition: ServiceLegacy.h:29
TriggerResultsBasedEventSelector.h
ProductSelectorRules.h
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
FWCoreCommonFwd.h
edm::SubProcess::doEndLuminosityBlockAsync
void doEndLuminosityBlockAsync(WaitingTaskHolder iHolder, LumiTransitionInfo const &iTransitionInfo, bool cleaningUpAfterException)
Definition: SubProcess.cc:690
edm::SubProcess::preg_
std::shared_ptr< ProductRegistry const > preg_
Definition: SubProcess.h:287
unpackBuffers-CaloStage2.token
token
Definition: unpackBuffers-CaloStage2.py:316
edm::SubProcess::principalCache_
PrincipalCache principalCache_
Definition: SubProcess.h:302