eic / eic/epic

Add detector type_flags to subsystems

Open
#548 0 comments 0 reactions 0 assignees View on GitHub
enhancement topic: configuration topic: simulation
Dominant language
C++
Stars
31
Forks
61
Avg merge
3d 12h
Merged PRs (30d)
16

Description

**Is your feature request related to a problem? Please describe.**
DD4hep expects detectors to have a `` definition in the compact file. This can be used to determine if e.g. an event had any hits in a tracker or to disable or enable all calorimeters (though we don't actively use this in CI or production). In theory, we could use the DetectorSelector mechanism to enable only trackers instead of defining our tracking_only.xml geometry.

However, not every detector sets these flags. Only (some of the) trackers do. This is some of the output of `dumpdetector $DETECTOR_PATH/$DETECTOR_CONFIG.xml`:
```
###############################################################################
detector model : forward_insert.xml

barrel trackers : BarrelTOF, InnerMPGDBarrel, MPGDOuterBarrel, OuterSiBarrel, SagittaSiBarrel, VertexBarrel,
endcap trackers : B0Tracker, B0TrackerCompanion, BackwardMPGD, BackwardTOF, ForwardMPGD, ForwardTOF, InnerTrackerEndcapN, InnerTrackerEndcapP, MiddleTrackerEndcapN, MiddleTrackerEndcapP, OuterTrackerEndcapN, OuterTrackerEndcapP,
vertex barrel trackers :
vertex endcap trackers :
barrel calorimeters :
endcap calorimeters :
other detecors : AnalyzerMag, B0APF_BeamlineMagnet, B0ECal, B0PF_BeamlineMagnet, B0TrackerSubAssembly, B1APF_BeamlineMagnet, B1PF_BeamlineMagnet, B2PF_BeamlineMagnet, BackwardsTaggerStation, BarrelTOFSubAssembly, BeamPipe, BeamPipeB0,
DRICH, EcalBarrelImaging, EcalBarrelScFi, EcalEndcapN, EcalEndcapP, EcalEndcapPInsert, EndcapMPGDSubAssembly, EndcapTOFSubAssembly, ForwardOffMTracker_station_1, ForwardOffMTracker_station_2, ForwardOffMTracker_station_3, ForwardOffMTr
acker_station_4, ForwardRomanPot_Station_1, ForwardRomanPot_Station_2, HcalBarrel, HcalEndcapN, HcalEndcapPInsert, InnerMPGDBarrelSubAssembly, InnerSiTrackerSubAssembly, InnerTrackerSupport, LFHCAL, LumiCollimator, LumiDirectPCAL, LumiP
hotonChamber, LumiSpecCAL, LumiSpecTracker, LumiWindow, Magnet_B2AeR, Magnet_B2BeR, Magnet_Q1eR, Magnet_Q2eR, Magnets_Q3eR, MiddleSiTrackerSubAssembly, OuterBarrelMPGDSubAssembly, OuterSiTrackerSubAssembly, PFRICH, Pipe_Q1eR_to_B2BeR, P
ipe_cen_to_pos, Q0EF, Q0EF_vac, Q1APF_BeamlineMagnet, Q1BPF_BeamlineMagnet, Q1EF, Q1EF_vac, Q2PF_BeamlineMagnet, SolenoidBarrel, SolenoidEndcapN, SolenoidEndcapP, SweeperMag, VacuumMagnetElement, VertexBarrelSubAssembly, ZDC_1stSilicon,
ZDC_Crystal, ZDC_PbSci, ZDC_PbSi, ZDC_WSi, cb_DIRC,
###############################################################################
```

**Describe the solution you'd like**
Someone should go through and enable the appropriate flags.

**Describe alternatives you've considered**
This is low priority, so the alternative is to leave this alone.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.