7 def MultivariateTagManagerCfg(flags, name = 'MultivariateTagManager', TaggerList = ['DL1', 'DL1rnn', 'DL1mu', 'MV2c10'], scheme = '', useBTagFlagsDefaults = True, **options):
8 """Sets up a MultivariateTagManager tool and returns it.
10 The following options have BTaggingFlags defaults:
12 inputSV0SourceName default: "SV0"
13 inputSV1SourceName default: "SV1"
14 inputIP2DSourceName default: "IP2D"
15 inputIP3DSourceName default: "IP3D"
16 inputJFSourceName default: "JetFitter"
18 input: name: The name of the tool (should be unique).
19 output: The actual tool."""
22 MultivariateTagManagerAuxBranches = []
24 if 'MV2c10rnn' in TaggerList:
26 rnnip_outputs = [
'b',
'c',
'u',
'tau']
27 MultivariateTagManagerAuxBranches += [
'rnnip_p' + x
for x
in rnnip_outputs]
29 if 'MV2c10' in TaggerList:
30 mv2 = acc.popToolsAndMerge(
MV2TagCfg(flags,
'MV2c10', scheme))
31 mvtagtoollist.append(mv2)
33 if 'MV2c10mu' in TaggerList:
34 mv2 = acc.popToolsAndMerge(
MV2TagCfg(flags,
'MV2c10mu', scheme))
35 mvtagtoollist.append(mv2)
37 if 'MV2c10rnn' in TaggerList:
38 mv2 = acc.popToolsAndMerge(
MV2TagCfg(flags,
'MV2c10rnn', scheme))
39 mvtagtoollist.append(mv2)
44 if useBTagFlagsDefaults:
45 defaults = {
'inputSV0SourceName' :
'SV0',
46 'inputSV1SourceName' :
'SV1',
47 'inputIP2DSourceName' :
'IP2D',
48 'inputIP3DSourceName' :
'IP3D',
49 'inputJFSourceName' :
'JetFitter',
50 'MVTagToolList' : mvtagtoollist,
51 'arbitraryAuxData' : MultivariateTagManagerAuxBranches,
53 for option
in defaults:
54 options.setdefault(option, defaults[option])
55 options[
'name'] = name
56 acc.setPrivateTools(CompFactory.Analysis.MultivariateTagManager(**options))