CMS 3D CMS Logo

EventProcessor.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_EventProcessor_h
2 #define FWCore_Framework_EventProcessor_h
3 
4 /*----------------------------------------------------------------------
5 
6 EventProcessor: This defines the 'framework application' object. It is
7 configured in the user's main() function, and is set running.
8 
9 ----------------------------------------------------------------------*/
10 
14 
24 
26 
31 
34 
37 
38 #include <map>
39 #include <memory>
40 #include <set>
41 #include <string>
42 #include <vector>
43 #include <exception>
44 #include <mutex>
45 
46 namespace edm {
47 
48  class ExceptionToActionTable;
49  class BranchIDListHelper;
50  class MergeableRunProductMetadata;
51  class ThinnedAssociationsHelper;
52  class EDLooperBase;
53  class HistoryAppender;
54  class ProcessDesc;
55  class SubProcess;
56  class WaitingTaskHolder;
57  class LuminosityBlockPrincipal;
59  class IOVSyncValue;
60 
61  namespace eventsetup {
62  class EventSetupProvider;
63  class EventSetupsController;
64  } // namespace eventsetup
65 
67  public:
68  // Status codes:
69  // 0 successful completion
70  // 1 exception of unknown type caught
71  // 2 everything else
72  // 3 signal received
73  // 4 input complete
74  // 5 call timed out
75  // 6 input count complete
76  enum StatusCode {
77  epSuccess = 0,
79  epOther = 2,
80  epSignal = 3,
84  };
85 
86  // The input 'parameterSet' contains the entire contents of a configuration file.
87  // Also allows the attachement of pre-existing services specified by 'token', and
88  // the specification of services by name only (defaultServices and forcedServices).
89  // 'defaultServices' are overridden by 'parameterSet'.
90  // 'forcedServices' the 'parameterSet'.
91  explicit EventProcessor(std::unique_ptr<ParameterSet> parameterSet,
92  ServiceToken const& token = ServiceToken(),
94  std::vector<std::string> const& defaultServices = std::vector<std::string>(),
95  std::vector<std::string> const& forcedServices = std::vector<std::string>());
96 
97  // Same as previous constructor, but without a 'token'. Token will be defaulted.
98 
99  EventProcessor(std::unique_ptr<ParameterSet> parameterSet,
100  std::vector<std::string> const& defaultServices,
101  std::vector<std::string> const& forcedServices = std::vector<std::string>());
102 
103  EventProcessor(std::shared_ptr<ProcessDesc> processDesc,
104  ServiceToken const& token,
106 
107  ~EventProcessor();
108 
109  EventProcessor(EventProcessor const&) = delete; // Disallow copying and moving
110  EventProcessor& operator=(EventProcessor const&) = delete; // Disallow copying and moving
111 
112  void taskCleanup();
113 
118  void beginJob();
119 
123  void endJob();
124 
125  // -------------
126 
127  // Same as runToCompletion(false) but since it was used extensively
128  // outside of the framework (and is simpler) will keep
129  StatusCode run();
130 
133 
137 
138  std::vector<ModuleDescription const*> getAllModuleDescriptions() const;
139 
141 
145  int totalEvents() const;
146 
149  int totalEventsPassed() const;
150 
153  int totalEventsFailed() const;
154 
157  void enableEndPaths(bool active);
158 
161  bool endPathsEnabled() const;
162 
164  void clearCounters();
165 
166  // Really should not be public,
167  // but the EventFilter needs it for now.
169 
170  //------------------------------------------------------------------
171  //
172  // Nested classes and structs below.
173 
174  // The function "runToCompletion" will run until the job is "complete",
175  // which means:
176  // 1 - no more input data
177  // 2 - input maxEvents parameter limit reached
178  // 3 - output maxEvents parameter limit reached
179  // 4 - input maxLuminosityBlocks parameter limit reached
180  // 5 - looper directs processing to end
181  //
182  // The return values from the function are as follows:
183  // epSignal - processing terminated early, SIGUSR2 encountered
184  // epCountComplete - "runEventCount" processed the number of events
185  // requested by the argument
186  // epSuccess - all other cases
187  //
189 
190  // The following functions are used by the code implementing
191  // transition handling.
192 
196  return InputSource::IsStop;
197  }
198  return lastSourceTransition_;
199  }
200  std::pair<edm::ProcessHistoryID, edm::RunNumber_t> nextRunID();
202 
203  void readFile();
204  bool fileBlockValid() { return fb_.get() != nullptr; }
205  void closeInputFile(bool cleaningUpAfterException);
206  void openOutputFiles();
207  void closeOutputFiles();
208 
209  void respondToOpenInputFile();
211 
212  void startingNewLoop();
213  bool endOfLoop();
214  void rewindInput();
215  void prepareForNextLoop();
216  bool shouldWeCloseOutput() const;
217 
218  void doErrorStuff();
219 
220  void beginProcessBlock(bool& beginProcessBlockSucceeded);
221  void inputProcessBlocks();
222  void endProcessBlock(bool cleaningUpAfterException, bool beginProcessBlockSucceeded);
223 
224  void beginRun(ProcessHistoryID const& phid,
226  bool& globalBeginSucceeded,
227  bool& eventSetupForInstanceSucceeded);
228  void endRun(ProcessHistoryID const& phid, RunNumber_t run, bool globalBeginSucceeded, bool cleaningUpAfterException);
229  void endUnfinishedRun(ProcessHistoryID const& phid,
231  bool globalBeginSucceeded,
232  bool cleaningUpAfterException,
233  bool eventSetupForInstanceSucceeded);
234 
235  InputSource::ItemType processLumis(std::shared_ptr<void> const& iRunResource);
236  void endUnfinishedLumi();
237 
238  void beginLumiAsync(edm::IOVSyncValue const& iSyncValue,
239  std::shared_ptr<void> const& iRunResource,
240  edm::WaitingTaskHolder iHolder);
242 
243  void handleEndLumiExceptions(std::exception_ptr const* iPtr, WaitingTaskHolder& holder);
244  void globalEndLumiAsync(edm::WaitingTaskHolder iTask, std::shared_ptr<LuminosityBlockProcessingStatus> iLumiStatus);
245  void streamEndLumiAsync(edm::WaitingTaskHolder iTask, unsigned int iStreamIndex);
247  std::pair<ProcessHistoryID, RunNumber_t> readRun();
248  std::pair<ProcessHistoryID, RunNumber_t> readAndMergeRun();
254  ProcessHistoryID const& phid,
260 
261  bool shouldWeStop() const;
262 
263  void setExceptionMessageFiles(std::string& message);
264  void setExceptionMessageRuns(std::string& message);
266 
267  bool setDeferredException(std::exception_ptr);
268 
269  private:
270  //------------------------------------------------------------------
271  //
272  // Now private functions.
273  // init() is used by only by constructors
274  void init(std::shared_ptr<ProcessDesc>& processDesc, ServiceToken const& token, serviceregistry::ServiceLegacy);
275 
276  bool readNextEventForStream(unsigned int iStreamIndex, LuminosityBlockProcessingStatus& iLumiStatus);
277 
278  void handleNextEventForStreamAsync(WaitingTaskHolder iTask, unsigned int iStreamIndex);
279 
280  //read the next event using Stream iStreamIndex
281  void readEvent(unsigned int iStreamIndex);
282 
283  //process the already read event using Stream iStreamIndex
284  void processEventAsync(WaitingTaskHolder iHolder, unsigned int iStreamIndex);
285 
286  void processEventAsyncImpl(WaitingTaskHolder iHolder, unsigned int iStreamIndex);
287 
288  //returns true if an asynchronous stop was requested
290 
291  void processEventWithLooper(EventPrincipal&, unsigned int iStreamIndex);
292 
293  std::shared_ptr<ProductRegistry const> preg() const { return get_underlying_safe(preg_); }
294  std::shared_ptr<ProductRegistry>& preg() { return get_underlying_safe(preg_); }
295  std::shared_ptr<BranchIDListHelper const> branchIDListHelper() const {
297  }
298  std::shared_ptr<BranchIDListHelper>& branchIDListHelper() { return get_underlying_safe(branchIDListHelper_); }
299  std::shared_ptr<ThinnedAssociationsHelper const> thinnedAssociationsHelper() const {
301  }
302  std::shared_ptr<ThinnedAssociationsHelper>& thinnedAssociationsHelper() {
304  }
305  std::shared_ptr<EDLooperBase const> looper() const { return get_underlying_safe(looper_); }
306  std::shared_ptr<EDLooperBase>& looper() { return get_underlying_safe(looper_); }
307 
309  void warnAboutLegacyModules() const;
310  //------------------------------------------------------------------
311  //
312  // Data members below.
313  // Are all these data members really needed? Some of them are used
314  // only during construction, and never again. If they aren't
315  // really needed, we should remove them.
316 
317  //Guarantee that task group is the last to be destroyed
318  tbb::task_group taskGroup_;
319 
320  std::shared_ptr<ActivityRegistry> actReg_; // We do not use propagate_const because the registry itself is mutable.
331  std::unique_ptr<ExceptionToActionTable const> act_table_;
332  std::shared_ptr<ProcessConfiguration const> processConfiguration_;
337  std::vector<edm::SerialTaskQueue> streamQueues_;
338  std::unique_ptr<edm::LimitedTaskQueue> lumiQueue_;
339  std::vector<std::shared_ptr<LuminosityBlockProcessingStatus>> streamLumiStatus_;
340  std::atomic<unsigned int> streamLumiActive_{0}; //works as guard for streamLumiStatus
341 
342  std::vector<SubProcess> subProcesses_;
344 
347 
348  //The atomic protects concurrent access of deferredExceptionPtr_
349  std::atomic<bool> deferredExceptionPtrIsSet_;
350  std::exception_ptr deferredExceptionPtr_;
351 
353  std::shared_ptr<std::recursive_mutex> sourceMutex_;
360  std::atomic<bool> exceptionMessageLumis_;
364 
366 
369  bool firstEventInBlock_ = true;
370 
371  typedef std::set<std::pair<std::string, std::string>> ExcludedData;
372  typedef std::map<std::string, ExcludedData> ExcludedDataMap;
374 
375  bool printDependencies_ = false;
377  }; // class EventProcessor
378 
379  //--------------------------------------------------------------------
380 
382 } // namespace edm
383 #endif
edm::EventProcessor::looperBeginJobRun_
bool looperBeginJobRun_
Definition: EventProcessor.h:362
edm::SharedResourcesAcquirer
Definition: SharedResourcesAcquirer.h:34
edm::EventProcessor::deleteRunFromCache
void deleteRunFromCache(ProcessHistoryID const &phid, RunNumber_t run)
Definition: EventProcessor.cc:1734
edm::RunNumber_t
unsigned int RunNumber_t
Definition: RunLumiEventNumber.h:14
edm::EventProcessor::historyAppender_
edm::propagate_const< std::unique_ptr< HistoryAppender > > historyAppender_
Definition: EventProcessor.h:343
ProcessHistoryID.h
edm::EventProcessor::readProcessBlock
void readProcessBlock(ProcessBlockPrincipal &)
Definition: EventProcessor.cc:1616
edm::EventProcessor::thinnedAssociationsHelper
std::shared_ptr< ThinnedAssociationsHelper const > thinnedAssociationsHelper() const
Definition: EventProcessor.h:299
edm::EventProcessor::rewindInput
void rewindInput()
Definition: EventProcessor.cc:943
edm::EventProcessor::eventSetupDataToExcludeFromPrefetching_
ExcludedDataMap eventSetupDataToExcludeFromPrefetching_
Definition: EventProcessor.h:373
edm::EventProcessor::respondToCloseInputFile
void respondToCloseInputFile()
Definition: EventProcessor.cc:910
edm::EventProcessor::totalEventsPassed
int totalEventsPassed() const
Definition: EventProcessor.cc:732
edm::EventProcessor::preg_
edm::propagate_const< std::shared_ptr< ProductRegistry > > preg_
Definition: EventProcessor.h:321
edm::EventProcessor::readRun
std::pair< ProcessHistoryID, RunNumber_t > readRun()
Definition: EventProcessor.cc:1622
edm::EventProcessor::shouldWeCloseOutput
bool shouldWeCloseOutput() const
Definition: EventProcessor.cc:954
edm::EventProcessor::writeRunAsync
void writeRunAsync(WaitingTaskHolder, ProcessHistoryID const &phid, RunNumber_t run, MergeableRunProductMetadata const *)
Definition: EventProcessor.cc:1711
edm::EventProcessor::StatusCode
StatusCode
Definition: EventProcessor.h:76
edm::EventProcessor::processBlockHelper_
edm::propagate_const< std::shared_ptr< ProcessBlockHelper > > processBlockHelper_
Definition: EventProcessor.h:323
edm::EventProcessor::endOfLoop
bool endOfLoop()
Definition: EventProcessor.cc:928
edm::EventProcessor::fb_
edm::propagate_const< std::shared_ptr< FileBlock > > fb_
Definition: EventProcessor.h:345
edm::EventProcessor::input_
edm::propagate_const< std::unique_ptr< InputSource > > input_
Definition: EventProcessor.h:326
edm::EventProcessor::getToken
ServiceToken getToken()
Definition: EventProcessor.cc:724
edm::EventProcessor::startingNewLoop
void startingNewLoop()
Definition: EventProcessor.cc:918
edm::EventProcessor::totalEvents
int totalEvents() const
Definition: EventProcessor.cc:730
propagate_const.h
edm::EventProcessor::processConfiguration
ProcessConfiguration const & processConfiguration() const
Definition: EventProcessor.h:140
edm::EventProcessor::deleteLumiFromCache
void deleteLumiFromCache(LuminosityBlockProcessingStatus &)
Definition: EventProcessor.cc:1758
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::EventProcessor::endJob
void endJob()
Definition: EventProcessor.cc:693
edm::ProcessContext
Definition: ProcessContext.h:27
edm::EventProcessor::warnAboutLegacyModules
void warnAboutLegacyModules() const
Definition: EventProcessor.cc:2003
edm::EventProcessor::globalEndLumiAsync
void globalEndLumiAsync(edm::WaitingTaskHolder iTask, std::shared_ptr< LuminosityBlockProcessingStatus > iLumiStatus)
Definition: EventProcessor.cc:1478
edm::EventProcessor::runToCompletion
StatusCode runToCompletion()
Definition: EventProcessor.cc:789
edm::EventProcessor::readAndMergeRun
std::pair< ProcessHistoryID, RunNumber_t > readAndMergeRun()
Definition: EventProcessor.cc:1645
edm::EventProcessor::esp_
edm::propagate_const< std::shared_ptr< eventsetup::EventSetupProvider > > esp_
Definition: EventProcessor.h:329
edm::EventProcessor::shouldWeStop_
bool shouldWeStop_
Definition: EventProcessor.h:356
edm::EventProcessor::readEvent
void readEvent(unsigned int iStreamIndex)
Definition: EventProcessor.cc:1885
edm::EventProcessor::processLumis
InputSource::ItemType processLumis(std::shared_ptr< void > const &iRunResource)
Definition: EventProcessor.cc:1258
edm::EventProcessor::epTimedOut
Definition: EventProcessor.h:82
edm::LuminosityBlockPrincipal
Definition: LuminosityBlockPrincipal.h:31
edm::EventProcessor::beginRun
void beginRun(ProcessHistoryID const &phid, RunNumber_t run, bool &globalBeginSucceeded, bool &eventSetupForInstanceSucceeded)
Definition: EventProcessor.cc:1070
edm::EventProcessor::enableEndPaths
void enableEndPaths(bool active)
Definition: EventProcessor.cc:736
edm::EventProcessor::endUnfinishedRun
void endUnfinishedRun(ProcessHistoryID const &phid, RunNumber_t run, bool globalBeginSucceeded, bool cleaningUpAfterException, bool eventSetupForInstanceSucceeded)
Definition: EventProcessor.cc:1165
edm::EventProcessor::branchIDListHelper
std::shared_ptr< BranchIDListHelper > & branchIDListHelper()
Definition: EventProcessor.h:298
edm::EventProcessor::deferredExceptionPtr_
std::exception_ptr deferredExceptionPtr_
Definition: EventProcessor.h:350
SignallingProductRegistry.h
edm::EventProcessor::lumiQueue_
std::unique_ptr< edm::LimitedTaskQueue > lumiQueue_
Definition: EventProcessor.h:338
edm::SerialTaskQueue
Definition: SerialTaskQueue.h:67
ServiceToken.h
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
PreallocationConfiguration.h
edm::EventProcessor::processContext_
ProcessContext processContext_
Definition: EventProcessor.h:333
edm::EventProcessor::lastSourceTransition_
InputSource::ItemType lastSourceTransition_
Definition: EventProcessor.h:327
edm::EventProcessor::pathsAndConsumesOfModules_
PathsAndConsumesOfModules pathsAndConsumesOfModules_
Definition: EventProcessor.h:334
edm::EventProcessor::exceptionMessageFiles_
std::string exceptionMessageFiles_
Definition: EventProcessor.h:358
edm::LuminosityBlockNumber_t
unsigned int LuminosityBlockNumber_t
Definition: RunLumiEventNumber.h:13
edm::EventProcessor::asyncStopRequestedWhileProcessingEvents_
bool asyncStopRequestedWhileProcessingEvents_
Definition: EventProcessor.h:367
edm::ProcessBlockPrincipal
Definition: ProcessBlockPrincipal.h:22
LuminosityBlockID.h
edm::EventProcessor::totalEventsFailed
int totalEventsFailed() const
Definition: EventProcessor.cc:734
edm::EventProcessor::thinnedAssociationsHelper
std::shared_ptr< ThinnedAssociationsHelper > & thinnedAssociationsHelper()
Definition: EventProcessor.h:302
edm::EventProcessor::setExceptionMessageRuns
void setExceptionMessageRuns(std::string &message)
Definition: EventProcessor.cc:1977
edm::PathsAndConsumesOfModules
Definition: PathsAndConsumesOfModules.h:32
edm::EventProcessor::setExceptionMessageFiles
void setExceptionMessageFiles(std::string &message)
Definition: EventProcessor.cc:1975
PathsAndConsumesOfModules.h
ActivityRegistry.h
edm::parameterSet
ParameterSet const & parameterSet(StableProvenance const &provenance, ProcessHistory const &history)
Definition: Provenance.cc:11
edm::EventProcessor::processEventAsyncImpl
void processEventAsyncImpl(WaitingTaskHolder iHolder, unsigned int iStreamIndex)
Definition: EventProcessor.cc:1903
edm::EventProcessor::endProcessBlock
void endProcessBlock(bool cleaningUpAfterException, bool beginProcessBlockSucceeded)
Definition: EventProcessor.cc:1033
SharedResourcesAcquirer.h
edm::ServiceToken
Definition: ServiceToken.h:42
edm::EventProcessor::inputProcessBlocks
void inputProcessBlocks()
Definition: EventProcessor.cc:997
edm::EventProcessor::exceptionMessageLumis_
std::atomic< bool > exceptionMessageLumis_
Definition: EventProcessor.h:360
edm::propagate_const
Definition: propagate_const.h:32
edm::EventProcessor::readAndMergeLumi
int readAndMergeLumi(LuminosityBlockProcessingStatus &)
Definition: EventProcessor.cc:1676
edm::EventPrincipal
Definition: EventPrincipal.h:48
edm::EventProcessor::queueWhichWaitsForIOVsToFinish_
edm::SerialTaskQueue queueWhichWaitsForIOVsToFinish_
Definition: EventProcessor.h:330
SerialTaskQueue.h
edm::EventProcessor::epSignal
Definition: EventProcessor.h:80
edm::EventProcessor::EventProcessor
EventProcessor(std::unique_ptr< ParameterSet > parameterSet, ServiceToken const &token=ServiceToken(), serviceregistry::ServiceLegacy=serviceregistry::kOverlapIsError, std::vector< std::string > const &defaultServices=std::vector< std::string >(), std::vector< std::string > const &forcedServices=std::vector< std::string >())
Definition: EventProcessor.cc:232
edm::EventProcessor::getAllModuleDescriptions
std::vector< ModuleDescription const * > getAllModuleDescriptions() const
Definition: EventProcessor.cc:726
edm::EventProcessor::endPathsEnabled
bool endPathsEnabled() const
Definition: EventProcessor.cc:738
edm::PrincipalCache
Definition: PrincipalCache.h:48
edm::EventProcessor::streamQueues_
std::vector< edm::SerialTaskQueue > streamQueues_
Definition: EventProcessor.h:337
edm::EventProcessor::epInputComplete
Definition: EventProcessor.h:81
edm::EventProcessor::openOutputFiles
void openOutputFiles()
Definition: EventProcessor.cc:885
edm::EventProcessor::readLuminosityBlock
void readLuminosityBlock(LuminosityBlockProcessingStatus &)
Definition: EventProcessor.cc:1657
edm::EventProcessor::taskCleanup
void taskCleanup()
Definition: EventProcessor.cc:578
edm::EventProcessor::sourceMutex_
std::shared_ptr< std::recursive_mutex > sourceMutex_
Definition: EventProcessor.h:353
edm::EventProcessor::clearCounters
void clearCounters()
Clears counters used by trigger report.
Definition: EventProcessor.cc:740
edm::EventProcessor::beginJobCalled_
bool beginJobCalled_
Definition: EventProcessor.h:355
edm::MergeableRunProductMetadata
Definition: MergeableRunProductMetadata.h:52
edm::LuminosityBlockProcessingStatus
Definition: LuminosityBlockProcessingStatus.h:41
WaitingTaskHolder
edm::EventProcessor::fileModeNoMerge_
bool fileModeNoMerge_
Definition: EventProcessor.h:357
IOVSyncValue
edm::Hash< ProcessHistoryType >
edm::EventProcessor::writeProcessBlockAsync
void writeProcessBlockAsync(WaitingTaskHolder, ProcessBlockType)
Definition: EventProcessor.cc:1693
edm::EventProcessor::warnAboutModulesRequiringLuminosityBLockSynchronization
void warnAboutModulesRequiringLuminosityBLockSynchronization() const
Definition: EventProcessor.cc:1990
LimitedTaskQueue.h
edm::EventProcessor::ExcludedData
std::set< std::pair< std::string, std::string > > ExcludedData
Definition: EventProcessor.h:371
edm::IOVSyncValue
Definition: IOVSyncValue.h:31
edm::EventProcessor::actReg_
std::shared_ptr< ActivityRegistry > actReg_
Definition: EventProcessor.h:320
edm::EventProcessor::exceptionMessageRuns_
std::string exceptionMessageRuns_
Definition: EventProcessor.h:359
edm::EventProcessor::printDependencies_
bool printDependencies_
Definition: EventProcessor.h:375
edm::EventProcessor::preallocations_
PreallocationConfiguration preallocations_
Definition: EventProcessor.h:365
LuminosityBlockProcessingStatus
edm::EventProcessor::act_table_
std::unique_ptr< ExceptionToActionTable const > act_table_
Definition: EventProcessor.h:331
edm::EventProcessor::deleteNonConsumedUnscheduledModules_
bool deleteNonConsumedUnscheduledModules_
Definition: EventProcessor.h:376
edm::EventProcessor::beginLumiAsync
void beginLumiAsync(edm::IOVSyncValue const &iSyncValue, std::shared_ptr< void > const &iRunResource, edm::WaitingTaskHolder iHolder)
Definition: EventProcessor.cc:1280
edm::EventProcessor::espController_
edm::propagate_const< std::unique_ptr< eventsetup::EventSetupsController > > espController_
Definition: EventProcessor.h:328
edm::EventProcessor::streamLumiStatus_
std::vector< std::shared_ptr< LuminosityBlockProcessingStatus > > streamLumiStatus_
Definition: EventProcessor.h:339
PrincipalCache.h
edm::WaitingTaskHolder
Definition: WaitingTaskHolder.h:32
edm::EventProcessor::streamEndLumiAsync
void streamEndLumiAsync(edm::WaitingTaskHolder iTask, unsigned int iStreamIndex)
Definition: EventProcessor.cc:1551
edm::EventProcessor::preg
std::shared_ptr< ProductRegistry > & preg()
Definition: EventProcessor.h:294
edm::EventProcessor::epException
Definition: EventProcessor.h:78
edm::EventProcessor::serviceToken_
ServiceToken serviceToken_
Definition: EventProcessor.h:325
edm::serviceregistry::kOverlapIsError
Definition: ServiceLegacy.h:29
edm::EventProcessor::lastTransitionType
InputSource::ItemType lastTransitionType() const
Definition: EventProcessor.h:194
edm::EventProcessor::thinnedAssociationsHelper_
edm::propagate_const< std::shared_ptr< ThinnedAssociationsHelper > > thinnedAssociationsHelper_
Definition: EventProcessor.h:324
edm::EventProcessor::readNextEventForStream
bool readNextEventForStream(unsigned int iStreamIndex, LuminosityBlockProcessingStatus &iLumiStatus)
Definition: EventProcessor.cc:1766
edm::EventProcessor::forceLooperToEnd_
bool forceLooperToEnd_
Definition: EventProcessor.h:361
edm::EventProcessor::epCountComplete
Definition: EventProcessor.h:83
edm::InputSource::IsStop
Definition: InputSource.h:54
edm::EventProcessor::epOther
Definition: EventProcessor.h:79
edm::EventProcessor::streamLumiActive_
std::atomic< unsigned int > streamLumiActive_
Definition: EventProcessor.h:340
edm::EventProcessor::mergeableRunProductProcesses_
MergeableRunProductProcesses mergeableRunProductProcesses_
Definition: EventProcessor.h:335
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::EventProcessor::operator=
EventProcessor & operator=(EventProcessor const &)=delete
edm::EventProcessor::endUnfinishedLumi
void endUnfinishedLumi()
Definition: EventProcessor.cc:1596
edm::EventProcessor::readFile
void readFile()
Definition: EventProcessor.cc:858
edm::PrincipalCache::ProcessBlockType
ProcessBlockType
Definition: PrincipalCache.h:57
edm::EventProcessor::asyncStopStatusCodeFromProcessingEvents_
StatusCode asyncStopStatusCodeFromProcessingEvents_
Definition: EventProcessor.h:368
edm::EventProcessor::looper_
edm::propagate_const< std::shared_ptr< EDLooperBase > > looper_
Definition: EventProcessor.h:346
edm::EventProcessor::sourceResourcesAcquirer_
SharedResourcesAcquirer sourceResourcesAcquirer_
Definition: EventProcessor.h:352
edm::EventProcessor::setDeferredException
bool setDeferredException(std::exception_ptr)
Definition: EventProcessor.cc:1981
edm::InputSource::ItemType
ItemType
Definition: InputSource.h:54
edm::EventProcessor::continueLumiAsync
void continueLumiAsync(edm::WaitingTaskHolder iHolder)
Definition: EventProcessor.cc:1452
edm::EventProcessor::doErrorStuff
void doErrorStuff()
Definition: EventProcessor.cc:967
edm::PreallocationConfiguration
Definition: PreallocationConfiguration.h:27
edm::EventProcessor::~EventProcessor
~EventProcessor()
Definition: EventProcessor.cc:560
edm::EventProcessor::beginProcessBlock
void beginProcessBlock(bool &beginProcessBlockSucceeded)
Definition: EventProcessor.cc:976
edm::EventProcessor::firstEventInBlock_
bool firstEventInBlock_
Definition: EventProcessor.h:369
edm::EventProcessor::closeInputFile
void closeInputFile(bool cleaningUpAfterException)
Definition: EventProcessor.cc:876
edm::EventProcessor::taskGroup_
tbb::task_group taskGroup_
Definition: EventProcessor.h:318
EDLooperBase
edm::EventProcessor::principalCache_
PrincipalCache principalCache_
Definition: EventProcessor.h:354
Frameworkfwd.h
InputSource.h
edm::EventProcessor::branchIDListHelper
std::shared_ptr< BranchIDListHelper const > branchIDListHelper() const
Definition: EventProcessor.h:295
edm::EventProcessor::looper
std::shared_ptr< EDLooperBase > & looper()
Definition: EventProcessor.h:306
edm::EventProcessor::deferredExceptionPtrIsSet_
std::atomic< bool > deferredExceptionPtrIsSet_
Definition: EventProcessor.h:349
edm::EventProcessor::epSuccess
Definition: EventProcessor.h:77
edm::EventProcessor::processConfiguration_
std::shared_ptr< ProcessConfiguration const > processConfiguration_
Definition: EventProcessor.h:332
ServiceLegacy.h
edm::EventProcessor::run
StatusCode run()
Definition: EventProcessor.h:381
MergeableRunProductProcesses.h
edm::EventProcessor::handleEndLumiExceptions
void handleEndLumiExceptions(std::exception_ptr const *iPtr, WaitingTaskHolder &holder)
Definition: EventProcessor.cc:1469
edm::EventProcessor::processEventWithLooper
void processEventWithLooper(EventPrincipal &, unsigned int iStreamIndex)
Definition: EventProcessor.cc:1932
edm::EventProcessor::fileBlockValid
bool fileBlockValid()
Definition: EventProcessor.h:204
edm::EventProcessor::endRun
void endRun(ProcessHistoryID const &phid, RunNumber_t run, bool globalBeginSucceeded, bool cleaningUpAfterException)
Definition: EventProcessor.cc:1192
edm::EventProcessor::setExceptionMessageLumis
void setExceptionMessageLumis()
Definition: EventProcessor.cc:1979
edm::EventProcessor::looper
std::shared_ptr< EDLooperBase const > looper() const
Definition: EventProcessor.h:305
edm::EventProcessor::nextLuminosityBlockID
edm::LuminosityBlockNumber_t nextLuminosityBlockID()
Definition: EventProcessor.cc:787
edm::EventProcessor
Definition: EventProcessor.h:66
edm::EventProcessor::closeOutputFiles
void closeOutputFiles()
Definition: EventProcessor.cc:893
ParameterSet.h
edm::EventProcessor::subProcesses_
std::vector< SubProcess > subProcesses_
Definition: EventProcessor.h:342
edm::EventProcessor::nextTransitionType
InputSource::ItemType nextTransitionType()
Definition: EventProcessor.cc:757
edm::EventProcessor::prepareForNextLoop
void prepareForNextLoop()
Definition: EventProcessor.cc:949
edm::EventProcessor::init
void init(std::shared_ptr< ProcessDesc > &processDesc, ServiceToken const &token, serviceregistry::ServiceLegacy)
Definition: EventProcessor.cc:342
edm::EventProcessor::respondToOpenInputFile
void respondToOpenInputFile()
Definition: EventProcessor.cc:900
edm::EventProcessor::processEventAsync
void processEventAsync(WaitingTaskHolder iHolder, unsigned int iStreamIndex)
Definition: EventProcessor.cc:1899
get_underlying_safe.h
ProcessContext.h
edm::EventProcessor::shouldWeStop
bool shouldWeStop() const
Definition: EventProcessor.cc:1960
edm::EventProcessor::preg
std::shared_ptr< ProductRegistry const > preg() const
Definition: EventProcessor.h:293
edm::EventProcessor::schedule_
edm::propagate_const< std::unique_ptr< Schedule > > schedule_
Definition: EventProcessor.h:336
RunID.h
edm::EventProcessor::writeLumiAsync
void writeLumiAsync(WaitingTaskHolder, LuminosityBlockPrincipal &lumiPrincipal)
Definition: EventProcessor.cc:1740
edm::EventProcessor::nextRunID
std::pair< edm::ProcessHistoryID, edm::RunNumber_t > nextRunID()
Definition: EventProcessor.cc:783
edm::EventProcessor::handleNextEventForStreamAsync
void handleNextEventForStreamAsync(WaitingTaskHolder iTask, unsigned int iStreamIndex)
Definition: EventProcessor.cc:1828
edm::ProcessConfiguration
Definition: ProcessConfiguration.h:14
edm::EventProcessor::branchIDListHelper_
edm::propagate_const< std::shared_ptr< BranchIDListHelper > > branchIDListHelper_
Definition: EventProcessor.h:322
edm::EventProcessor::ExcludedDataMap
std::map< std::string, ExcludedData > ExcludedDataMap
Definition: EventProcessor.h:372
edm::serviceregistry::ServiceLegacy
ServiceLegacy
Definition: ServiceLegacy.h:29
edm::EventProcessor::checkForAsyncStopRequest
bool checkForAsyncStopRequest(StatusCode &)
Definition: EventProcessor.cc:746
edm::EventProcessor::forceESCacheClearOnNewRun_
bool forceESCacheClearOnNewRun_
Definition: EventProcessor.h:363
edm::EventProcessor::beginJob
void beginJob()
Definition: EventProcessor.cc:585
FWCoreCommonFwd.h
unpackBuffers-CaloStage2.token
token
Definition: unpackBuffers-CaloStage2.py:316
edm::MergeableRunProductProcesses
Definition: MergeableRunProductProcesses.h:11