diff --git a/PyConf/python/PyConf/application.py b/PyConf/python/PyConf/application.py index 1cec8af9d5f2e01a4daaf3ea0b847084d8e995e9..517a91947e66c805ba9c13e80d19e297d0720198 100644 --- a/PyConf/python/PyConf/application.py +++ b/PyConf/python/PyConf/application.py @@ -1068,7 +1068,8 @@ def get_configurable_algs(algs, public_tools): configuration.update(alg.configuration()) for tool in public_tools: configuration.update(tool.configuration()) - configurable_algs, configurable_tools = configuration.apply() + + configurable_algs, _ = configuration.apply() del configuration return configurable_algs @@ -1120,7 +1121,7 @@ def setup_iovlock(options, make_odin, make_fake_odin, algs, configurable_algs): ] -def create_appMgr(options, config, end_event_incident, algs, nodes): +def create_appMgr(options, config, end_event_incident, algs, nodes, nodesrep=None): whiteboard = config.add( setup_component( options.event_store, @@ -1145,7 +1146,9 @@ def create_appMgr(options, config, end_event_incident, algs, nodes): scheduler = config.add( setup_component( HLTControlFlowMgr, - CompositeCFNodes=[node.represent() for node in nodes], + CompositeCFNodes=[node.represent() for node in nodes] + if nodesrep is None + else nodesrep, MemoryPoolSize=options.memory_pool_size, ThreadPoolSize=options.n_threads, EndEventIncident=end_event_incident, @@ -1438,6 +1441,7 @@ def configure( make_odin=make_odin, make_fake_odin=make_fake_run_number, fsr_sink=None, + rename_graph=None, ): options.finalize() config = ComponentConfig() @@ -1455,10 +1459,23 @@ def configure( ): algs = algs + [make_odin().producer] - configurable_algs = get_configurable_algs(algs, public_tools) + configuration = dataflow_config() + for alg in algs: + configuration.update(alg.configuration()) + for tool in public_tools: + configuration.update(tool.configuration()) + + nodesrep = None + if rename_graph: + # Assign meaningful names to algorithms from all used streams in HLT2 + # and propagate them into the dataflow configuration and the list of nodes (Moore!4387) + nodesrep = rename_graph(configuration, nodes) + + configurable_algs, _ = configuration.apply() + del configuration setup_iovlock(options, make_odin, make_fake_odin, algs, configurable_algs) - appMgr = create_appMgr(options, config, end_event_incident, algs, nodes) + appMgr = create_appMgr(options, config, end_event_incident, algs, nodes, nodesrep) setup_auditors(options, config, appMgr) msgSvc = setup_main_services(options, config, configurable_algs, appMgr) setup_monitoring(options, config, appMgr)