3 from AthenaConfiguration.ComponentAccumulator 
import ComponentAccumulator
 
    4 from AthenaConfiguration.ComponentFactory 
import CompFactory
 
   10     kwargs.setdefault(
"parents", 
"TruthBosonsWithDecayParticles")
 
   11     kwargs.setdefault(
"vetoSoftLeptonCascade", 
True)
 
   12     kwargs.setdefault(
"vetoSoftCharmCascade", 
True)
 
   13     kwargs.setdefault(
"matchDeltaR", 0.3)
 
   16     if "AntiKt" in kwargs.get(
"targetContainer", 
""):
 
   17         kwargs.setdefault(
"cascades", [
"TruthBottom", 
"TruthCharm",
 
   18                                        "TruthHFWithDecayParticles"])
 
   19         kwargs.setdefault(
"cascadePdgIds", [-5, 5])
 
   21         kwargs.setdefault(
"addBsToCascade", 
True)
 
   22         kwargs.setdefault(
"addCsToCascade", 
True)
 
   25         kwargs.setdefault(
"cascades", [
"TruthBoson", 
"TruthBosonsWithDecayParticles",
 
   26                                        "TruthTaus", 
"TruthMuons", 
"TruthElectrons",
 
   29         decay_pdgIds = [24, 11, 12, 13, 14, 15, 16]
 
   30         kwargs.setdefault(
"cascadePdgIds", [-x 
for x 
in decay_pdgIds] + decay_pdgIds)
 
   32     cfg.addEventAlgo(CompFactory.TruthParentDecoratorAlg(name, **kwargs))
 
   37     kwargs.setdefault(
"decoratorPrefix", 
"parentHiggs")
 
   38     kwargs.setdefault(
"parentPdgIds", [25])
 
   43     kwargs.setdefault(
"decoratorPrefix", 
"parentZ")
 
   44     kwargs.setdefault(
"parentPdgIds", [23])
 
   49     kwargs.setdefault(
"parents", 
"TruthBSMWithDecayParticles")
 
   50     kwargs.setdefault(
"decoratorPrefix", 
"parentScalar")
 
   51     kwargs.setdefault(
"parentPdgIds", [35])
 
   56     kwargs.setdefault(
"parents", 
"TruthTop")
 
   57     kwargs.setdefault(
"decoratorPrefix", 
"parentTop")
 
   58     kwargs.setdefault(
"parentPdgIds", [-6, 6])
 
   60     kwargs.setdefault(
"cascades", [
"TruthBoson", 
"TruthBosonsWithDecayParticles",
 
   61                                    "TruthBottom", 
"TruthCharm",
 
   62                                    "TruthTaus", 
"TruthElectrons",
 
   63                                    "TruthForwardProtons", 
"TruthHFWithDecayParticles"])
 
   68     kwargs.setdefault(
"warnMissingChildrenPdgIds", 
set())
 
   69     kwargs.setdefault(
"allowMissingChildrenPdgIds", {-11, 11})
 
   70     kwargs.setdefault(
"missingChildrenFractionWarningThreshold", 0.001)
 
   73     if "AntiKt" in kwargs.get(
"targetContainer", 
""):
 
   75         decay_pdgids = [24, 5, 4, 3, 2, 1, 11, 15]
 
   76         kwargs.setdefault(
"cascadePdgIds", [-x 
for x 
in decay_pdgids] + decay_pdgids)
 
   78         kwargs.setdefault(
"countChildrenInCascadeWithPdgIds",
 
   79                           {
"nTopToWChildren": [-24, 24],
 
   80                            "nTopToBChildren": [-5, 5]})
 
   82         kwargs.setdefault(
"countChildrenInCascadeWithPdgIds",
 
   83                           {
"nTopToWChildren": [-24, 24]})
 
   84         kwargs.setdefault(
"vetoSoftLeptonCascade", 
False)
 
   85         kwargs.setdefault(
"vetoSoftCharmCascade", 
False)