Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:17:35

0001 #include "CentralityInfov2.h"
0002 
0003 #include <limits>
0004 
0005 void CentralityInfov2::identify(std::ostream &os) const
0006 {
0007   os << "  CentralityInfo v2: " << std::endl;
0008   os << "      Centile: " << (has_centile(CentralityInfo::PROP::mbd_NS) ? get_centile(CentralityInfo::PROP::mbd_NS) : -999.99) << std::endl;
0009   os << "      CentBin : " << (has_centrality_bin(CentralityInfo::PROP::mbd_NS) ? get_centrality_bin(CentralityInfo::PROP::mbd_NS) : -999.99) << std::endl;
0010 
0011   return;
0012 }
0013 
0014 bool CentralityInfov2::has_centrality_bin(const PROP prop_id) const
0015 {
0016   return _centrality_bin_map.find(prop_id) != _centrality_bin_map.end();
0017 }
0018 
0019 void CentralityInfov2::set_centrality_bin(const PROP prop_id, int value)
0020 {
0021   _centrality_bin_map[prop_id] = value;
0022 }
0023 
0024 int CentralityInfov2::get_centrality_bin(const PROP prop_id) const
0025 {
0026   if (!has_centrality_bin(prop_id))
0027   {
0028     return std::numeric_limits<int>::quiet_NaN();
0029   }
0030 
0031   return _centrality_bin_map.at(prop_id);
0032 }
0033 
0034 void CentralityInfov2::CopyTo(CentralityInfo *info)
0035 {
0036   CentralityInfov1::CopyTo(info);
0037   for (auto const &it : _centrality_bin_map)
0038   {
0039     info->set_centrality_bin((CentralityInfo::PROP)(it.first), it.second);
0040   }
0041 }