Skip to content
Snippets Groups Projects
Commit db5118b8 authored by Sebastien Ponce's avatar Sebastien Ponce
Browse files

Merge branch 'mveghel-richfunctorsfix' into 'master'

Remove obsolete RICH additionalInfo in ProtoParticle

See merge request !4320
parents f52a8364 0a0c259f
No related branches found
No related tags found
1 merge request!4320Remove obsolete RICH additionalInfo in ProtoParticle
Pipeline #6753762 passed
......@@ -216,22 +216,6 @@ StatusCode ProtoParticlePacker::unpack( const PackedData& pproto, Data& proto, c
proto.addInfo( k, StandardPacker::fltPacked( v ) );
}
}
// Work around for time when RichDLL el/mu values where removed from additional Info.
// If missing, but RichPID is linked, add them back.
// See https://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/4301 for more details
if ( proto.richPID() ) {
if ( !proto.hasInfo( LHCb::ProtoParticle::additionalInfo::RichDLLe ) ) {
parent().debug() << "Adding missing RichDLLe additional Info" << endmsg;
proto.addInfo( LHCb::ProtoParticle::additionalInfo::RichDLLe, //
proto.richPID()->particleDeltaLL( Rich::Electron ) );
}
if ( !proto.hasInfo( LHCb::ProtoParticle::additionalInfo::RichDLLmu ) ) {
parent().debug() << "Adding missing RichDLLmu additional Info" << endmsg;
proto.addInfo( LHCb::ProtoParticle::additionalInfo::RichDLLmu, //
proto.richPID()->particleDeltaLL( Rich::Muon ) );
}
}
return StatusCode::SUCCESS;
}
......
......@@ -223,30 +223,19 @@ namespace LHCb::Rec::ProtoParticle::Charged {
bool AddCombineDLLs::addRich( LHCb::ProtoParticle* proto, CombinedLL& combDLL ) const {
// Add RICH Dll information.
bool ok = false;
if ( proto->hasInfo( LHCb::ProtoParticle::additionalInfo::RichPIDStatus ) ) {
bool ok = false;
auto pid = proto->richPID();
if ( pid ) {
ok = true;
// Apply renormalisation of RICH el and mu DLL values
// Eventually, should make these tunable job options ....
const int rTechnique = m_maskTechnique.at( "RICH" );
if ( 0 != ( m_elCombDll & rTechnique ) )
combDLL.elDLL += LHCb::RichPID::scaledDLLForCombDLL(
Rich::Electron, proto->info( LHCb::ProtoParticle::additionalInfo::RichDLLe, 0 ) );
if ( 0 != ( m_muCombDll & rTechnique ) )
combDLL.muDLL += LHCb::RichPID::scaledDLLForCombDLL(
Rich::Muon, proto->info( LHCb::ProtoParticle::additionalInfo::RichDLLmu, 0 ) );
if ( 0 != ( m_piCombDll & rTechnique ) )
combDLL.piDLL += LHCb::RichPID::scaledDLLForCombDLL(
Rich::Pion, proto->info( LHCb::ProtoParticle::additionalInfo::RichDLLpi, 0 ) );
if ( 0 != ( m_kaCombDll & rTechnique ) )
combDLL.kaDLL += LHCb::RichPID::scaledDLLForCombDLL(
Rich::Kaon, proto->info( LHCb::ProtoParticle::additionalInfo::RichDLLk, 0 ) );
if ( 0 != ( m_prCombDll & rTechnique ) )
combDLL.prDLL += LHCb::RichPID::scaledDLLForCombDLL(
Rich::Proton, proto->info( LHCb::ProtoParticle::additionalInfo::RichDLLp, 0 ) );
if ( 0 != ( m_deCombDll & rTechnique ) )
combDLL.deDLL += LHCb::RichPID::scaledDLLForCombDLL(
Rich::Deuteron, proto->info( LHCb::ProtoParticle::additionalInfo::RichDLLd, 0 ) );
if ( 0 != ( m_elCombDll & rTechnique ) ) combDLL.elDLL += pid->scaledDLLForCombDLL( Rich::Electron );
if ( 0 != ( m_muCombDll & rTechnique ) ) combDLL.muDLL += pid->scaledDLLForCombDLL( Rich::Muon );
if ( 0 != ( m_piCombDll & rTechnique ) ) combDLL.piDLL += pid->scaledDLLForCombDLL( Rich::Pion );
if ( 0 != ( m_kaCombDll & rTechnique ) ) combDLL.kaDLL += pid->scaledDLLForCombDLL( Rich::Kaon );
if ( 0 != ( m_prCombDll & rTechnique ) ) combDLL.prDLL += pid->scaledDLLForCombDLL( Rich::Proton );
if ( 0 != ( m_deCombDll & rTechnique ) ) combDLL.deDLL += pid->scaledDLLForCombDLL( Rich::Deuteron );
if ( msgLevel( MSG::VERBOSE ) ) verbose() << " -> Adding RICH info " << combDLL << endmsg;
}
return ok;
......
......@@ -98,18 +98,6 @@ namespace LHCb::Rec::ProtoParticle::Charged {
// reference to RichPID object
proto.setRichPID( richPID );
// Store the raw RICH PID info
proto.addInfo( LHCb::ProtoParticle::additionalInfo::RichDLLe, richPID->particleDeltaLL( Rich::Electron ) );
proto.addInfo( LHCb::ProtoParticle::additionalInfo::RichDLLmu, richPID->particleDeltaLL( Rich::Muon ) );
proto.addInfo( LHCb::ProtoParticle::additionalInfo::RichDLLpi, richPID->particleDeltaLL( Rich::Pion ) );
proto.addInfo( LHCb::ProtoParticle::additionalInfo::RichDLLk, richPID->particleDeltaLL( Rich::Kaon ) );
proto.addInfo( LHCb::ProtoParticle::additionalInfo::RichDLLp, richPID->particleDeltaLL( Rich::Proton ) );
proto.addInfo( LHCb::ProtoParticle::additionalInfo::RichDLLbt, richPID->particleDeltaLL( Rich::BelowThreshold ) );
proto.addInfo( LHCb::ProtoParticle::additionalInfo::RichDLLd, richPID->particleDeltaLL( Rich::Deuteron ) );
// Store History
proto.addInfo( LHCb::ProtoParticle::additionalInfo::RichPIDStatus, richPID->pidResultCode() );
}
//=============================================================================
......
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