ATLAS Offline Software
Public Member Functions | Public Attributes | Private Attributes | List of all members
MenuComponents.EmptyMenuSequence Class Reference
Collaboration diagram for MenuComponents.EmptyMenuSequence:

Public Member Functions

def __init__ (self, the_name)
 
def __del__ (self)
 
def sequence (self)
 
def maker (self)
 
def globalRecoCA (self)
 
def name (self)
 
def getOutputList (self)
 
def connectToFilter (self, outfilter)
 
def getHypoToolConf (self)
 
def buildDFDot (self, cfseq_algs, all_hypos, last_step_hypo_nodes, file)
 
def __repr__ (self)
 

Public Attributes

 ca
 

Private Attributes

 _name
 
 _maker
 
 _sequence
 

Detailed Description

Class to emulate reco sequences with no Hypo
It contains an InputMaker and and empty seqAND used for merging
It contains empty function to follow the same MenuSequence behaviour

Definition at line 304 of file MenuComponents.py.

Constructor & Destructor Documentation

◆ __init__()

def MenuComponents.EmptyMenuSequence.__init__ (   self,
  the_name 
)

Definition at line 308 of file MenuComponents.py.

308  def __init__(self, the_name):
309  log.debug("Made EmptySequence %s", the_name)
310  self._name = the_name
311 
312  # isEmptyStep causes the IM to try at runtime to merge by feature by default
313  # (i.e for empty steps appended after a leg has finised). But if this failes then it will
314  # merge by initial ROI instead (i.e. for empy steps prepended before a leg has started)
315  makerAlg = CompFactory.InputMakerForRoI(f"IM{the_name}",
316  isEmptyStep = True,
317  RoIsLink = 'initialRoI')
318 
319  self._maker = InputMakerNode( Alg = makerAlg )
320  self._sequence = Node( Alg = seqAND(the_name, [makerAlg]))
321 
322  self.ca = ComponentAccumulator()
323  self.ca.addSequence(seqAND(the_name))
324  self.ca.addEventAlgo(makerAlg, sequenceName=the_name)
325 

◆ __del__()

def MenuComponents.EmptyMenuSequence.__del__ (   self)

Definition at line 326 of file MenuComponents.py.

326  def __del__(self):
327  self.ca.wasMerged()
328 

Member Function Documentation

◆ __repr__()

def MenuComponents.EmptyMenuSequence.__repr__ (   self)

Definition at line 366 of file MenuComponents.py.

366  def __repr__(self):
367  return "MenuSequence::%s \n Hypo::%s \n Maker::%s \n Sequence::%s \n HypoTool::%s\n"\
368  %(self.name, "Empty", self.maker.Alg.getName(), self.sequence.Alg.getName(), "None")
369 

◆ buildDFDot()

def MenuComponents.EmptyMenuSequence.buildDFDot (   self,
  cfseq_algs,
  all_hypos,
  last_step_hypo_nodes,
  file 
)

Definition at line 359 of file MenuComponents.py.

359  def buildDFDot(self, cfseq_algs, all_hypos, last_step_hypo_nodes, file):
360  cfseq_algs.append(self.maker)
361  cfseq_algs.append(self.sequence )
362  file.write(" %s[fillcolor=%s]\n"%(self.maker.Alg.getName(), algColor(self.maker.Alg)))
363  file.write(" %s[fillcolor=%s]\n"%(self.sequence.Alg.getName(), algColor(self.sequence.Alg)))
364  return cfseq_algs, all_hypos, last_step_hypo_nodes
365 

◆ connectToFilter()

def MenuComponents.EmptyMenuSequence.connectToFilter (   self,
  outfilter 
)
Connect filter to the InputMaker

Definition at line 352 of file MenuComponents.py.

352  def connectToFilter(self, outfilter):
353  """Connect filter to the InputMaker"""
354  self.maker.addInput(outfilter)
355 

◆ getHypoToolConf()

def MenuComponents.EmptyMenuSequence.getHypoToolConf (   self)

Definition at line 356 of file MenuComponents.py.

356  def getHypoToolConf(self):
357  return None
358 

◆ getOutputList()

def MenuComponents.EmptyMenuSequence.getOutputList (   self)

Definition at line 349 of file MenuComponents.py.

349  def getOutputList(self):
350  return self.maker.readOutputList() # Only one since it's merged
351 

◆ globalRecoCA()

def MenuComponents.EmptyMenuSequence.globalRecoCA (   self)

Definition at line 342 of file MenuComponents.py.

342  def globalRecoCA(self):
343  return None
344 

◆ maker()

def MenuComponents.EmptyMenuSequence.maker (   self)

Definition at line 334 of file MenuComponents.py.

334  def maker(self):
335  # Input makers are added during DataFlow building (connectToFilter) when a chain
336  # uses this sequence in another step. So we need to make sure to update the
337  # algorithm when accessed.
338  self._maker.Alg = self.ca.getEventAlgo(self._maker.Alg.name)
339  return self._maker
340 

◆ name()

def MenuComponents.EmptyMenuSequence.name (   self)

Definition at line 346 of file MenuComponents.py.

346  def name(self):
347  return self._name
348 

◆ sequence()

def MenuComponents.EmptyMenuSequence.sequence (   self)

Definition at line 330 of file MenuComponents.py.

330  def sequence(self):
331  return self._sequence
332 

Member Data Documentation

◆ _maker

MenuComponents.EmptyMenuSequence._maker
private

Definition at line 319 of file MenuComponents.py.

◆ _name

MenuComponents.EmptyMenuSequence._name
private

Definition at line 310 of file MenuComponents.py.

◆ _sequence

MenuComponents.EmptyMenuSequence._sequence
private

Definition at line 320 of file MenuComponents.py.

◆ ca

MenuComponents.EmptyMenuSequence.ca

Definition at line 322 of file MenuComponents.py.


The documentation for this class was generated from the following file:
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
detail::addInput
void addInput(T &c, const Primitive &input, A a=defaultAccessor< T >)
Definition: PrimitiveHelpers.h:49
python.CFElements.seqAND
def seqAND(name, subs=[])
Definition: CFElements.py:25
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
python.processes.powheg.ZZ.ZZ.__init__
def __init__(self, base_directory, **kwargs)
Constructor: all process options are set here.
Definition: ZZ.py:18
python.AthDsoLogger.__del__
def __del__(self)
Definition: AthDsoLogger.py:82
HLTCFTools.algColor
def algColor(alg)
Definition: HLTCFTools.py:15