CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ScheduleItems.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_ScheduleItems_h
2 #define FWCore_Framework_ScheduleItems_h
3 
6 
7 #include "boost/shared_ptr.hpp"
8 
9 #include <memory>
10 #include <vector>
11 
12 namespace edm {
13  class ExceptionToActionTable;
14  class ActivityRegistry;
15  class BranchIDListHelper;
16  class CommonParams;
17  class SubProcess;
18  class ParameterSet;
19  class ProcessConfiguration;
20  class ProcessContext;
21  class ProductRegistry;
22  class Schedule;
24  class StreamID;
25  class PreallocationConfiguration;
26 
27  struct ScheduleItems {
28  ScheduleItems();
29 
30  ScheduleItems(ProductRegistry const& preg, BranchIDListHelper const& branchIDListHelper, SubProcess const& om);
31 
32  ScheduleItems(ScheduleItems const&) = delete; // Disallow copying and moving
33  ScheduleItems& operator=(ScheduleItems const&) = delete; // Disallow copying and moving
34 
36  initServices(std::vector<ParameterSet>& servicePSets,
37  ParameterSet& processPSet,
38  ServiceToken const& iToken,
40  bool associate);
41 
43  addCPRandTNS(ParameterSet const& parameterSet, ServiceToken const& token);
44 
45  boost::shared_ptr<CommonParams>
46  initMisc(ParameterSet& parameterSet);
47 
48  std::auto_ptr<Schedule>
49  initSchedule(ParameterSet& parameterSet,
50  ParameterSet const* subProcessPSet,
51  PreallocationConfiguration const& iAllocConfig,
52  ProcessContext const*);
53 
54  void
55  clear();
56 
57  boost::shared_ptr<ActivityRegistry> actReg_;
58  std::unique_ptr<SignallingProductRegistry> preg_;
59  boost::shared_ptr<BranchIDListHelper> branchIDListHelper_;
60  std::unique_ptr<ExceptionToActionTable const> act_table_;
61  boost::shared_ptr<ProcessConfiguration> processConfiguration_;
62  };
63 }
64 
65 #endif
boost::shared_ptr< CommonParams > initMisc(ParameterSet &parameterSet)
std::unique_ptr< ExceptionToActionTable const > act_table_
Definition: ScheduleItems.h:60
ScheduleItems & operator=(ScheduleItems const &)=delete
boost::shared_ptr< ProcessConfiguration > processConfiguration_
Definition: ScheduleItems.h:61
std::unique_ptr< SignallingProductRegistry > preg_
Definition: ScheduleItems.h:58
ServiceToken initServices(std::vector< ParameterSet > &servicePSets, ParameterSet &processPSet, ServiceToken const &iToken, serviceregistry::ServiceLegacy iLegacy, bool associate)
ServiceToken addCPRandTNS(ParameterSet const &parameterSet, ServiceToken const &token)
boost::shared_ptr< ActivityRegistry > actReg_
Definition: ScheduleItems.h:57
preg
Definition: Schedule.cc:362
std::auto_ptr< Schedule > initSchedule(ParameterSet &parameterSet, ParameterSet const *subProcessPSet, PreallocationConfiguration const &iAllocConfig, ProcessContext const *)
ParameterSet const & parameterSet(Provenance const &provenance)
Definition: Provenance.cc:11
boost::shared_ptr< BranchIDListHelper > branchIDListHelper_
Definition: ScheduleItems.h:59