ATLAS Offline Software
Loading...
Searching...
No Matches
python.EventSelectionConfig.EventSelectionMergerConfig Class Reference
Inheritance diagram for python.EventSelectionConfig.EventSelectionMergerConfig:
Collaboration diagram for python.EventSelectionConfig.EventSelectionMergerConfig:

Public Member Functions

 __init__ (self)
 instanceName (self)
 makeAlgs (self, config)

Protected Attributes

 _instance_number = EventSelectionMergerConfig.get_instance_count()

Detailed Description

ConfigBlock for merging the output of various selection streams

Definition at line 9 of file EventSelectionConfig.py.

Constructor & Destructor Documentation

◆ __init__()

python.EventSelectionConfig.EventSelectionMergerConfig.__init__ ( self)

Definition at line 12 of file EventSelectionConfig.py.

12 def __init__(self):
13 super(EventSelectionMergerConfig, self).__init__()
14 self._instance_number = EventSelectionMergerConfig.get_instance_count()
15 self.setBlockName('EventSelectionMerger')
16 self.addDependency('EventSelection', required=True)
17 self.addOption('noFilter', False, type=bool,
18 info="do not apply an event filter, i.e. setting it to `False` "
19 "removes events not passing the full list of selection cuts.")
20

Member Function Documentation

◆ instanceName()

python.EventSelectionConfig.EventSelectionMergerConfig.instanceName ( self)
Return the instance name for this block

Definition at line 21 of file EventSelectionConfig.py.

21 def instanceName (self) :
22 """Return the instance name for this block"""
23 return '' # There is only ever one instance of this block
24

◆ makeAlgs()

python.EventSelectionConfig.EventSelectionMergerConfig.makeAlgs ( self,
config )

Definition at line 25 of file EventSelectionConfig.py.

25 def makeAlgs(self, config):
26 # Only the first instance runs; all others are no-ops
27 if self._instance_number != 1:
28 return
29
30 selections = config.getContainerMeta('EventInfo', 'eventSelectionNames',
31 failOnMiss=True)
32 selections = [sel for sel in selections if not sel.startswith("pass_SUB")]
33
34 alg = config.createAlgorithm('CP::SaveFilterAlg',
35 'EventSelectionMerger' + selections[0].split("_%SYS%")[0])
36 alg.FilterDescription = 'events passing at least one EventSelection'
37 alg.eventDecisionOutputDecoration = 'ignore_anySelection_%SYS%'
38 alg.selection = '||'.join([sel + ',as_char' for sel in selections])
39 alg.noFilter = self.noFilter
40 alg.selectionName = 'pass_anySelection_%SYS%'
41 alg.decorationName = 'ntuplepass_anySelection_%SYS%'
42
std::vector< std::string > split(const std::string &s, const std::string &t=":")
Definition hcg.cxx:179

Member Data Documentation

◆ _instance_number

python.EventSelectionConfig.EventSelectionMergerConfig._instance_number = EventSelectionMergerConfig.get_instance_count()
protected

Definition at line 14 of file EventSelectionConfig.py.


The documentation for this class was generated from the following file: