NAIA
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
Rich.cpp
Go to the documentation of this file.
1 #include "Containers/Rich.h"
2 
3 namespace NAIA {
4 
5 const std::string RichBase::BranchName = "RichBaseData";
6 const std::string RichPlus::BranchName = "RichPlusData";
7 
8 void RichBaseData::Clear() { m_beta.clear(); }
9 void RichBaseData::Dump() const {}
10 
12  if (m_beta.size() > 0) {
13  return m_beta[0].first;
14  }
15 
17 }
18 
20  if (m_beta.size() > 0) {
21  return m_beta[0].second;
22  }
23 
24  return {};
25 }
26 
28  if (m_beta.size() > 0 && m_beta[0].second.size() > 1) {
29  return std::fabs(m_beta[0].second.at(Rich::BetaType::CIEMAT) - m_beta[0].second.at(Rich::BetaType::LIP));
30  }
31 
32  return std::numeric_limits<double>::max();
33 }
34 
35 double RichBaseData::BetaConsistencyTof(const TofBaseData &tofData) const {
36  if (m_beta.size() > 0 && ContainsKeys(m_beta[0].second, Rich::BetaType::CIEMAT) &&
38  return std::fabs(m_beta[0].second.at(Rich::BetaType::CIEMAT) - tofData.Beta.at(Tof::BetaType::BetaH));
39  }
40 
41  return std::numeric_limits<double>::max();
42 }
43 
44 void RichPlusData::Clear() { m_data.clear(); }
45 void RichPlusData::Dump() const {}
46 
47 } // namespace NAIA
void Dump() const
Dump on screen container content.
Definition: Rich.cpp:45
std::vector< RichAdditionalData > m_data
Definition: Rich.h:181
TofBetaVariable< float > Beta
Beta measurement, one for each type. See Tof::BetaType for list of types.
Definition: Tof.h:48
std::vector< std::pair< Rich::RichMeasType, RichBetaVariable< float > > > m_beta
Definition: Rich.h:93
Rich::RichMeasType GetBetaType() const
Get the Rich measurement type (NaF or Agl)
Definition: Rich.cpp:11
double BetaConsistencyTof(const TofBaseData &tofData) const
Get the estimator for beta consistency between Rich and Tof.
Definition: Rich.cpp:35
void Clear()
Clear container content.
Definition: Rich.cpp:44
Container class for base Tof info.
Definition: Tof.h:46
static const std::string BranchName
Definition: Rich.h:108
RichMeasType
Definition: Utils.h:403
double BetaConsistency() const
Get the estimator for beta consistency between CIEMAT and LIP reconstructions.
Definition: Rich.cpp:27
IHEP reconstruction.
Definition: Utils.h:342
static const std::string BranchName
Definition: Rich.h:196
RichBetaVariable< float > GetBeta() const
Get the Beta measurements.
Definition: Rich.cpp:19
void Dump() const
Dump on screen container content.
Definition: Rich.cpp:9
Rich container class description.
std::enable_if< std::is_convertible< T, Key >::value, bool >::type ContainsKeys(const std::map< Key, Value > &container, T key)
Definition: Utils.hpp:69
std::map< Rich::BetaType, T > RichBetaVariable
Definition: Rich.h:29
void Clear()
Clear container content.
Definition: Rich.cpp:8