diff --git a/algo/detectors/tof/TofReadoutConfig.cxx b/algo/detectors/tof/TofReadoutConfig.cxx index ac108fa1a986fe91d080b887de28a424b2138cca..6b8eb5048ef28a52852cf73f37a3b609515751d8 100644 --- a/algo/detectors/tof/TofReadoutConfig.cxx +++ b/algo/detectors/tof/TofReadoutConfig.cxx @@ -391,7 +391,24 @@ namespace cbm::algo case 2: iSideMap = 1; break; } } break; - + case 8: { + // Special case for two channels in 2022 + // Fallthrough to 7 for all other channels + if (2 == iFeet) { + if (7 == iStr) { + /// SM Rpc St Si Type + fviRpcChUId[uCh] = CbmTofAddress::GetUniqueAddress(0, 0, 0, 0, 8); + uCh++; + continue; + } + else if (23 == iStr) { + /// SM Rpc St Si Type + fviRpcChUId[uCh] = CbmTofAddress::GetUniqueAddress(1, 0, 0, 0, 8); + uCh++; + continue; + } + } + } case 7: { // clang-format off const int32_t iChMap[160]={ diff --git a/algo/detectors/tof/UnpackTof.cxx b/algo/detectors/tof/UnpackTof.cxx index fa12645f2ee2052f6d5299dc9011b88fc42a67d2..3875d303e156e3ab3141dff7b98f670e6ebf5914 100644 --- a/algo/detectors/tof/UnpackTof.cxx +++ b/algo/detectors/tof/UnpackTof.cxx @@ -117,32 +117,8 @@ namespace cbm::algo double messageTime = message.getMsgFullTimeD(fCurrentEpochInTs) - elinkPar.fTimeOffset; const double charge = (double) message.getGdpbHit32Tot(); //cast from uint32_t - { // weird address hack (probably should not be in final version) - std::unique_ptr<CbmTofDigi> digi(new CbmTofDigi(channelUId, messageTime, charge)); - int iSmType = 8; - int iSm = -1; - int iRpc = 0; - int iDetId = 0; - if (digi->GetType() == 6 && digi->GetRpc() == 1) { - switch ((int) (digi->GetChannel() * 2 + digi->GetSide())) { - case 62: //800 - iSm = 0; - break; - case 46: //810 - iSm = 1; - break; - default:; - } - if (iSm > -1) { - iDetId = CbmTofAddress::GetUniqueAddress(iSm, iRpc, 0, 0, iSmType); - digi->SetAddress(iDetId); - } - } - if (digi) digiVec.emplace_back(*std::move(digi)); - } //special remapping end - // --- Create output digi - //digiVec.emplace_back(channelUId, messageTime, charge); ((restore this)) + digiVec.emplace_back(channelUId, messageTime, charge); } // --------------------------------------------------------------------------