10 ISvcLocator *pSvcLocator)
24 return StatusCode::SUCCESS;
38 for (
auto track : *actsTracks ) {
39 auto destProxy = tracksContainer.makeTrack();
40 destProxy.copyFrom(track);
42 ATH_MSG_DEBUG(
" \\__ Converted " << tracksContainer.size() <<
" tracks");
45 std::unique_ptr< ActsTrk::PersistentTrackContainer > constTracksContainer =
m_tracksBackendHandlesHelper.moveToConst( std::move(tracksContainer),
51 ATH_CHECK( trackContainerHandle.
record(std::move(constTracksContainer)) );
52 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
virtual StatusCode initialize() override
SG::WriteHandleKey< ActsTrk::PersistentTrackContainer > m_outputTrackContainerKey
virtual StatusCode execute(const EventContext &ctx) const override
PublicToolHandle< ActsTrk::ITrackingGeometryTool > m_trackingGeometryTool
ActsTrk::MutableTrackContainerHandlesHelper m_tracksBackendHandlesHelper
ActsToXAODTrackConverterAlg(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadHandleKey< ActsTrk::TrackContainer > m_inputTrackContainerKey
An algorithm that can be simultaneously executed in multiple threads.
virtual bool isValid() override final
Can the handle be successfully dereferenced?
const_pointer_type cptr()
Dereference the pointer.
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
std::string prefixFromTrackContainerName(const std::string &tracks)
Parse TrackContainer name to get the prefix for backends The name has to contain XYZTracks,...
SG::ReadCondHandle< T > makeHandle(const SG::ReadCondHandleKey< T > &key, const EventContext &ctx=Gaudi::Hive::currentContext())