39
40 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
41 from AthenaConfiguration.ComponentFactory import CompFactory
42
43 result = ComponentAccumulator()
44
45 actionAcc = ComponentAccumulator()
46 actions = []
47 actions += [actionAcc.popToolsAndMerge(MaterialStepRecorderCfg(configFlags,**kwargs))]
48 actionAcc.setPrivateTools(actions)
49 MaterialStepRecorderAction = result.popToolsAndMerge(actionAcc)
50
51 actionList = MaterialStepRecorderAction
52
53
54 kwargs_UATools = {}
55 kwargs_UATools.setdefault("UserActionTools",actionList)
56 result.addService(CompFactory.G4UA.UserActionSvc(name,**kwargs_UATools))
57
58 AthenaOutputStream=CompFactory.AthenaOutputStream
59 AthenaOutputStreamTool=CompFactory.AthenaOutputStreamTool
61 TopLevelContainerName = "",
62 SubLevelBranchName = "<type>/<key>" )
63
65 WritingTool = writingTool,
66 ItemList=['EventInfo#*', 'Trk::MaterialStepCollection#*'],
67 MetadataItemList = [ "EventStreamInfo#MaterialStepCollectionStream", "IOVMetaDataContainer#*" ],
68 OutputFile = "MaterialStepCollection.root")
69
70 StoreGateSvc=CompFactory.StoreGateSvc
72 outputStream.MetadataStore = result.getService("MetaDataStore")
73
74 MakeEventStreamInfo=CompFactory.MakeEventStreamInfo
76 streamInfoTool.Key = "MaterialStepCollectionStream"
77 streamInfoTool.EventInfoKey = "EventInfo"
78 outputStream.HelperTools.append(streamInfoTool)
79
80 result.addEventAlgo(outputStream)
81
82 return result
83
algorithm that marks for write data objects in SG
This class provides an algorithm to make the EventStreamInfo object and update it.
The Athena Transient Store API.