53def getBuilder(config,suffix,doTracks,doCells,doTriggerMET,doOriginCorrClus):
54 tool = None
55
56 if config.objType == 'SoftTrk':
57 tool = CompFactory.getComp("met::METSoftTermsTool")('MET_SoftTrkTool_'+suffix)
58 tool.InputComposition = 'Tracks'
59 tool.TrackKey = defaultInputKey[config.objType]
60 config.inputKey = defaultInputKey[config.objType]
61 if config.objType.endswith('SoftClus'):
62 tool = CompFactory.getComp("met::METSoftTermsTool")('MET_SoftClusTool_'+suffix)
63 tool.InputComposition = 'Clusters'
64 tool.CaloClusterKey = defaultInputKey[config.objType]
65 config.inputKey = defaultInputKey[config.objType]
66 if config.objType == 'SoftPFlow':
67 tool = CompFactory.getComp("met::METSoftTermsTool")('MET_SoftPFlowTool_'+suffix)
68 tool.InputComposition = 'PFlow'
69 pfotool = CompFactory.RetrievePFOTool('MET_PFOTool_'+suffix)
70 tool.PFOTool = pfotool
71 if suffix == 'Truth':
72 tool = CompFactory.getComp("met::METTruthTool")('MET_TruthTool_'+config.objType)
73 tool.InputComposition = config.objType
74 tool.InputCollection = defaultInputKey['Truth']
75 config.inputKey = defaultInputKey['Truth']
76 config.outputKey = config.objType
77 if suffix == 'Calo':
78 tool = CompFactory.getComp("met::METCaloRegionsTool")('MET_CaloRegionsTool')
79 if doCells:
80 tool.UseCells = True
81 tool.DoTriggerMET = doTriggerMET
82 tool.CaloCellKey = defaultInputKey['Calo']
83 config.inputKey = defaultInputKey['Calo']
84 else:
85 tool.UseCells = False
86 tool.DoTriggerMET = False
87 tool.CaloClusterKey = defaultInputKey['SoftClus']
88 config.inputKey = defaultInputKey['SoftClus']
89 config.outputKey = config.objType
90
91
92 if config.inputKey == '':
93 tool.InputCollection = defaultInputKey[config.objType]
94 config.inputKey = tool.InputCollection
95 elif hasattr(tool, 'InputCollection'):
96 tool.InputCollection = config.inputKey
97 if not suffix=='Calo':
98 if config.outputKey == '':
99 tool.MissingETKey = defaultOutputKey[config.objType]
100 config.outputKey = tool.MissingETKey
101 else:
102 tool.MissingETKey = config.outputKey
103 return tool
104