Add detector type_flags to subsystems
- 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
Assessment
This issue has not been assessed yet.