41 if (
msgLvl(MSG::WARNING))
msg(MSG::WARNING)<<
"Could not retrieve InDetTrackSplitterTool" <<
endmsg;
47 return StatusCode::SUCCESS;
58 return StatusCode::SUCCESS;
72 if (splittedTracks.
record( std::make_unique<TrackCollection>() ).isFailure()){
74 return StatusCode::FAILURE;
81 for (; it != itE; ++it){
83 std::pair<Trk::Track*, Trk::Track*> splitTracks = std::pair<Trk::Track*, Trk::Track*> (0,0);
86 if(splitTracks.first && splitTracks.second){
88 ATH_MSG_DEBUG(
"** InDetSplittedTracksCreator ** Accept upper segment ");
89 splittedTracks->push_back( splitTracks.first );
92 ATH_MSG_DEBUG(
"** InDetSplittedTracksCreator ** Accept lower segment ");
93 splittedTracks->push_back( splitTracks.second );
96 delete splitTracks.first;
delete splitTracks.second;
100 ATH_MSG_DEBUG(
"** InDetSplittedTracksCreator ** SplittedTracks->size() " << splittedTracks->size() <<
" stored in " <<
m_OutputTrackCol.key() );
103 return StatusCode::SUCCESS;
108 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_VERBOSE(x)
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
bool msgLvl(const MSG::Level lvl) const
An algorithm that can be simultaneously executed in multiple threads.
DataModel_detail::const_iterator< DataVector > const_iterator
ToolHandle< InDet::IInDetTrackSplitterTool > m_trackSplitterTool
instances of IInDet
InDetSplittedTracksCreator(const std::string &name, ISvcLocator *pSvcLocator)
Standard Athena-Algorithm Constructor.
bool m_takeUpperSegment
flag to accept the upper segment
bool m_makeSiOnlyTracks
flag for using TRT standalone tracks
StatusCode initialize()
standard Athena-Algorithm method
StatusCode finalize()
standard Athena-Algorithm method
SG::WriteHandleKey< TrackCollection > m_OutputTrackCol
holds the names the output track collection written to store gate
bool m_takeLowerSegment
flag to accept the lower segment
StatusCode execute(const EventContext &ctx) const
standard Athena-Algorithm method
~InDetSplittedTracksCreator()
Default Destructor.
SG::ReadHandleKey< TrackCollection > m_TrackCol
holds the name of the track coll to be used
virtual bool isValid() override final
Can the handle be successfully dereferenced?
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.