File indexing completed on 2025-08-06 08:17:45
0001 #include "TowerRhov1.h"
0002
0003 #include <cstdlib>
0004
0005 TowerRhov1::TowerRhov1()
0006 : m_tower_rho(0)
0007 , m_tower_sigma(0)
0008 , m_rho_method_type(TowerRho::Method::NONE)
0009 {
0010 }
0011
0012 void TowerRhov1::identify(std::ostream& os) const
0013 {
0014 os << "TowerRhov1: " << std::endl;
0015 os << "\t method: " << get_method_string(m_rho_method_type) << std::endl;
0016 os << "\trho = " << m_tower_rho << ", sigma(rho) = " << m_tower_sigma << std::endl;
0017 os << "===============================";
0018 return;
0019 }
0020
0021 void TowerRhov1::set_method(TowerRho::Method method)
0022 {
0023 get_method_string(method);
0024 m_rho_method_type = method;
0025 return;
0026 }
0027
0028 std::string TowerRhov1::get_method_string(TowerRho::Method method)
0029 {
0030 switch (method)
0031 {
0032 case TowerRho::Method::NONE:
0033 return "NONE";
0034 break;
0035 case TowerRho::Method::AREA:
0036 return "AREA";
0037 break;
0038 case TowerRho::Method::MULT:
0039 return "MULT";
0040 break;
0041 default:
0042 std::cout << "ERROR: rho method not recognized" << std::endl;
0043 std::cout << "rho method must be 1 (area) or 2 (mult)" << std::endl;
0044 exit(-1);
0045 }
0046 return "NONE";
0047 }