37 from DerivationFrameworkCore.CompulsoryContent
import CompulsoryContent, CompulsoryTriggerNavigation, CompulsoryDynamicContent
38 from DerivationFrameworkCore.ContentHandler
import ContentHandler
39 from DerivationFrameworkCore.ContainersOnTheFly
import ContainersOnTheFly
40 from DerivationFrameworkCore.FullListOfSmartContainers
import FullListOfSmartContainers
41 from AthenaConfiguration.Enums
import LHCPeriod
42 import PyUtils.Logging
as L
43 msg = L.logging.getLogger(
'DerivationFramework__SlimmingHelper')
44 msg.setLevel(L.logging.INFO)
49 list.__init__(self,data)
50 self.__dict__[
"_locked"] =
False
52 if self._locked
is True:
53 msg.error(
"Attempting to Modify SlimmingHelper after BuildFinalItemList has Been Called")
54 raise RuntimeError(
"Late Modification to SlimmingHelper do not modify after calling BuildFinalItemList")
56 return list.append(self, name)
58 if self._locked
is True:
59 msg.error(
"Attempting to Modify SlimmingHelper after BuildFinalItemList has Been Called")
60 raise RuntimeError(
"Late Modification to SlimmingHelper do not modify after calling BuildFinalItemList")
62 self.__dict__[name] = value
64 self.__dict__[
"_locked"] =
True
70 from DerivationFrameworkCore.StaticNamesAndTypes
import StaticNamesAndTypes
71 namesAndTypes = StaticNamesAndTypes
74 item = item.split(
'#')
75 namesAndTypes[item[1].strip(
'.')] = item[0]
79 def __init__(self, inputName, flags, **kwargs):
80 self.__dict__[
"_locked"] =
False
112 msg.error(
"Attempting to Modify SlimmingHelper "+self.
name+
" After AppendContentToStream has Been Called")
113 raise RuntimeError(
"Late Modification to SlimmingHelper, do not modifiy after calling AppendContentToStream")
114 elif type(value)==list:
117 self.__dict__[name] = value
122 for item
in CompulsoryContent:
123 if item.endswith(
"#*"):
124 compare_str=item[:-2].
replace(
"xAOD::",
"")
125 for m_item
in masterList:
126 if m_item.startswith(compare_str)
and m_item.replace(
"Aux.",
"")
not in CompulsoryDynamicContent:
127 conflicted_items.append(m_item)
128 if len(conflicted_items)!=0:
129 msg.error(
"Slimming list contains " +
str(conflicted_items)+
" which are already included in compulsory content: please remove these items from slimming list")
130 raise RuntimeError(
"Conflict in Slimming List and Compulsory Content")
159 allVariablesList = []
164 for item
in masterItemList:
166 allVariablesList.append(item)
169 triggerContent =
False
172 triggerContent =
True
175 triggerContent =
True
179 triggerContent =
True
183 triggerContent =
True
186 from DerivationFrameworkCore.JetTriggerFixContent
import JetTriggerFixContent
187 for item
in JetTriggerFixContent:
191 triggerContent =
True
196 triggerContent =
True
198 from DerivationFrameworkCore.EtMissTriggerFixContent
import EtMissTriggerFixContent
199 for item
in EtMissTriggerFixContent:
203 triggerContent =
True
204 if self.
flags.Trigger.EDMVersion == 2:
206 elif self.
flags.Trigger.EDMVersion == 3:
210 triggerContent =
True
214 triggerContent =
True
218 triggerContent =
True
222 triggerContent =
True
226 triggerContent =
True
254 mainEntries,auxEntries = self.
theHandler.GetContent(masterItemList,allVariablesList)
257 excludedAuxData =
"-clusterAssociation.-PseudoJet"
258 excludedAuxEntries= [entry.strip(
"-")
for entry
in excludedAuxData.split(
".")]
259 for item
in mainEntries:
261 for item
in auxEntries.keys():
264 if item
in theDictionary.keys():
265 if (theDictionary[item]==
'xAOD::JetAuxContainer'):
266 entry =
"xAOD::JetAuxContainer#"+item+
"."
267 elif (theDictionary[item]==
'xAOD::ShallowAuxContainer'):
268 entry =
"xAOD::ShallowAuxContainer#"+item+
"."
269 elif (theDictionary[item]==
'xAOD::MissingETAuxAssociationMap'):
270 entry =
"xAOD::MissingETAuxAssociationMap#"+item+
"."
271 elif (theDictionary[item]==
'xAOD::JetTrigAuxContainer'):
272 entry =
"xAOD::JetTrigAuxContainer#"+item+
"."
273 elif (
"AuxInfo" in theDictionary[item]):
274 entry =
"xAOD::AuxInfoBase!#"+item+
"."
276 entry =
"xAOD::AuxContainerBase!#"+item+
"."
277 for element
in auxEntries[item]:
279 if (
'xAOD::TrackParticleContainer' in theDictionary[item])
and (element
in excludedAuxEntries):
continue
280 if (
'xAOD::JetAuxContainer' in theDictionary[item])
and (element
in excludedAuxEntries):
continue
281 length = len(auxEntries[item])
282 if (element==(auxEntries[item])[length-1]):
286 if (
'xAOD::TrackParticleContainer' in theDictionary[item]
and auxEntries[item]==
""):
287 entry+=excludedAuxData
289 entry+=excludedAuxData
293 for item
in CompulsoryContent:
298 from DerivationFrameworkCore.MinBiasTrigger_nonxAOD_Content
import MinBiasTrigger_nonxAOD_Content
299 for item
in MinBiasTrigger_nonxAOD_Content:
304 for item
in CompulsoryTriggerNavigation:
307 from TrigDecisionTool.TrigDecisionToolHelpers
import possible_keys
308 for item
in possible_keys:
309 if item ==
"HLTNav_Summary":
315 badItemsWildcards = []
321 badItemsWildcards.append(item)
323 badItemsXAOD.append(item)
324 if (len(badItemsWildcards)>0):
325 msg.error(
"These static items contain wildcards: not permitted")
326 print (badItemsWildcards)
327 raise RuntimeError(
"Static content list contains wildcards")
328 if (len(badItemsXAOD)>0):
329 msg.error(
"These static items are xAOD collections: not permitted")
331 raise RuntimeError(
"Static content list contains xAOD collections")
345 items = [collection,collection+
"Aux."]
353 raise RuntimeError(
"Smart slimming container "+collectionName+
" does not exist or does not have a smart slimming list")
354 if collectionName==
"EventInfo":
355 from DerivationFrameworkCore.EventInfoContent
import EventInfoContent
356 items.extend(EventInfoContent)
357 elif collectionName==
"Electrons":
358 from DerivationFrameworkEGamma.ElectronsCPContent
import ElectronsCPContent
359 items.extend(ElectronsCPContent)
360 elif collectionName==
"LRTElectrons":
361 from DerivationFrameworkEGamma.LargeD0ElectronsCPContent
import LargeD0ElectronsCPContent
362 items.extend(LargeD0ElectronsCPContent)
363 elif collectionName==
"Photons":
364 from DerivationFrameworkEGamma.PhotonsCPContent
import PhotonsCPContent
365 items.extend(PhotonsCPContent)
366 elif collectionName==
"Muons":
368 raise RuntimeError(
"We're in the era of component accumulator. Please setup your job with CA if you want to have muons")
369 from DerivationFrameworkMuons.MuonsCommonConfig
import MuonCPContentCfg
371 elif collectionName==
"MuonsLRT":
373 raise RuntimeError(
"We're in the era of component accumulator. Please setup your job with CA if you want to have muons")
374 from DerivationFrameworkMuons.MuonsCommonConfig
import MuonCPContentLRTCfg
376 elif collectionName==
"TauJets":
377 from DerivationFrameworkTau.TauJetsCPContent
import TauJetsCPContent
378 items.extend(TauJetsCPContent)
379 elif collectionName==
"DiTauJets":
380 from DerivationFrameworkTau.DiTauJetsCPContent
import DiTauJetsCPContent
381 items.extend(DiTauJetsCPContent)
382 elif collectionName==
"DiTauJetsLowPt":
383 from DerivationFrameworkTau.DiTauJetsCPContent
import DiTauJetsLowPtCPContent
384 items.extend(DiTauJetsLowPtCPContent)
385 elif collectionName==
"TauJets_MuonRM":
386 from DerivationFrameworkTau.TauJets_LepRMCPContent
import TauJets_MuonRMCPContent
393 self.
AppendToDictionary[
"TauSecondaryVertices_MuonRMAux"] =
'xAOD::VertexAuxContainer'
394 self.
AppendToDictionary[
"TauNeutralParticleFlowObjects_MuonRM"] =
'xAOD::PFOContainer'
395 self.
AppendToDictionary[
"TauNeutralParticleFlowObjects_MuonRMAux"] =
'xAOD::PFOAuxContainer'
396 items.extend(TauJets_MuonRMCPContent)
397 elif collectionName==
"TauJets_EleRM":
398 from DerivationFrameworkTau.TauJets_LepRMCPContent
import TauJets_EleRMCPContent
399 items.extend(TauJets_EleRMCPContent)
400 elif collectionName==
"MET_Baseline_AntiKt4EMTopo":
401 from DerivationFrameworkJetEtMiss.MET_Baseline_AntiKt4EMTopoCPContent
import MET_Baseline_AntiKt4EMTopoCPContent
402 items.extend(MET_Baseline_AntiKt4EMTopoCPContent)
403 elif collectionName==
"MET_Baseline_AntiKt4EMPFlow":
404 from DerivationFrameworkJetEtMiss.MET_Baseline_AntiKt4EMPFlowCPContent
import MET_Baseline_AntiKt4EMPFlowCPContent
405 items.extend(MET_Baseline_AntiKt4EMPFlowCPContent)
406 elif collectionName==
"AntiKt2TruthJets":
407 from DerivationFrameworkJetEtMiss.AntiKt2TruthJetsCPContent
import AntiKt2TruthJetsCPContent
408 items.extend(AntiKt2TruthJetsCPContent)
409 elif collectionName==
"AntiKt4TruthJets":
410 from DerivationFrameworkJetEtMiss.AntiKt4TruthJetsCPContent
import AntiKt4TruthJetsCPContent
411 items.extend(AntiKt4TruthJetsCPContent)
412 elif collectionName==
"AntiKt4TruthWZJets":
413 from DerivationFrameworkJetEtMiss.AntiKt4TruthWZJetsCPContent
import AntiKt4TruthWZJetsCPContent
414 items.extend(AntiKt4TruthWZJetsCPContent)
415 elif collectionName==
"AntiKt4TruthDressedWZJets":
416 from DerivationFrameworkJetEtMiss.AntiKt4TruthDressedWZJetsCPContent
import AntiKt4TruthDressedWZJetsCPContent
417 items.extend(AntiKt4TruthDressedWZJetsCPContent)
418 elif collectionName==
"AntiKt2LCTopoJets":
419 from DerivationFrameworkJetEtMiss.AntiKt2LCTopoJetsCPContent
import AntiKt2LCTopoJetsCPContent
420 items.extend(AntiKt2LCTopoJetsCPContent)
421 elif collectionName==
"AntiKt4LCTopoJets":
422 from DerivationFrameworkJetEtMiss.AntiKt4LCTopoJetsCPContent
import AntiKt4LCTopoJetsCPContent
423 items.extend(AntiKt4LCTopoJetsCPContent)
424 elif collectionName==
"AntiKt4EMTopoJets":
425 from DerivationFrameworkJetEtMiss.AntiKt4EMTopoJetsCPContent
import AntiKt4EMTopoJetsCPContent
426 items.extend(AntiKt4EMTopoJetsCPContent)
427 elif collectionName==
"AntiKt4EMTopoLowPtJets":
428 from DerivationFrameworkJetEtMiss.AntiKt4EMTopoLowPtJetsCPContent
import AntiKt4EMTopoLowPtJetsCPContent
429 items.extend(AntiKt4EMTopoLowPtJetsCPContent)
430 elif collectionName==
"AntiKt4EMTopoNoPtCutJets":
431 from DerivationFrameworkJetEtMiss.AntiKt4EMTopoNoPtCutJetsCPContent
import AntiKt4EMTopoNoPtCutJetsCPContent
432 items.extend(AntiKt4EMTopoNoPtCutJetsCPContent)
433 elif collectionName==
"AntiKt4EMPFlowJets":
434 from DerivationFrameworkJetEtMiss.AntiKt4EMPFlowJetsCPContent
import AntiKt4EMPFlowJetsCPContent
435 items.extend(AntiKt4EMPFlowJetsCPContent)
436 elif collectionName==
"AntiKt4EMPFlowLowPtJets":
437 from DerivationFrameworkJetEtMiss.AntiKt4EMPFlowLowPtJetsCPContent
import AntiKt4EMPFlowLowPtJetsCPContent
438 items.extend(AntiKt4EMPFlowLowPtJetsCPContent)
439 elif collectionName==
"AntiKt4EMPFlowByVertexJets":
440 from DerivationFrameworkJetEtMiss.AntiKt4EMPFlowByVertexJetsCPContent
import AntiKt4EMPFlowByVertexJetsCPContent
441 items.extend(AntiKt4EMPFlowByVertexJetsCPContent)
442 elif collectionName==
"AntiKt4UFOCSSKJets":
443 from DerivationFrameworkJetEtMiss.AntiKt4UFOCSSKJetsCPContent
import AntiKt4UFOCSSKJetsCPContent
444 items.extend(AntiKt4UFOCSSKJetsCPContent)
445 elif collectionName==
"AntiKt4UFOCSSKLowPtJets":
446 from DerivationFrameworkJetEtMiss.AntiKt4UFOCSSKLowPtJetsCPContent
import AntiKt4UFOCSSKLowPtJetsCPContent
447 items.extend(AntiKt4UFOCSSKLowPtJetsCPContent)
448 elif collectionName==
"AntiKt10TruthJets":
449 from DerivationFrameworkJetEtMiss.AntiKt10TruthJetsCPContent
import AntiKt10TruthJetsCPContent
450 items.extend(AntiKt10TruthJetsCPContent)
451 elif collectionName==
"AntiKt10TruthWZJets":
452 from DerivationFrameworkJetEtMiss.AntiKt10TruthWZJetsCPContent
import AntiKt10TruthWZJetsCPContent
453 items.extend(AntiKt10TruthWZJetsCPContent)
454 elif collectionName==
"AntiKt10LCTopoJets":
455 from DerivationFrameworkJetEtMiss.AntiKt10LCTopoJetsCPContent
import AntiKt10LCTopoJetsCPContent
456 items.extend(AntiKt10LCTopoJetsCPContent)
457 elif collectionName==
"AntiKt10TrackCaloClusterJets":
458 from DerivationFrameworkJetEtMiss.AntiKt10TrackCaloClusterJetsCPContent
import AntiKt10TrackCaloClusterJetsCPContent
459 items.extend(AntiKt10TrackCaloClusterJetsCPContent)
460 elif collectionName==
"AntiKt10UFOCSSKJets":
461 from DerivationFrameworkJetEtMiss.AntiKt10UFOCSSKJetsCPContent
import AntiKt10UFOCSSKJetsCPContent
462 items.extend(AntiKt10UFOCSSKJetsCPContent)
463 elif collectionName==
"AntiKt10UFOCHSJets":
464 from DerivationFrameworkJetEtMiss.AntiKt10UFOCHSJetsCPContent
import AntiKt10UFOCHSJetsCPContent
465 items.extend(AntiKt10UFOCHSJetsCPContent)
466 elif collectionName==
"AntiKt10TruthTrimmedPtFrac5SmallR20Jets":
467 from DerivationFrameworkJetEtMiss.AntiKt10TruthTrimmedPtFrac5SmallR20JetsCPContent
import AntiKt10TruthTrimmedPtFrac5SmallR20JetsCPContent
468 items.extend(AntiKt10TruthTrimmedPtFrac5SmallR20JetsCPContent)
469 elif collectionName==
"AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets":
470 from DerivationFrameworkJetEtMiss.AntiKt10LCTopoTrimmedPtFrac5SmallR20JetsCPContent
import AntiKt10LCTopoTrimmedPtFrac5SmallR20JetsCPContent
471 items.extend(AntiKt10LCTopoTrimmedPtFrac5SmallR20JetsCPContent)
472 elif collectionName==
"AntiKt10TrackCaloClusterTrimmedPtFrac5SmallR20Jets":
473 from DerivationFrameworkJetEtMiss.AntiKt10TrackCaloClusterTrimmedPtFrac5SmallR20JetsCPContent
import AntiKt10TrackCaloClusterTrimmedPtFrac5SmallR20JetsCPContent
474 if "AntiKt10TrackCaloClusterTrimmedPtFrac5SmallR20Jets" not in self.
AppendToDictionary:
475 self.
AppendToDictionary[
"AntiKt10TrackCaloClusterTrimmedPtFrac5SmallR20Jets"]=
'xAOD::JetContainer'
476 self.
AppendToDictionary[
"AntiKt10TrackCaloClusterTrimmedPtFrac5SmallR20JetsAux"]=
'xAOD::JetAuxContainer'
477 items.extend(AntiKt10TrackCaloClusterTrimmedPtFrac5SmallR20JetsCPContent)
478 elif collectionName==
"AntiKt10TruthSoftDropBeta100Zcut10Jets":
479 from DerivationFrameworkJetEtMiss.AntiKt10TruthSoftDropBeta100Zcut10JetsCPContent
import AntiKt10TruthSoftDropBeta100Zcut10JetsCPContent
480 items.extend(AntiKt10TruthSoftDropBeta100Zcut10JetsCPContent)
481 elif collectionName==
"AntiKt10TruthDressedWZSoftDropBeta100Zcut10Jets":
482 from DerivationFrameworkJetEtMiss.AntiKt10TruthDressedWZSoftDropBeta100Zcut10JetsCPContent
import AntiKt10TruthDressedWZSoftDropBeta100Zcut10JetsCPContent
483 items.extend(AntiKt10TruthDressedWZSoftDropBeta100Zcut10JetsCPContent)
484 elif collectionName==
"AntiKt10UFOCHSSoftDropBeta100Zcut10Jets":
485 from DerivationFrameworkJetEtMiss.AntiKt10UFOCHSSoftDropBeta100Zcut10JetsCPContent
import AntiKt10UFOCHSSoftDropBeta100Zcut10JetsCPContent
486 items.extend(AntiKt10UFOCHSSoftDropBeta100Zcut10JetsCPContent)
487 elif collectionName==
"AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets":
488 from DerivationFrameworkJetEtMiss.AntiKt10UFOCSSKSoftDropBeta100Zcut10JetsCPContent
import AntiKt10UFOCSSKSoftDropBeta100Zcut10JetsCPContent
489 items.extend(AntiKt10UFOCSSKSoftDropBeta100Zcut10JetsCPContent)
490 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingLargeRContent
492 elif collectionName==
"AntiKtVR30Rmax4Rmin02PV0TrackJets":
493 from DerivationFrameworkJetEtMiss.AntiKtVR30Rmax4Rmin02PV0TrackJetsCPContent
import AntiKtVR30Rmax4Rmin02PV0TrackJetsCPContent
494 items.extend(AntiKtVR30Rmax4Rmin02PV0TrackJetsCPContent)
495 elif collectionName==
"BTagging_AntiKt4UFOCSSK":
496 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingStandardContent
498 elif collectionName==
"BTagging_AntiKt4UFOCSSK_expert":
499 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingExpertContent
501 elif collectionName==
"BTagging_AntiKt4EMPFlow":
502 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingStandardContent
504 elif collectionName==
"BTagging_AntiKt4EMPFlow_expert":
505 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingExpertContent
507 elif collectionName==
"AntiKt4EMPFlowJets_FTAG":
508 from DerivationFrameworkFlavourTag.BTaggingContent
import BTagginglessContent
510 elif collectionName==
"BTagging_AntiKt4EMTopo":
511 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingStandardContent
513 elif collectionName==
"BTagging_AntiKtVR30Rmax4Rmin02Track":
514 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingStandardContent
516 elif collectionName==
"BTagging_AntiKtVR30Rmax4Rmin02Track_expert":
517 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingExpertContent
519 elif collectionName==
"BTagging_AntiKt2Track":
520 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingStandardContent
522 elif collectionName==
"BTagging_AntiKt3Track":
523 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingStandardContent
525 elif collectionName==
"BTagging_AntiKt4Track":
526 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingStandardContent
528 elif collectionName==
"BTagging_AntiKt8EMTopoExKt2Sub":
529 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingExpertContent
531 elif collectionName==
"BTagging_AntiKt8EMTopoExKt3Sub":
532 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingExpertContent
534 elif collectionName==
"BTagging_AntiKt8EMTopoExCoM2Sub":
535 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingExpertContent
537 elif collectionName==
"BTagging_AntiKt8EMPFlowExKt2Sub":
538 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingExpertContent
540 elif collectionName==
"BTagging_AntiKt8EMPFlowExKt3Sub":
541 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingExpertContent
543 elif collectionName==
"BTagging_AntiKt8EMPFlowExKt2GASub":
544 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingExpertContent
546 elif collectionName==
"BTagging_AntiKt8EMPFlowExKt3GASub":
547 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingExpertContent
549 elif collectionName==
"BTagging_DFAntiKt4HI":
550 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingStandardContent
552 elif collectionName==
"BTagging_AntiKt4HI":
553 from DerivationFrameworkFlavourTag.BTaggingContent
import BTaggingStandardContent
555 elif collectionName==
"InDetTrackParticles":
556 from DerivationFrameworkInDet.InDetTrackParticlesCPContent
import InDetTrackParticlesCPContent
557 items.extend(InDetTrackParticlesCPContent)
558 if self.
flags.GeoModel.Run >= LHCPeriod.Run4:
559 from DerivationFrameworkInDet.InDetTrackParticlesCPContentRun4
import InDetTrackParticlesCPContentRun4
560 items.extend(InDetTrackParticlesCPContentRun4)
561 elif collectionName==
"InDetPseudoTrackParticles":
562 from DerivationFrameworkInDet.InDetPseudoTrackParticlesCPContent
import InDetPseudoTrackParticlesCPContent
563 items.extend(InDetPseudoTrackParticlesCPContent)
564 elif collectionName==
"InDetReplacedWithPseudoTrackParticles":
565 from DerivationFrameworkInDet.InDetReplacedWithPseudoTrackParticlesCPContent
import InDetReplacedWithPseudoTrackParticlesCPContent
566 items.extend(InDetReplacedWithPseudoTrackParticlesCPContent)
567 elif collectionName==
"InDetReplacedWithPseudoFromBTrackParticles":
568 from DerivationFrameworkInDet.InDetReplacedWithPseudoFromBTrackParticlesCPContent
import InDetReplacedWithPseudoFromBTrackParticlesCPContent
569 items.extend(InDetReplacedWithPseudoFromBTrackParticlesCPContent)
570 elif collectionName==
"InDetReplacedWithPseudoNotFromBTrackParticles":
571 from DerivationFrameworkInDet.InDetReplacedWithPseudoNotFromBTrackParticlesCPContent
import InDetReplacedWithPseudoNotFromBTrackParticlesCPContent
572 items.extend(InDetReplacedWithPseudoNotFromBTrackParticlesCPContent)
573 elif collectionName==
"InDetPlusPseudoTrackParticles":
574 from DerivationFrameworkInDet.InDetPlusPseudoTrackParticlesCPContent
import InDetPlusPseudoTrackParticlesCPContent
575 items.extend(InDetPlusPseudoTrackParticlesCPContent)
576 elif collectionName==
"InDetPlusPseudoFromBTrackParticles":
577 from DerivationFrameworkInDet.InDetPlusPseudoFromBTrackParticlesCPContent
import InDetPlusPseudoFromBTrackParticlesCPContent
578 items.extend(InDetPlusPseudoFromBTrackParticlesCPContent)
579 elif collectionName==
"InDetPlusPseudoNotFromBTrackParticles":
580 from DerivationFrameworkInDet.InDetPlusPseudoNotFromBTrackParticlesCPContent
import InDetPlusPseudoNotFromBTrackParticlesCPContent
581 items.extend(InDetPlusPseudoNotFromBTrackParticlesCPContent)
582 elif collectionName==
"InDetNoFakesTrackParticles":
583 from DerivationFrameworkInDet.InDetNoFakesTrackParticlesCPContent
import InDetNoFakesTrackParticlesCPContent
584 items.extend(InDetNoFakesTrackParticlesCPContent)
585 elif collectionName==
"InDetNoFakesFromBTrackParticles":
586 from DerivationFrameworkInDet.InDetNoFakesFromBTrackParticlesCPContent
import InDetNoFakesFromBTrackParticlesCPContent
587 items.extend(InDetNoFakesFromBTrackParticlesCPContent)
588 elif collectionName==
"InDetNoFakesNotFromBTrackParticles":
589 from DerivationFrameworkInDet.InDetNoFakesNotFromBTrackParticlesCPContent
import InDetNoFakesNotFromBTrackParticlesCPContent
590 items.extend(InDetNoFakesNotFromBTrackParticlesCPContent)
591 elif collectionName==
"InDetSiSPSeededTracksParticles":
592 from DerivationFrameworkInDet.InDetSiSPSeededTracksParticlesCPContent
import InDetSiSPSeededTracksParticlesCPContent
593 items.extend(InDetSiSPSeededTracksParticlesCPContent)
594 elif collectionName==
"InDetLargeD0TrackParticles":
595 from DerivationFrameworkInDet.InDetLargeD0TrackParticlesCPContent
import InDetLargeD0TrackParticlesCPContent
596 items.extend(InDetLargeD0TrackParticlesCPContent)
597 elif collectionName==
"PrimaryVertices":
598 from DerivationFrameworkInDet.PrimaryVerticesCPContent
import PrimaryVerticesCPContent
599 items.extend(PrimaryVerticesCPContent)
600 if self.
flags.GeoModel.Run >= LHCPeriod.Run4:
601 from DerivationFrameworkInDet.PrimaryVerticesCPContentRun4
import PrimaryVerticesCPContentRun4
602 items.extend(PrimaryVerticesCPContentRun4)
604 from DerivationFrameworkCore.AdditionalTriggerContent
import AdditionalTriggerContent
605 items.extend(AdditionalTriggerContent)
606 elif collectionName==
"HLT_xAOD__MuonContainer_MuonEFInfo":
607 from DerivationFrameworkMuons.MuonTriggerContent
import MuonTriggerContent
608 items.extend(MuonTriggerContent)
609 elif collectionName==
"HLT_xAOD__PhotonContainer_egamma_Photons":
610 from DerivationFrameworkCore.EGammaTriggerContent
import EGammaTriggerContent
611 items.extend(EGammaTriggerContent)
612 elif collectionName==
"HLT_xAOD__JetContainer_a4tcemsubjesFS":
613 from DerivationFrameworkCore.JetTriggerContent
import JetTriggerContent
614 items.extend(JetTriggerContent)
615 elif collectionName==
"HLT_IDVertex_FS":
616 from DerivationFrameworkCore.TrackingTriggerContent
import TrackingTriggerContent
617 items.extend(TrackingTriggerContent)
618 elif collectionName==
"HLT_IDTrack_FS_FTF":
619 from DerivationFrameworkCore.TrackingTriggerContent
import TrackingTriggerContent
620 items.extend(TrackingTriggerContent)
621 elif collectionName==
"HLT_xAOD__TrigMissingETContainer_TrigEFMissingET":
622 from DerivationFrameworkCore.EtMissTriggerContent
import EtMissTriggerContent
623 items.extend(EtMissTriggerContent)
624 elif collectionName==
"HLT_xAOD__TauJetContainer_TrigTauRecMerged":
625 from DerivationFrameworkCore.TauTriggerContent
import TauTriggerContentRun2
626 items.extend(TauTriggerContentRun2)
627 elif collectionName==
"HLT_TrigTauRecMerged_MVA":
628 from DerivationFrameworkCore.TauTriggerContent
import TauTriggerContentRun3
629 items.extend(TauTriggerContentRun3)
630 elif collectionName==
"HLT_xAOD__BTaggingContainer_HLTBjetFex":
631 from DerivationFrameworkFlavourTag.BJetTriggerContent
import BJetTriggerContent
632 items.extend(BJetTriggerContent)
633 elif collectionName==
"HLT_xAOD__TrigBphysContainer_EFBMuMuFex":
634 from DerivationFrameworkCore.BPhysTriggerContent
import BPhysTriggerContent
635 items.extend(BPhysTriggerContent)
636 elif collectionName==
"HLT_xAOD__TrigVertexCountsContainer_vertexcounts":
637 from DerivationFrameworkCore.MinBiasTriggerContent
import MinBiasTriggerContent
638 items.extend(MinBiasTriggerContent)
639 elif collectionName==
"HLT_AntiKt4EMPFlowJets_subresjesgscIS_ftf":
640 from DerivationFrameworkCore.JetTriggerContentRun3
import JetTriggerContentRun3
641 from DerivationFrameworkCore.JetTriggerContentRun3TLA
import JetTriggerContentRun3TLA
643 items.extend(JetTriggerContentRun3)
645 items.extend(JetTriggerContentRun3TLA)
646 elif collectionName==
"HLT_BJetTriggerByYearContent":
647 from DerivationFrameworkTrigger.BJetTriggerByYearContent
import getBJetTriggerContent
649 elif collectionName==
"HLT_FULL_EDM":
650 from DerivationFrameworkTrigger.TrigSlimmingHelper
import addTrigEDMSetToOutput
654 raise RuntimeError(
"Smart slimming container "+collectionName+
" does not exist or does not have a smart slimming list")
660 kinematicsLine = collectionName+
"Aux."+
"pt.eta.phi.m"
661 items = [collectionName,kinematicsLine]
667 splitup = userInput.split(
".")
668 auxContainerName = splitup[0]+
"Aux"
670 items.append(splitup[0])
672 length = len(splitup)
673 for string
in splitup:
674 if string==splitup[0]:
675 auxLine = auxContainerName+
"."
677 if string==splitup[length-1]:
678 auxLine = auxLine+string
680 auxLine = auxLine+string+
"."
681 items.append(auxLine)
690 sep = item.split(
"#")