diff --git a/Kernel/PartProp/CMakeLists.txt b/Kernel/PartProp/CMakeLists.txt index 839807b28b5a4239a5f9c6f3987e197779427b0f..4faad328b3f4a273ddfbc188dee3ee72eb02778e 100644 --- a/Kernel/PartProp/CMakeLists.txt +++ b/Kernel/PartProp/CMakeLists.txt @@ -23,7 +23,6 @@ gaudi_add_library(PartPropLib src/ParticleID.cpp src/ParticleProperty.cpp src/Symbols.cpp - src/TrackDefaultParticles.cpp src/iNode.cpp LINK PUBLIC diff --git a/Kernel/PartProp/include/Kernel/TrackDefaultParticles.h b/Kernel/PartProp/include/Kernel/TrackDefaultParticles.h index 98b725f207feb0650ba89acbc01acccff8bce153..209a3821dabf0d5bd3fced7d366e581ca28f4945 100644 --- a/Kernel/PartProp/include/Kernel/TrackDefaultParticles.h +++ b/Kernel/PartProp/include/Kernel/TrackDefaultParticles.h @@ -20,9 +20,9 @@ namespace LHCb { namespace Tr { class PID { - enum class validated_pid_t { Electron = 0, Muon, Pion, Kaon, Proton, Xi, Omega, hypertriton }; - static constexpr std::array<double, 8> s_mass = { 0.51099891, 105.65837, 139.57018, 493.677, - 938.27203, 1321.71, 1672.45, 2991.17 }; + enum class validated_pid_t { Electron = 0, Muon, Pion, Kaon, Proton, Sigmap, Sigmam, Xi, Omega, hypertriton }; + inline static constexpr auto s_mass = std::array<double, 10>{ + 0.51099891, 105.65837, 139.57018, 493.677, 938.27203, 1197.449, 1189.37, 1321.71, 1672.45, 2991.17 }; validated_pid_t m_value; @@ -38,6 +38,10 @@ namespace LHCb { return validated_pid_t::Kaon; case 2212: return validated_pid_t::Proton; + case 3112: + return validated_pid_t::Sigmam; + case 3222: + return validated_pid_t::Sigmap; case 3312: return validated_pid_t::Xi; case 3334: @@ -67,6 +71,10 @@ namespace LHCb { static constexpr PID Proton() { return PID{ validated_pid_t::Proton }; } + static constexpr PID Sigmap() { return PID{ validated_pid_t::Sigmap }; } + + static constexpr PID Sigmam() { return PID{ validated_pid_t::Sigmam }; } + static constexpr PID Xi() { return PID{ validated_pid_t::Xi }; } static constexpr PID Omega() { return PID{ validated_pid_t::Omega }; } @@ -86,6 +94,10 @@ namespace LHCb { return "Kaon"; case validated_pid_t::Proton: return "Proton"; + case validated_pid_t::Sigmap: + return "Sigma+"; + case validated_pid_t::Sigmam: + return "Sigma-"; case validated_pid_t::Xi: return "Xi"; case validated_pid_t::Omega: @@ -103,7 +115,8 @@ namespace LHCb { friend std::ostream& operator<<( std::ostream& os, const PID& pid ) { return toStream( pid, os ); } friend StatusCode parse( PID& pid, const std::string& in ) { - for ( PID ref : { Electron(), Muon(), Pion(), Kaon(), Proton(), Xi(), Omega(), hypertriton() } ) { + for ( PID ref : + { Electron(), Muon(), Pion(), Kaon(), Proton(), Sigmap(), Sigmam(), Xi(), Omega(), hypertriton() } ) { if ( in != toString( ref ) ) continue; pid = ref; return StatusCode::SUCCESS; @@ -124,6 +137,10 @@ namespace LHCb { constexpr bool isProton() const { return validated_pid_t::Proton == m_value; } + constexpr bool isSigmap() const { return validated_pid_t::Sigmap == m_value; } + + constexpr bool isSigmam() const { return validated_pid_t::Sigmam == m_value; } + constexpr bool isXi() const { return validated_pid_t::Xi == m_value; } constexpr bool isOmega() const { return validated_pid_t::Omega == m_value; } diff --git a/Kernel/PartProp/src/TrackDefaultParticles.cpp b/Kernel/PartProp/src/TrackDefaultParticles.cpp deleted file mode 100644 index 7721503c8a6c12a0516cf4055a3293ac688e94e4..0000000000000000000000000000000000000000 --- a/Kernel/PartProp/src/TrackDefaultParticles.cpp +++ /dev/null @@ -1,13 +0,0 @@ -/*****************************************************************************\ -* (c) Copyright 2000-2018 CERN for the benefit of the LHCb Collaboration * -* * -* This software is distributed under the terms of the GNU General Public * -* Licence version 3 (GPL Version 3), copied verbatim in the file "COPYING". * -* * -* In applying this licence, CERN does not waive the privileges and immunities * -* granted to it by virtue of its status as an Intergovernmental Organization * -* or submit itself to any jurisdiction. * -\*****************************************************************************/ -#include "Kernel/TrackDefaultParticles.h" - -constexpr std::array<double, 8> LHCb::Tr::PID::s_mass;