23 return [det2elec](
const o2::mch::Digit& digit) -> std::optional<std::pair<DsElecId, DualSampaChannelId>> {
24 auto deid = digit.getDetID();
27 auto dselocopt = det2elec(
DsDetId(deid, dsid));
28 if (!dselocopt.has_value()) {
29 LOGP(warning,
"got no location for (de,ds)=({},{})", deid, dsid);
34 return std::make_pair(dselocopt.value(), dualSampaChannelId);
MCH digit implementation.
int padDualSampaId(int dePadIndex) const
int padDualSampaChannel(int dePadIndex) const
A DsDetId is just a pair (detection element id, dual sampa id)
O2MCHMAPPINGIMPL3_EXPORT const Segmentation & segmentation(int detElemId)
std::function< std::optional< std::pair< DsElecId, int > >(const o2::mch::Digit &digit)> Digit2ElecMapper
std::function< std::optional< DsElecId >(DsDetId id)> Det2ElecMapper
From (deId,dsId) to (solarId,groupId,index)
Digit2ElecMapper createDigit2ElecMapper(Det2ElecMapper det2elec)