20 #include "GaudiKernel/ListItem.h"
22 #include "Identifier/Identifier.h"
39 if (m_mode ==
"all") {
41 }
else if (m_mode ==
"indet") {
42 m_enumMode = Mode::indet;
43 }
else if (m_mode ==
"muon") {
46 m_enumMode = Mode::invalid;
49 if (m_enumMode == Mode::invalid) {
51 return StatusCode::FAILURE;
57 if (m_enumMode ==
Mode::all || m_enumMode == Mode::indet) {
58 if (!m_pixClusCor.empty()) {
64 if (!m_sctClusCor.empty()) {
70 if (!m_trt_Cor.empty()) {
77 m_pixClusCor.disable();
78 m_sctClusCor.disable();
82 ATH_CHECK(m_muonDriftCircleCor.retrieve());
85 m_muonClusterCor.disable();
86 m_muonDriftCircleCor.disable();
92 return StatusCode::SUCCESS;
105 ATH_MSG_VERBOSE (
"RIO ID prints as "<<m_idHelper->print_to_string(
id));
108 if (m_doPixel && m_idHelper->is_pixel(
id)) {
111 "No tool to correct the current Pixel hit! return nullptr");
114 return m_pixClusCor->correct(rio, trk);
117 if (m_doSCT && m_idHelper->is_sct(
id)) {
120 "No tool to correct the current SCT hit! - Giving back nullptr.");
123 return m_sctClusCor->correct(rio, trk);
126 if (m_doTRT && m_idHelper->is_trt(
id)) {
129 "No tool to correct a TRT DriftCircle! - Giving back nullptr.");
132 return m_trt_Cor->correct(rio, trk);
135 if (m_idHelper->is_mdt(
id)) {
136 if (m_enumMode == Mode::indet) {
138 "No tool to correct a MDT DriftCircle! - Giving back nullptr.");
141 return m_muonDriftCircleCor->correct(rio, trk);
144 if ((m_idHelper->is_csc(
id)) || (m_idHelper->is_rpc(
id)) ||
145 (m_idHelper->is_tgc(
id)) || (m_idHelper->is_mm(
id)) ||
146 (m_idHelper->is_stgc(
id))) {
147 if (m_enumMode == Mode::indet) {
148 ATH_MSG_WARNING(
"No tool to correct a CSC/RPC/TGC/MM/sTGC hit! - Giving back nullptr.");
151 return m_muonClusterCor->correct(rio, trk);
155 << m_idHelper->print_to_string(
id)
156 <<
". Return nil RIO_OnTrack");