24 allowMissing = False):
25 """Configure PhotonTruthAlg for D3PD making.
26
27 FLAGS are the configuration flags.
28
29 PREFIX is a prefix to add to the name of the algorithm scheduled.
30
31 SGKEY/TYPENAME is the StoreGate key of the input electron container
32 and the name of its type.
33
34 If ALLOWMISSING is true, don't fail if the SG key doesn't exist.
35"""
36
37 acc = ComponentAccumulator()
38
39 if not D3PDMakerFlags.DoTruth:
40 return acc
41
42 if (not D3PDMakerFlags.MakeEgammaUserData or
43 D3PDMakerFlags.HaveEgammaUserData):
44 return acc
45
47 resolved_sgkey = resolveSGKey (flags, sgkey)
48 auxprefix = (D3PDMakerFlags.EgammaUserDataPrefix + '_' +
49 resolved_sgkey + '_')
50
51 from TruthD3PDMaker.MCTruthClassifierConfig \
52 import D3PDMCTruthClassifierCfg
53 acc.merge (D3PDMCTruthClassifierCfg (flags))
54 ptaname = 'PhotonTruthAlg_' + resolved_sgkey
56 (ptaname,
57 PhotonGetter = DVGetter
58 (prefix + 'PhotonTruthAlgGetter',
59 TypeName = typeName,
60 SGKey = sgkey),
61 AllowMissing = allowMissing,
62 AuxPrefix = auxprefix,
64 ('D3PD__PhotonTruthTool',
65 Classifier = acc.getPublicTool ('D3PDMCTruthClassifier'))))
66
67 return acc
Analyze GenParticle's matching photons and made UD decorations.