Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add detector type_flags to subsystems #548

Open
wdconinc opened this issue Oct 6, 2023 · 0 comments
Open

Add detector type_flags to subsystems #548

wdconinc opened this issue Oct 6, 2023 · 0 comments

Comments

@wdconinc
Copy link
Contributor

wdconinc commented Oct 6, 2023

Is your feature request related to a problem? Please describe.
DD4hep expects detectors to have a <type_flags> 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
<snip>
  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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

No branches or pull requests

2 participants