23 m_LogLikelyhoodMap.clear();
28 os <<
"Class " << this->ClassName();
30 <<
", m_LogLikelyhoodMap.size() = " << m_LogLikelyhoodMap.size()
31 <<
", prop_map.size() = " << prop_map.size()
33 for (
const auto& pair : m_LogLikelyhoodMap)
35 const auto& key = pair.first;
36 const auto&
LL = pair.second;
39 <<
"PID Candidate " << key.first <<
" from detector ID " << key.second
41 os <<
" :\t LogLikelyhood = " <<
LL << endl;
43 for (prop_map_t::const_iterator i = prop_map.begin(); i != prop_map.end(); ++i)
46 pair<const string, PROPERTY_TYPE> property_info = get_property_info(prop_id);
47 os <<
"\t" << prop_id <<
":\t" << property_info.first <<
" = \t";
48 switch (property_info.second)
51 os << get_property_int(prop_id);
54 os << get_property_uint(prop_id);
57 os << get_property_float(prop_id);
60 os <<
" unknown type ";
69 for (
const auto& pair : m_LogLikelyhoodMap)
71 if (pair.first.first == pid) LL += pair.second;
81 const auto iter = m_LogLikelyhoodMap.find(key);
83 if (iter == m_LogLikelyhoodMap.end())
84 return m_minLogLikelihood;
93 m_LogLikelyhoodMap[key] = LogLikelyhood;
98 prop_map_t::const_iterator i = prop_map.find(prop_id);
99 return i != prop_map.end();
104 if (!check_property(prop_id, type_float))
106 pair<const string, PROPERTY_TYPE> property_info = get_property_info(prop_id);
107 cout <<
PHWHERE <<
" Property " << property_info.first <<
" with id "
108 << prop_id <<
" is of type " << get_property_type(property_info.second)
109 <<
" not " << get_property_type(type_float) << endl;
112 prop_map_t::const_iterator i = prop_map.find(prop_id);
121 if (!check_property(prop_id, type_int))
123 pair<const string, PROPERTY_TYPE> property_info = get_property_info(prop_id);
124 cout <<
PHWHERE <<
" Property " << property_info.first <<
" with id "
125 << prop_id <<
" is of type " << get_property_type(property_info.second)
126 <<
" not " << get_property_type(type_int) << endl;
129 prop_map_t::const_iterator i = prop_map.find(prop_id);
139 if (!check_property(prop_id, type_uint))
141 pair<const string, PROPERTY_TYPE> property_info = get_property_info(prop_id);
142 cout <<
PHWHERE <<
" Property " << property_info.first <<
" with id "
143 << prop_id <<
" is of type " << get_property_type(property_info.second)
144 <<
" not " << get_property_type(type_uint) << endl;
147 prop_map_t::const_iterator i = prop_map.find(prop_id);
156 if (!check_property(prop_id, type_float))
158 pair<const string, PROPERTY_TYPE> property_info = get_property_info(prop_id);
159 cout <<
PHWHERE <<
" Property " << property_info.first <<
" with id "
160 << prop_id <<
" is of type " << get_property_type(property_info.second)
161 <<
" not " << get_property_type(type_float) << endl;
169 if (!check_property(prop_id, type_int))
171 pair<const string, PROPERTY_TYPE> property_info = get_property_info(prop_id);
172 cout <<
PHWHERE <<
" Property " << property_info.first <<
" with id "
173 << prop_id <<
" is of type " << get_property_type(property_info.second)
174 <<
" not " << get_property_type(type_int) << endl;
182 if (!check_property(prop_id, type_uint))
184 pair<const string, PROPERTY_TYPE> property_info = get_property_info(prop_id);
185 cout <<
PHWHERE <<
" Property " << property_info.first <<
" with id "
186 << prop_id <<
" is of type " << get_property_type(property_info.second)
187 <<
" not " << get_property_type(type_uint) << endl;
196 prop_map_t::const_iterator iter = prop_map.find(prop_id);
197 if (iter != prop_map.end())