Seeding/T tracks state locations inconsistent
The fromPrTracksV1Track
converter mislabels state locations for Seeding/T tracks. The converter defines the state locations here
https://gitlab.cern.ch/lhcb/Rec/-/blob/master/Pr/PrConverters/src/PrConvertersInfo.h#L105
static constexpr std::array<std::pair<LHCb::State::Location, int>, 3> StateLocations = {
std::make_pair( LHCb::State::Location::FirstMeasurement, 0 ), std::make_pair( LHCb::State::Location::EndT, 1 ),
std::make_pair( LHCb::State::Location::LastMeasurement, 2 )};
but PrHybridSeeing outputs states in order at BegT
, MidT
and EndT
(link), meaning that for the output v1
track, FirstMeasurement
is actually the BegT
state, EndT
is actually the MidT
state, and LastMeasurement
is actually the EndT
state.
The state positions could be fixed for fromPrTracksV1Track
, but this could affect things downstream, for example the v3 T track constructor defines FirstMeasurement
and LastMeasurement
as available states, so it could also be better to make PrHybridSeeing
return the FirstMeasurement
and LastMeasurement
states instead if possible