|
|
Go to the documentation of this file. 1 #ifndef FWCore_Framework_Schedule_h
2 #define FWCore_Framework_Schedule_h
96 class TriggerNamesService;
98 namespace evetnsetup {
137 std::shared_ptr<ActivityRegistry> areg,
138 std::shared_ptr<ProcessConfiguration> processConfiguration,
139 bool hasSubprocesses,
144 unsigned int iStreamID,
149 template <
typename T>
151 typename T::MyPrincipal& principal,
154 bool cleaningUpAfterException =
false);
156 template <
typename T>
158 unsigned int iStreamID,
159 typename T::MyPrincipal& principal,
162 bool cleaningUpAfterException =
false);
207 void availablePaths(std::vector<std::string>& oLabelsToFill)
const;
212 void triggerPaths(std::vector<std::string>& oLabelsToFill)
const;
215 void endPaths(std::vector<std::string>& oLabelsToFill)
const;
223 std::vector<ModuleDescription const*>& descriptions,
224 unsigned int hint)
const;
229 std::vector<ModuleDescription const*>& descriptions,
230 unsigned int hint)
const;
233 std::vector<std::pair<unsigned int, unsigned int>>& moduleIDToIndex,
234 std::vector<std::vector<ModuleDescription const*>>& modulesWhoseProductsAreConsumedBy,
317 template <
typename T>
319 unsigned int iStreamID,
320 typename T::MyPrincipal&
ep,
323 bool cleaningUpAfterException) {
329 template <
typename T>
331 typename T::MyPrincipal&
ep,
334 bool cleaningUpAfterException) {
void beginJob(ProductRegistry const &, eventsetup::ESRecordsToProxyIndices const &)
Schedule(ParameterSet &proc_pset, service::TriggerNamesService const &tns, ProductRegistry &pregistry, BranchIDListHelper &branchIDListHelper, ThinnedAssociationsHelper &thinnedAssociationsHelper, SubProcessParentageHelper const *subProcessParentageHelper, ExceptionToActionTable const &actions, std::shared_ptr< ActivityRegistry > areg, std::shared_ptr< ProcessConfiguration > processConfiguration, bool hasSubprocesses, PreallocationConfiguration const &config, ProcessContext const *processContext)
std::vector< std::string > vstring
std::shared_ptr< TriggerResultInserter > & resultsInserter()
void limitOutput(ParameterSet const &proc_pset, BranchIDLists const &branchIDLists, SubProcessParentageHelper const *subProcessParentageHelper)
std::vector< std::string > const * pathNames_
void endStream(unsigned int)
void writeRunAsync(WaitingTaskHolder iTask, RunPrincipal const &rp, ProcessContext const *, ActivityRegistry *, MergeableRunProductMetadata const *)
std::shared_ptr< ModuleRegistry const > moduleRegistry() const
void modulesInPath(std::string const &iPathLabel, std::vector< std::string > &oLabelsToFill) const
adds to oLabelsToFill in execution order the labels of all modules in path iPathLabel
void processOneStreamAsync(WaitingTaskHolder iTask, unsigned int iStreamID, typename T::MyPrincipal &principal, EventSetupImpl const &eventSetup, ServiceToken const &token, bool cleaningUpAfterException=false)
void clearCounters()
Clear all the counters in the trigger report.
void openOutputFiles(FileBlock &fb)
void moduleDescriptionsInEndPath(std::string const &iEndPathLabel, std::vector< ModuleDescription const * > &descriptions, unsigned int hint) const
std::vector< edm::propagate_const< std::shared_ptr< EndPathStatusInserter > > > endPathStatusInserters_
int totalEventsFailed() const
void convertCurrentProcessAlias(std::string const &processName)
Convert "@currentProcess" in InputTag process names to the actual current process name.
void availablePaths(std::vector< std::string > &oLabelsToFill) const
adds to oLabelsToFill the labels for all paths in the process
bool shouldWeCloseOutput() const
void endJob(ExceptionCollector &collector)
void processOneEventAsync(WaitingTaskHolder iTask, unsigned int iStreamID, EventPrincipal &principal, EventSetupImpl const &eventSetup, ServiceToken const &token)
bool changeModule(std::string const &iLabel, ParameterSet const &iPSet, const ProductRegistry &iRegistry, eventsetup::ESRecordsToProxyIndices const &)
std::vector< edm::propagate_const< std::shared_ptr< OutputModuleCommunicator > > > AllOutputModuleCommunicators
void beginStream(unsigned int)
std::vector< BranchIDList > BranchIDLists
void getTriggerReport(TriggerReport &rep) const
std::shared_ptr< T > & get_underlying_safe(propagate_const< std::shared_ptr< T >> &iP)
std::vector< edm::propagate_const< std::shared_ptr< StreamSchedule > > > streamSchedules_
bool endPathsEnabled() const
bool terminate() const
Return whether each output module has reached its maximum count.
std::vector< edm::propagate_const< std::shared_ptr< PathStatusInserter > > > pathStatusInserters_
void fillModuleAndConsumesInfo(std::vector< ModuleDescription const * > &allModuleDescriptions, std::vector< std::pair< unsigned int, unsigned int >> &moduleIDToIndex, std::vector< std::vector< ModuleDescription const * >> &modulesWhoseProductsAreConsumedBy, ProductRegistry const &preg) const
volatile bool endpathsAreActive_
void respondToCloseInputFile(FileBlock const &fb)
std::vector< Worker * > AllWorkers
AllOutputModuleCommunicators all_output_communicators_
void processOneGlobalAsync(WaitingTaskHolder iTask, typename T::MyPrincipal &principal, EventSetupImpl const &eventSetup, ServiceToken const &token, bool cleaningUpAfterException=false)
void respondToOpenInputFile(FileBlock const &fb)
void endPaths(std::vector< std::string > &oLabelsToFill) const
adds to oLabelsToFill the labels for all end paths in the process
int totalEventsPassed() const
void enableEndPaths(bool active)
std::vector< std::string > const * endPathNames_
AllWorkers const & allWorkers() const
returns the collection of pointers to workers
void moduleDescriptionsInPath(std::string const &iPathLabel, std::vector< ModuleDescription const * > &descriptions, unsigned int hint) const
std::shared_ptr< TriggerResultInserter const > resultsInserter() const
edm::propagate_const< std::unique_ptr< SystemTimeKeeper > > summaryTimeKeeper_
void writeLumiAsync(WaitingTaskHolder iTask, LuminosityBlockPrincipal const &lbp, ProcessContext const *, ActivityRegistry *)
edm::propagate_const< std::unique_ptr< GlobalSchedule > > globalSchedule_
roAction_t actions[nactions]
edm::propagate_const< std::shared_ptr< ModuleRegistry > > moduleRegistry_
std::vector< ModuleDescription const * > getAllModuleDescriptions() const
void triggerPaths(std::vector< std::string > &oLabelsToFill) const
std::vector< Worker * > Workers
std::shared_ptr< ModuleRegistry > & moduleRegistry()
PreallocationConfiguration preallocConfig_
void getTriggerTimingReport(TriggerTimingReport &rep) const
edm::propagate_const< std::shared_ptr< TriggerResultInserter > > resultsInserter_