110def ActsGeantFollowerCfg(flags, name="ActsGeantFollowerTool", **kwargs):
111
112 result = ComponentAccumulator()
113
114 from TrkConfig.AtlasTrackingGeometrySvcConfig import TrackingGeometrySvcCfg
115 result.merge(TrackingGeometrySvcCfg(flags))
116
117 from ActsConfig.ActsGeometryConfig import NominalAlignmentCondAlgCfg
118 nomAli = NominalAlignmentCondAlgCfg(flags, OutputLevel=INFO)
119 result.merge(nomAli)
120
121 from ActsConfig.ActsGeometryConfig import ActsTrackingGeometrySvcCfg
122 tgSvc = ActsTrackingGeometrySvcCfg(flags, OutputLevel=INFO)
123 result.merge(tgSvc)
124
125 print(
'DEF WRITER : ')
126 from ActsConfig.ActsGeometryConfig import ActsExtrapolationToolCfg
127 Actsextrapol = result.popToolsAndMerge(ActsExtrapolationToolCfg(flags,
128 InteractionMultiScatering = True,
129 InteractionEloss = True,
130 InteractionRecord=True,
131 OutputLevel=INFO))
132 result.addPublicTool(Actsextrapol)
133
134 from TrkConfig.AtlasExtrapolationEngineConfig import AtlasExtrapolationEngineCfg
135 AtlasExtrapolationEngine = result.getPrimaryAndMerge(AtlasExtrapolationEngineCfg(flags))
136
137
138
139 followingHelper = CompFactory.ActsGeantFollowerHelper("ActsGeantFollowerHelper",
140 **kwargs,
141 ExtrapolationEngine=AtlasExtrapolationEngine,
142 ActsExtrapolator=result.getPublicTool(Actsextrapol.name),
143 ExtrapolateDirectly=False,
144 ExtrapolateIncrementally=True,
145 OutputLevel=INFO)
146 result.addPublicTool(followingHelper)
147
148
149 from ActsConfig.ActsGeantFollowingConfig import ActsGeantFollowerToolCfg
150 ActsGeantFollowerAction = result.popToolsAndMerge(ActsGeantFollowerToolCfg(flags))
151
152
153 from G4AtlasServices.G4AtlasUserActionConfig import getDefaultActions
154 defaultActions = result.popToolsAndMerge(getDefaultActions(flags))
155
156
157 actionList = (defaultActions + ActsGeantFollowerAction)
158
159
160 kwargs.setdefault("UserActionTools",actionList)
161 result.addService(CompFactory.G4UA.UserActionSvc(name, **kwargs))
162
163 return result
164
165
166
void print(char *figname, TCanvas *c1)