The Gaudi Framework  v36r1 (3e2fb5a8)
AlgTools.py
Go to the documentation of this file.
1 
14 from Gaudi.Configuration import *
15 from Configurables import MyAlgorithm, MyTool, MyGaudiAlgorithm
16 
17 from Configurables import GaudiExamplesCommonConf
18 GaudiExamplesCommonConf()
19 
20 myalg = MyAlgorithm('MyAlg')
21 
22 myalg.addTool(
23  MyTool(Int=101, Double=101.1e+10, String="hundred one", Bool=False))
24 
25 gtool = MyTool(
26  'MyTool',
27  Int=201,
28  Double=201.1e+10,
29  String="two hundred and one",
30  Bool=True,
31  OutputLevel=INFO)
32 
33 tool_conf1 = MyTool(
34  'MyTool_conf1',
35  Int=1,
36  Double=2,
37  String="three",
38  Bool=True,
39  OutputLevel=INFO)
40 
41 tool_conf2 = MyTool(
42  'MyTool_conf2',
43  Int=10,
44  Double=20,
45  String="xyz",
46  Bool=False,
47  OutputLevel=INFO)
48 
49 myToolWithName = myalg.addTool(tool_conf2, "ToolWithName")
50 
51 myalg.ToolWithName.String = "xyz"
52 
53 assert myToolWithName.String == "xyz"
54 assert myalg.ToolWithName == myToolWithName
55 
56 myToolWithName.String = "abc"
57 
58 mygalg = MyGaudiAlgorithm('MyGaudiAlg')
59 mygalg.PrivToolHandle.String = "Is a private tool"
60 
61 pubtool = MyTool('TestPubToolHandle', String="Is a public tool")
62 mygalg.PubToolHandle = pubtool
63 
64 # disable a ToolHandle
65 mygalg.InvalidToolHandle = ""
66 
68  EvtMax=10,
69  EvtSel='NONE',
70  HistogramPersistency='NONE',
71  TopAlg=[myalg, mygalg])
72 # --------------------------------------------------------------
73 # Test circular tool dependencies (by Chris Jones)
74 # --------------------------------------------------------------
75 from Configurables import TestToolAlg, TestTool
76 
77 tA = TestTool('ToolA', Tools=['TestTool/ToolB'], OutputLevel=DEBUG)
78 tB = TestTool('ToolB', Tools=['TestTool/ToolA'], OutputLevel=DEBUG)
79 testalg = TestToolAlg(Tools=['TestTool/ToolA'])
80 ApplicationMgr().TopAlg += [testalg]
Gaudi.Configuration
Definition: Configuration.py:1
ApplicationMgr
Definition: ApplicationMgr.h:57