Skip to content
Snippets Groups Projects
Commit c548e04b authored by Christopher Rob Jones's avatar Christopher Rob Jones
Browse files

RichTrackSegment: Add track origin time data member

parent 66aafb9a
No related branches found
No related tags found
1 merge request!4181RICH Support for 'Reco From MC Information' for upgrade studies
Pipeline #5979249 passed
......@@ -236,19 +236,20 @@ namespace LHCb {
* Information is moved in this implementation.
*/
template <class INTERS>
RichTrackSegment( INTERS&& inters, ///< The radiator intersections
const Rich::RadiatorType rad, ///< The radiator type
const Rich::DetectorType rich, ///< The detector type
const StateErrors& entryErrs = StateErrors{}, ///< The segment errors at the entry point
const StateErrors& exitErrs = StateErrors{} ///< The segment errors at the exit point
RichTrackSegment( INTERS&& inters, ///< The radiator intersections
const Rich::RadiatorType rad, ///< The radiator type
const Rich::DetectorType rich, ///< The detector type
const StateErrors& entryErrs = StateErrors{}, ///< The segment errors at the entry point
const StateErrors& exitErrs = StateErrors{}, ///< The segment errors at the exit point
const float tkOriginTime = 0.0 ///< Origin time of the associated track
)
: m_radiator( rad )
, m_rich( rich )
, m_radIntersections( std::forward<INTERS>( inters ) )
, m_errorsEntry( entryErrs )
, m_errorsMiddle( Rich::Rich1Gas == rad ? exitErrs : entryErrs )
, // CRJ : Is this best ?
m_errorsExit( exitErrs )
, m_errorsExit( exitErrs )
, m_tkOriginTime( tkOriginTime )
, m_avPhotonEnergy( avPhotEn( rad ) ) {
initTwoPoints();
}
......@@ -267,7 +268,8 @@ namespace LHCb {
const Rich::DetectorType rich, ///< The detector type
const StateErrors& entryErrors = StateErrors{}, ///< The segment errors at the entry point
const StateErrors& middleErrors = StateErrors{}, ///< The segment errors at the mid point
const StateErrors& exitErrors = StateErrors{} ///< The segment errors at the exit point
const StateErrors& exitErrors = StateErrors{}, ///< The segment errors at the exit point
const float tkOriginTime = 0.0 ///< Origin time of the associated track
)
: m_radiator( rad )
, m_rich( rich )
......@@ -277,6 +279,7 @@ namespace LHCb {
, m_errorsEntry( entryErrors )
, m_errorsMiddle( middleErrors )
, m_errorsExit( exitErrors )
, m_tkOriginTime( tkOriginTime )
, m_avPhotonEnergy( avPhotEn( rad ) ) {
initThreePoints();
}
......@@ -553,6 +556,12 @@ namespace LHCb {
/// Sets the average observable photon energy
inline void setAvPhotonEnergy( const float energy ) noexcept { m_avPhotonEnergy = energy; }
/// Set the track origin time
inline void setTkOriginTime( const float time ) noexcept { m_tkOriginTime = time; }
/// Access the track origin time
inline auto tkOriginTime() const noexcept { return m_tkOriginTime; }
/// Reset the segment
inline void reset() { updateCachedInfo(); }
......@@ -612,6 +621,9 @@ namespace LHCb {
StateErrors m_errorsMiddle; ///< Errors for the middle state
StateErrors m_errorsExit; ///< Errors for the exit state
/// Track origin time
float m_tkOriginTime{0.0};
/** The average observable photon energy for this segment.
* Set to the average for Rich1 and Rich2 gas radiators...
* @todo Quick fix. Need to review to if this can be done in a better way
......
......@@ -103,6 +103,7 @@ std::ostream& LHCb::RichTrackSegment::fillStream( std::ostream& s ) const {
<< " entryErrors:\t" << entryErrors() << std::endl
<< " middleErrors:\t" << middleErrors() << std::endl
<< " exitErrors:\t" << exitErrors() << std::endl
<< " tkOriginTime:\t" << tkOriginTime() << std::endl
<< " } ";
return s;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment