92 **kwargs) :
93
94 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
95 from AthenaConfiguration.ComponentFactory import CompFactory
96 acc = ComponentAccumulator()
97
98
99 from ActsConfig.ActsGeometryConfig import ActsTrackingGeometrySvcCfg
100 acc.merge( ActsTrackingGeometrySvcCfg(configFlags))
101 from MagFieldServices.MagFieldServicesConfig import AtlasFieldCacheCondAlgCfg
102 acc.merge(AtlasFieldCacheCondAlgCfg(configFlags))
103 from ActsAlignmentAlgs.AlignmentAlgsConfig import ActsGeometryContextAlgCfg
104 acc.merge(ActsGeometryContextAlgCfg(configFlags))
105
106 mapwriters = []
107 if WriteRootMaterialMap:
108 mapwriters += [acc.popToolsAndMerge(RootMaterialWriterToolCfg(configFlags))]
109 if WriteJsonMaterialMap:
110 mapwriters += [acc.popToolsAndMerge(JsonMaterialWriterToolCfg(configFlags))]
111
112 kwargs.setdefault("MaterialDumper", acc.popToolsAndMerge(MaterialDumperToolCfg(configFlags, MaterialMapWriters=mapwriters)))
113
114 kwargs.setdefault("MappedMaterialTrackCollectionKey", OutputMappedMaterialTracks)
115 kwargs.setdefault("UnmappedMaterialTrackCollectionKey", OutputUnmappedMaterialTracks)
116
117 acc.addEventAlgo(CompFactory.ActsTrk.MaterialMapping(name, **kwargs), primary = True)
118
119 if StoreTracks:
120 from ActsConfig.ActsMaterialConfig import MaterialTrackWriterCfg
121 acc.merge(MaterialTrackWriterCfg(configFlags,
122 name="MappedMaterialTrackWriter",
123 FileName="material-tracks-mapped.root",
124 OutStream="ACTSMAPPEDMATERIALWRITER",
125 StoreSurface=StoreSurfInfo,
126 MaterialTrackCollectionKey=OutputMappedMaterialTracks))
127 acc.merge(MaterialTrackWriterCfg(configFlags,
128 name="UnmappedMaterialTrackWriter",
129 FileName="material-tracks-unmapped.root",
130 OutStream="ACTSUNMAPPEDMATERIALWRITER",
131 StoreSurface=StoreSurfInfo,
132 MaterialTrackCollectionKey=OutputUnmappedMaterialTracks))
133
134 return acc
135
136