20 eventInfoKey = "EventInfo", decisionFilter="",
21 trigNavThinningSvc = None ):
22 if trigNavThinningSvc
is None:
23 trigNavThinningSvc = _trigNavThinningSvcs.get (streamName,
None)
28 TopLevelContainerName =
"",
29 SubLevelBranchName =
"<type>/<key>")
32 WritingTool = writingTool,
33 ItemList = [
"EventInfo#*" ]
35 outputStream.ExtraOutputs.add((
"DataHeader",
"StoreGateSvc+" + streamName))
37 outputStream.MetadataStore = svcMgr.MetaDataStore
38 outputStream.MetadataItemList = [
39 "EventStreamInfo#" + streamName,
40 "IOVMetaDataContainer#*",
44 from AthenaCommon.AlgSequence
import AlgSequence
45 topSequence = AlgSequence()
46 from AthenaCommon.AlgSequence
import AthSequencer
53 outputStream.WritingTool.AttributeListKey=key
54 if (
'EventInfoTagBuilder/EventInfoTagBuilder' not in topSequence.getProperties()[
'Members']):
56 from .OutputStreamAthenaPoolConf
import EventInfoAttListTool, EventInfoTagBuilder
57 EventInfoTagBuilder =
EventInfoTagBuilder(AttributeList=key, EventInfoKey=eventInfoKey, FilterString=decisionFilter,
59 from AthenaCommon.GlobalFlags
import globalflags
60 if globalflags.InputFormat() ==
'bytestream':
62 EventInfoTagBuilder.PropagateInput=
False
63 topSequence += EventInfoTagBuilder
67 outSequence += outputStream
69 outSequence += outputStream
72 outputStream.OutputFile = fileName
73 from .OutputStreamAthenaPoolConf
import MakeEventStreamInfo
75 streamInfoTool.Key = streamName
76 streamInfoTool.EventInfoKey = eventInfoKey
79 event_format_key =
'EventFormat{}'.format(streamName)
80 event_format_tool = CfgMgr.xAODMaker__EventFormatStreamHelperTool(
81 "{}_MakeEventFormat".format(streamName),
84 outputStream.MetadataItemList += [
"xAOD::EventFormat#{}".format(event_format_key)]
87 file_metadata_key =
"FileMetaData"
88 file_metadata_creator_tool = CfgMgr.xAODMaker__FileMetaDataCreatorTool(
89 "FileMetaDataCreatorTool",
90 OutputKey=file_metadata_key,
91 StreamName=streamName,
93 outputStream.MetadataItemList += [
94 "xAOD::FileMetaData#{}".format(file_metadata_key),
95 "xAOD::FileMetaDataAuxInfo#{}Aux.".format(file_metadata_key),
98 outputStream.HelperTools = [
101 file_metadata_creator_tool,
106 from AthenaServices.AthenaServicesConf
import Athena__ThinningCacheTool
107 tct = Athena__ThinningCacheTool (
'ThinningCacheTool_' + streamName,
108 StreamName = streamName)
109 if trigNavThinningSvc
is not None:
110 tct.TrigNavigationThinningSvc = trigNavThinningSvc
111 outputStream.HelperTools += [tct]
125 from RecExConfig.ObjKeyStore
import objKeyStore
126 for typ, klist
in objKeyStore[
'transient'].getProperties().items():
128 tlist.append (typ +
'#' + k)
129 outputStream.TransientItems += tlist