32 std::once_flag pluginFlag;
33 int setupPluginSystem() {
34 std::call_once(pluginFlag, []() {
40 std::shared_ptr<edm::ProcessDesc> addDefaultServicesToProcessDesc(std::shared_ptr<edm::ProcessDesc> iDesc) {
62 : forcePluginSetupFirst_(setupPluginSystem())
63 ,processor_(addDefaultServicesToProcessDesc(iDesc.processDesc()),createJobReport(),
edm::serviceregistry::
kOverlapIsError)
69 auto gil = PyEval_SaveThread();
75 PyEval_RestoreThread(gil);
81 auto gil = PyEval_SaveThread();
87 PyEval_RestoreThread(gil);
std::vector< std::string > defaultCmsRunServices()
static PluginManager & configure(const Config &)
edm::EventProcessor processor_
PluginManager::Config config()
PythonEventProcessor(PythonProcessDesc const &)
static ServiceToken createContaining(std::unique_ptr< T > iService)
create a service token that holds the service defined by iService
virtual StatusCode runToCompletion() override