![]() |
ATLAS Offline Software
|
Classes | |
class | TestCF |
class | TestNest |
Functions | |
def | parAND (name, subs=[]) |
def | parOR (name, subs=[]) |
def | seqAND (name, subs=[]) |
def | seqOR (name, subs=[]) |
def | getSequenceChildren (comp) |
def | getAllSequenceNames (seq, depth=0) |
def | checkSequenceConsistency (seq) |
def | stepSeq (name, filterAlg, rest) |
def | isSequence (obj) |
def | findSubSequence (start, nameToLookFor) |
def | findOwningSequence (start, nameToLookFor) |
def | findAlgorithmByPredicate (startSequence, predicate, depth=1000000) |
def | findAlgorithm (startSequence, nameToLookFor, depth=1000000) |
def | findAllAlgorithms (sequence, nameToLookFor=None) |
def | findAllAlgorithmsByName (sequence, namesToLookFor=None) |
def | flatAlgorithmSequences (start) |
def | iterSequences (start) |
Variables | |
AthSequencer = CompFactory.AthSequencer | |
def python.CFElements.checkSequenceConsistency | ( | seq | ) |
Enforce rules for sequence graph - identical items can not be added to itself (even indirectly)
Definition at line 69 of file CFElements.py.
def python.CFElements.findAlgorithm | ( | startSequence, | |
nameToLookFor, | |||
depth = 1000000 |
|||
) |
Traverse sequences tree to find the algorithm of given name. The first encountered is returned. The name() method is used to obtain the algorithm name, that one has to match to the request.
Definition at line 145 of file CFElements.py.
def python.CFElements.findAlgorithmByPredicate | ( | startSequence, | |
predicate, | |||
depth = 1000000 |
|||
) |
Traverse sequences tree to find the first algorithm satisfying given predicate. The first encountered is returned. Depth of the search can be controlled by the depth parameter. Typical use is to limit search to the startSequence with depth parameter set to 1
Definition at line 126 of file CFElements.py.
def python.CFElements.findAllAlgorithms | ( | sequence, | |
nameToLookFor = None |
|||
) |
Returns flat listof of all algorithm instances in this, and in sub-sequences
Definition at line 153 of file CFElements.py.
def python.CFElements.findAllAlgorithmsByName | ( | sequence, | |
namesToLookFor = None |
|||
) |
Finds all algorithms in sequence and groups them by name Resulting dict has a following structure {"Alg1Name":[(Alg1Instance, parentSequenceA, indexInSequenceA),(Alg1Instance, parentSequenceB, indexInSequenceB)], "Alg2Name":(Alg2Instance, parentSequence, indexInThisSequence), ....}
Definition at line 167 of file CFElements.py.
def python.CFElements.findOwningSequence | ( | start, | |
nameToLookFor | |||
) |
def python.CFElements.findSubSequence | ( | start, | |
nameToLookFor | |||
) |
Traverse sequences tree to find a sequence of a given name. The first one is returned.
Definition at line 100 of file CFElements.py.
def python.CFElements.flatAlgorithmSequences | ( | start | ) |
Converts tree like structure of sequences into dictionary keyed by top/start sequence name containing lists of of algorithms & sequences.
Definition at line 190 of file CFElements.py.
def python.CFElements.getAllSequenceNames | ( | seq, | |
depth = 0 |
|||
) |
Generate a list of sequence names and depths in the graph, e.g. [('AthAlgSeq', 0), ('seq1', 1), ('seq2', 1), ('seq1', 2)] represents \\__ AthAlgSeq (seq: PAR AND) \\__ seq1 (seq: SEQ AND) \\__ seq2 (seq: SEQ AND)
Definition at line 52 of file CFElements.py.
def python.CFElements.getSequenceChildren | ( | comp | ) |
Return sequence children (empty if comp is not a sequence)
Definition at line 44 of file CFElements.py.
def python.CFElements.isSequence | ( | obj | ) |
Definition at line 96 of file CFElements.py.
def python.CFElements.iterSequences | ( | start | ) |
Iterator of sequences and their algorithms from (and including) the `start` sequence object. Do start from a sequence name use findSubSequence.
Definition at line 206 of file CFElements.py.
def python.CFElements.parAND | ( | name, | |
subs = [] |
|||
) |
def python.CFElements.parOR | ( | name, | |
subs = [] |
|||
) |
parallel OR sequencer This is the default sequencer and lets the DataFlow govern the execution entirely.
Definition at line 15 of file CFElements.py.
def python.CFElements.seqAND | ( | name, | |
subs = [] |
|||
) |
def python.CFElements.seqOR | ( | name, | |
subs = [] |
|||
) |
sequential OR sequencer Used when a barrier needs to be set by all subs reached irrespective of the decision
Definition at line 33 of file CFElements.py.
def python.CFElements.stepSeq | ( | name, | |
filterAlg, | |||
rest | |||
) |
elementary HLT step sequencer, filterAlg is gating, rest is anything that needs to happen within the step
Definition at line 89 of file CFElements.py.
python.CFElements.AthSequencer = CompFactory.AthSequencer |
Definition at line 5 of file CFElements.py.