Skip to content

Commit e6ecb47

Browse files
committed
Fix ID retrieving from Detector
1 parent f38bff4 commit e6ecb47

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

Detectors/Upgrades/ALICE3/TRK/simulation/src/Detector.cxx

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -445,8 +445,15 @@ bool Detector::ProcessHits(FairVolume* vol)
445445
if (subDetID == 1) {
446446
fMC->CurrentVolOffID(1, chip);
447447
fMC->CurrentVolOffID(2, mod);
448-
fMC->CurrentVolOffID(3, halfstave);
449-
fMC->CurrentVolOffID(4, stave);
448+
if (mGeometryTGeo->getNumberOfHalfStaves(layer) == 2) {
449+
fMC->CurrentVolOffID(3, halfstave);
450+
fMC->CurrentVolOffID(4, stave);
451+
} else if (mGeometryTGeo->getNumberOfHalfStaves(layer) == 1) {
452+
fMC->CurrentVolOffID(3, stave);
453+
} else {
454+
LOGP(fatal, "Wrong number of halfstaves for layer {}", layer);
455+
}
456+
450457
} /// if VD, for the moment the volume is the "chipID" so no need to retrieve other elments
451458

452459
int chipID = mGeometryTGeo->getChipIndex(subDetID, volume, layer, stave, halfstave, mod, chip);
@@ -486,7 +493,7 @@ void Detector::Print(FairVolume* vol, int volume, int subDetID, int layer, int s
486493
LOG(info) << "off volume name 4 " << fMC->CurrentVolOffName(4) << " stave: " << stave;
487494
LOG(info) << "SubDetector ID: " << subDetID << " Layer: " << layer << " staveinLayer: " << stave << " Chip ID: " << chipID;
488495
} else if (subDetID == 1 && mGeometryTGeo->getNumberOfHalfStaves(layer) == 1) { // turbo geometry
489-
LOG(info) << "off volume name 2 " << fMC->CurrentVolOffName(3) << " stave: " << stave;
496+
LOG(info) << "off volume name 3 " << fMC->CurrentVolOffName(3) << " stave: " << stave;
490497
LOG(info) << "SubDetector ID: " << subDetID << " Layer: " << layer << " staveinLayer: " << stave << " Chip ID: " << chipID;
491498
} else {
492499
LOG(info) << "SubDetector ID: " << subDetID << " Chip ID: " << chipID;

0 commit comments

Comments
 (0)