Ticket #4759 (assigned)
ParameterMap: Speed up the way masked detectors are recorded (?)
Reported by: | Janik Zikovsky | Owned by: | Anyone |
---|---|---|---|
Priority: | minor | Milestone: | Backlog |
Component: | Framework | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Tester: |
Description (last modified by Janik Zikovsky) (diff)
Instead of using a "masked" string with key = detector pointer, I suggest that we record masked detectors in the ParameterMap with a simple map:
- Key = detector ID (not the component ID)
- Value = true if Masked, false if not masked.
Or, even faster would be a vector, which can be accessed in O(1) time instead of O(log(N)) time.
A third option is to hold a std::set<> of masked detector IDs. Looking them up will be very fast when few detectors are masked, and at worst O(log(N)) if most detectors are masked. It is also safer than the vector (no going out of bounds).
This should speed up instrument view (and others) significantly. Plotting TOPAZ takes 1000 msec + each time it redraws. 800 msec or so are spent looking for masked detectors.
Change History
comment:2 Changed 8 years ago by Nick Draper
- Milestone changed from Release 2.1 to Release 2.2
Moved at end of release 2.1
comment:4 Changed 8 years ago by Nick Draper
- Milestone changed from Release 2.3 to Release 2.4
Moved to release 2.4
comment:5 Changed 8 years ago by Peter Peterson
- Owner changed from Janik Zikovsky to Anyone
- Milestone changed from Release 2.4 to Release 2.5
comment:8 Changed 7 years ago by Nick Draper
- Milestone changed from Release 2.6 to Backlog
Moved to the Backlog after the code freeze for R2.6
comment:9 Changed 7 years ago by Nick Draper
- Status changed from new to assigned
bulk move to assigned at the into of the triage step
comment:10 Changed 5 years ago by Stuart Campbell
This ticket has been transferred to github issue 5606