35 return dcs::quadrant::solarAliasToDsIndices(alias);
37 return dcs::slat::solarAliasToDsIndices(alias);
45 case dcs::MeasurementType::HV_I:
46 case dcs::MeasurementType::HV_V:
48 case dcs::MeasurementType::LV_V_FEE_ANALOG:
49 case dcs::MeasurementType::LV_V_FEE_DIGITAL:
51 case dcs::MeasurementType::LV_V_SOLAR:
58std::set<DsIndex>
getDsIndices(
const std::set<dcs::Cathode>& cathodes)
60 std::set<DsIndex> dsIndices;
61 for (
const auto& cathode : cathodes) {
62 auto deId = cathode.deId;
63 if (!constants::isValidDetElemId(deId)) {
66 bool bending = cathode.plane == dcs::Plane::Bending;
67 bool checkPlane = cathode.plane != dcs::Plane::Both;
70 const auto& plane = bending ?
seg.bending() :
seg.nonBending();
71 for (
auto i = 0;
i < plane.nofDualSampas();
i++) {
73 dsIndices.emplace(
index);
79 dsIndices.emplace(
index);
88 std::set<dcs::Cathode> cathodes;
89 for (
auto deid : constants::deIdsForAllMCH) {
90 if (deid / 100 - 1 ==
toInt(ch)) {
92 cathodes.insert(cathode);
100 std::set<o2::mch::DsIndex> dualSampas;
101 for (
const auto& solarId : solarIds) {
102 auto dsDetIds = o2::mch::raw::getDualSampas<o2::mch::raw::ElectronicMapperGenerated>(solarId);
103 for (
const auto& dsDetId : dsDetIds) {
105 dualSampas.emplace(
index);
o2::mch::mapping::CathodeSegmentation seg
void forEachDualSampa(std::function< void(int dualSampaId)> func) const
Loop over dual sampas of this detection element.
A Segmentation lets you find pads of a detection element and then inspect those pads.
std::set< DsIndex > aliasToDsIndices(std::string_view alias)
MeasurementType aliasToMeasurementType(std::string_view alias)
int toInt(Chamber chamber)
Chamber aliasToChamber(std::string_view alias)
std::set< DsIndex > hvAliasToDsIndices(std::string_view alias)
std::optional< Chamber > chamber(int chamberId)
std::set< DsIndex > getDsIndices(const std::set< dcs::Cathode > &cathodes)
std::set< DsIndex > solarAliasToDsIndices(std::string_view alias)
std::set< DsIndex > lvAliasToDsIndices(std::string_view alias)
O2MCHMAPPINGIMPL3_EXPORT const Segmentation & segmentation(int detElemId)
DsIndex getDsIndex(const o2::mch::raw::DsDetId &dsDetId)