| The Gaudi Framework v32r1 (f65d50dc)

Functions | Variables
EarlyTerminatingBranchesSharingAlgorithm Namespace Reference

## Functions
def | parOR (name, subs=[])
def | seqAND (name, subs=[])

## Variables
int | evtslots = 1
int | evtMax = 1
int | algosInFlight = 1
| whiteboard
| slimeventloopmgr
| ThreadPoolSize
| OutputLevel
| topSequence = GaudiSequencer("topSequence")
def | and1A = seqAND("AND1A")
| filterA = CPUCruncher("filterA")
def | and2A = seqAND("AND2A")
def | orA = parOR("ORA")
def | and3A = seqAND("AND3A")
| alg1 = CPUCruncher("Alg1")
| hypoA = CPUCruncher("hypoA")
def | and1B = seqAND("AND1B")
| filterB = CPUCruncher("filterB", InvertDecision=True)
def | and2B = seqAND("AND2B")
def | orB = parOR("ORB")
def | and3B = seqAND("AND3B")
| alg2 = CPUCruncher("Alg2")
| hypoB = CPUCruncher("hypoB")
| EvtMax
| EvtSel
| ExtSvc
| EventLoop
| TopAlg
| MessageSvcType

## Detailed Description

    Test a CF configuration with an algorithm shared between branches that can terminate early.

## Function Documentation

## ◆ parOR()

def EarlyTerminatingBranchesSharingAlgorithm.parOR | ( |  | name,
|  |  | subs = `[]`
| ) |  |

    parallel OR sequencer

Definition at line 22 of file EarlyTerminatingBranchesSharingAlgorithm.py.

22 def parOR(name, subs=[]):
23 """ parallel OR sequencer """
24 seq = GaudiSequencer(name)
25 seq.ModeOR = True
26 seq.Sequential = False
27 seq.ShortCircuit = False
28 # seq.StopOverride = False
29 for s in subs:
30 seq.Members.append(s)
31 return seq
32
33
GaudiSequencer
Sequencer for executing several algorithms, stopping when one is faulty.
Definition: GaudiSequencer.h:28
EarlyTerminatingBranchesSharingAlgorithm.parOR
def parOR(name, subs=[])
Definition: EarlyTerminatingBranchesSharingAlgorithm.py:22

## ◆ seqAND()

def EarlyTerminatingBranchesSharingAlgorithm.seqAND | ( |  | name,
|  |  | subs = `[]`
| ) |  |

    sequential AND sequencer

Definition at line 34 of file EarlyTerminatingBranchesSharingAlgorithm.py.

34 def seqAND(name, subs=[]):
35 """ sequential AND sequencer """
36 seq = GaudiSequencer(name)
37 seq.ModeOR = False
38 seq.Sequential = True
39 # seq.StopOverride = True
40 seq.ShortCircuit = True
41 for s in subs:
42 seq.Members.append(s)
43 return seq
44
45
GaudiSequencer
Sequencer for executing several algorithms, stopping when one is faulty.
Definition: GaudiSequencer.h:28
EarlyTerminatingBranchesSharingAlgorithm.seqAND
def seqAND(name, subs=[])
Definition: EarlyTerminatingBranchesSharingAlgorithm.py:34

## Variable Documentation

## ◆ alg1

EarlyTerminatingBranchesSharingAlgorithm.alg1 = CPUCruncher("Alg1")

Definition at line 64 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ alg2

EarlyTerminatingBranchesSharingAlgorithm.alg2 = CPUCruncher("Alg2")

Definition at line 87 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ algosInFlight

EarlyTerminatingBranchesSharingAlgorithm.algosInFlight = 1

Definition at line 11 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ and1A

def EarlyTerminatingBranchesSharingAlgorithm.and1A = seqAND("AND1A")

Definition at line 48 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ and1B

def EarlyTerminatingBranchesSharingAlgorithm.and1B = seqAND("AND1B")

Definition at line 71 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ and2A

def EarlyTerminatingBranchesSharingAlgorithm.and2A = seqAND("AND2A")

Definition at line 53 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ and2B

def EarlyTerminatingBranchesSharingAlgorithm.and2B = seqAND("AND2B")

Definition at line 76 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ and3A

def EarlyTerminatingBranchesSharingAlgorithm.and3A = seqAND("AND3A")

Definition at line 60 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ and3B

def EarlyTerminatingBranchesSharingAlgorithm.and3B = seqAND("AND3B")

Definition at line 83 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ EventLoop

EarlyTerminatingBranchesSharingAlgorithm.EventLoop

Definition at line 102 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ evtMax

int EarlyTerminatingBranchesSharingAlgorithm.evtMax = 1

Definition at line 10 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ EvtMax

EarlyTerminatingBranchesSharingAlgorithm.EvtMax

Definition at line 99 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ EvtSel

EarlyTerminatingBranchesSharingAlgorithm.EvtSel

Definition at line 100 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ evtslots

int EarlyTerminatingBranchesSharingAlgorithm.evtslots = 1

Definition at line 9 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ ExtSvc

EarlyTerminatingBranchesSharingAlgorithm.ExtSvc

Definition at line 101 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ filterA

EarlyTerminatingBranchesSharingAlgorithm.filterA = CPUCruncher("filterA")

Definition at line 50 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ filterB

EarlyTerminatingBranchesSharingAlgorithm.filterB = CPUCruncher("filterB", InvertDecision=True)

Definition at line 73 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ hypoA

EarlyTerminatingBranchesSharingAlgorithm.hypoA = CPUCruncher("hypoA")

Definition at line 67 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ hypoB

EarlyTerminatingBranchesSharingAlgorithm.hypoB = CPUCruncher("hypoB")

Definition at line 90 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ MessageSvcType

EarlyTerminatingBranchesSharingAlgorithm.MessageSvcType

Definition at line 104 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ orA

def EarlyTerminatingBranchesSharingAlgorithm.orA = parOR("ORA")

Definition at line 57 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ orB

def EarlyTerminatingBranchesSharingAlgorithm.orB = parOR("ORB")

Definition at line 80 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ OutputLevel

EarlyTerminatingBranchesSharingAlgorithm.OutputLevel

Definition at line 19 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ slimeventloopmgr

EarlyTerminatingBranchesSharingAlgorithm.slimeventloopmgr

Initial value:
1 = HiveSlimEventLoopMgr(
2 SchedulerName="AvalancheSchedulerSvc", OutputLevel=DEBUG)
HiveSlimEventLoopMgr
Definition: HiveSlimEventLoopMgr.h:22

Definition at line 16 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ ThreadPoolSize

EarlyTerminatingBranchesSharingAlgorithm.ThreadPoolSize

Definition at line 19 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ TopAlg

EarlyTerminatingBranchesSharingAlgorithm.TopAlg

Definition at line 103 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ topSequence

EarlyTerminatingBranchesSharingAlgorithm.topSequence = GaudiSequencer("topSequence")

Definition at line 46 of file EarlyTerminatingBranchesSharingAlgorithm.py.

## ◆ whiteboard

EarlyTerminatingBranchesSharingAlgorithm.whiteboard

Initial value:
1 = HiveWhiteBoard(
2 "EventDataSvc", EventSlots=evtslots, OutputLevel=INFO)
HiveWhiteBoard
Data service base class.
Definition: HiveWhiteBoard.cpp:119

Definition at line 13 of file EarlyTerminatingBranchesSharingAlgorithm.py.