Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Public Member Functions | Public Attributes | List of all members
MenuComponents.AlgNode Class Reference
Inheritance diagram for MenuComponents.AlgNode:
Collaboration diagram for MenuComponents.AlgNode:

Public Member Functions

def __init__ (self, Alg, inputProp, outputProp)
 
def addDefaultOutput (self)
 
def setPar (self, propname, value)
 
def resetPar (self, prop)
 
def getPar (self, prop)
 
def resetOutput (self)
 
def resetInput (self)
 
def addOutput (self, name)
 
def readOutputList (self)
 
def addInput (self, name)
 
def readInputList (self)
 
def __repr__ (self)
 
def getOutputList (self)
 
def getInputList (self)
 

Public Attributes

 outputProp
 
 inputProp
 
 name
 
 Alg
 
 inputs
 
 outputs
 

Detailed Description

Node class that represent an algorithm: sets R/W handles (as unique input/output) and properties as parameters  
Automatically de-duplicates input ReadHandles upon repeated calls to addInput.

Definition at line 54 of file MenuComponents.py.

Constructor & Destructor Documentation

◆ __init__()

def MenuComponents.AlgNode.__init__ (   self,
  Alg,
  inputProp,
  outputProp 
)

Definition at line 57 of file MenuComponents.py.

57  def __init__(self, Alg, inputProp, outputProp):
58  Node.__init__(self, Alg)
59  self.outputProp = outputProp
60  self.inputProp = inputProp
61 

Member Function Documentation

◆ __repr__()

def MenuComponents.AlgNode.__repr__ (   self)

Reimplemented from MenuComponents.Node.

Reimplemented in MenuComponents.HypoAlgNode.

Definition at line 123 of file MenuComponents.py.

123  def __repr__(self):
124  return "Alg::%s [%s] -> [%s]"%(self.Alg.getName(), ' '.join(map(str, self.getInputList())), ' '.join(map(str, self.getOutputList())))
125 
126 

◆ addDefaultOutput()

def MenuComponents.AlgNode.addDefaultOutput (   self)

Definition at line 62 of file MenuComponents.py.

62  def addDefaultOutput(self):
63  if self.outputProp != '':
64  self.addOutput(("%s_%s"%(self.Alg.getName(),self.outputProp)))
65 

◆ addInput()

def MenuComponents.AlgNode.addInput (   self,
  name 
)

Reimplemented from MenuComponents.Node.

Definition at line 106 of file MenuComponents.py.

106  def addInput(self, name):
107  inputs = self.readInputList()
108  if name in inputs:
109  log.debug("Input DH not added in %s: %s already set!", self.Alg.getName(), name)
110  else:
111  if self.inputProp != '':
112  self.setPar(self.inputProp, name)
113  else:
114  log.debug("no InputProp set for input of %s", self.Alg.getName())
115  Node.addInput(self, name)
116  return len(self.readInputList())
117 

◆ addOutput()

def MenuComponents.AlgNode.addOutput (   self,
  name 
)

Reimplemented from MenuComponents.Node.

Reimplemented in MenuComponents.HypoAlgNode.

Definition at line 90 of file MenuComponents.py.

90  def addOutput(self, name):
91  outputs = self.readOutputList()
92  if name in outputs:
93  log.debug("Output DH not added in %s: %s already set!", self.Alg.getName(), name)
94  else:
95  if self.outputProp != '':
96  self.setPar(self.outputProp, name)
97  else:
98  log.debug("no outputProp set for output of %s", self.Alg.getName())
99  Node.addOutput(self, name)
100 

◆ getInputList()

def MenuComponents.Node.getInputList (   self)
inherited

Definition at line 47 of file MenuComponents.py.

47  def getInputList(self):
48  return self.inputs
49 

◆ getOutputList()

def MenuComponents.Node.getOutputList (   self)
inherited

Definition at line 44 of file MenuComponents.py.

44  def getOutputList(self):
45  return self.outputs
46 

◆ getPar()

def MenuComponents.AlgNode.getPar (   self,
  prop 
)

Definition at line 81 of file MenuComponents.py.

81  def getPar(self, prop):
82  return getattr(self.Alg, prop)
83 

◆ readInputList()

def MenuComponents.AlgNode.readInputList (   self)

Definition at line 118 of file MenuComponents.py.

118  def readInputList(self):
119  cval = self.getPar(self.inputProp)
120  return (cval if isinstance(cval, MutableSequence) else
121  ([str(cval)] if cval else []))
122 

◆ readOutputList()

def MenuComponents.AlgNode.readOutputList (   self)

Definition at line 101 of file MenuComponents.py.

101  def readOutputList(self):
102  cval = self.getPar(self.outputProp)
103  return (cval if isinstance(cval, MutableSequence) else
104  ([str(cval)] if cval else []))
105 

◆ resetInput()

def MenuComponents.AlgNode.resetInput (   self)

Definition at line 87 of file MenuComponents.py.

87  def resetInput(self):
88  self.resetPar(self.inputProp)
89 

◆ resetOutput()

def MenuComponents.AlgNode.resetOutput (   self)

Definition at line 84 of file MenuComponents.py.

84  def resetOutput(self):
85  self.resetPar(self.outputProp)
86 

◆ resetPar()

def MenuComponents.AlgNode.resetPar (   self,
  prop 
)

Definition at line 74 of file MenuComponents.py.

74  def resetPar(self, prop):
75  cval = getattr(self.Alg, prop)
76  if isinstance(cval, MutableSequence):
77  return setattr(self.Alg, prop, [])
78  else:
79  return setattr(self.Alg, prop, "")
80 

◆ setPar()

def MenuComponents.AlgNode.setPar (   self,
  propname,
  value 
)

Definition at line 66 of file MenuComponents.py.

66  def setPar(self, propname, value):
67  cval = getattr( self.Alg, propname)
68  if isinstance(cval, MutableSequence):
69  cval.append(value)
70  return setattr(self.Alg, propname, cval)
71  else:
72  return setattr(self.Alg, propname, value)
73 

Member Data Documentation

◆ Alg

MenuComponents.Node.Alg
inherited

Definition at line 34 of file MenuComponents.py.

◆ inputProp

MenuComponents.AlgNode.inputProp

Definition at line 60 of file MenuComponents.py.

◆ inputs

MenuComponents.Node.inputs
inherited

Definition at line 35 of file MenuComponents.py.

◆ name

MenuComponents.Node.name
inherited

Definition at line 33 of file MenuComponents.py.

◆ outputProp

MenuComponents.AlgNode.outputProp

Definition at line 59 of file MenuComponents.py.

◆ outputs

MenuComponents.Node.outputs
inherited

Definition at line 36 of file MenuComponents.py.


The documentation for this class was generated from the following file:
detail::addInput
void addInput(T &c, const Primitive &input, A a=defaultAccessor< T >)
Definition: PrimitiveHelpers.h:50
dumpTruth.getName
getName
Definition: dumpTruth.py:34
TCS::join
std::string join(const std::vector< std::string > &v, const char c=',')
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/Root/StringUtils.cxx:10
python.processes.powheg.ZZ.ZZ.__init__
def __init__(self, base_directory, **kwargs)
Constructor: all process options are set here.
Definition: ZZ.py:18
str
Definition: BTagTrackIpAccessor.cxx:11