32def TrigNavigationThinningSvcCfg(flags, thinningConfig):
33 from TrigDecisionTool.TrigDecisionToolConfig import TrigDecisionToolCfg
34
35 assert "name" in thinningConfig, "name of the configuration is missing"
36 assert "mode" in thinningConfig, "mode of slimming has to be configured"
37
38 acc = ComponentAccumulator()
39 svc = CompFactory.TrigNavigationThinningSvc(
40 thinningConfig["name"] + "ThinSvc",
41 Actions = _actions(thinningConfig["mode"]),
42 TrigDecisionTool = acc.getPrimaryAndMerge(TrigDecisionToolCfg(flags))
43 )
44
45 if "chains" in thinningConfig:
46 svc.ChainsRegex = thinningConfig["chains"]
47 if "features" in thinningConfig:
48 svc.FeatureInclusionList = thinningConfig["features"]
49 if "Print" in svc.Actions:
51 svc.OutputLevel = DEBUG
52
53 acc.addService(svc, primary = True)
54 return acc