No, No, You fool! You've Got the Wrong Lorentz Angle
On Mark III and Mark II/SLC
The Event Display Czar was responsible for
- writing all the display code
- for every detector subsystem
- every little bit of it
- I would be in the middle of writing some Calorimeter display code
- In would walk the Drift Chamber fitting expert to tell me I was using
last week's Lorentz Angle
On SLD
We wrote a modular system that allowed the Detector Subsystem Experts
to write their pieces of the display system themselves.
- Give a man a fish, he'll eat for a day
- Teach a man to fish, he'll eat for a lifetime
The Event Display Czar writes core Event Display code to
- provide the command interface
- clear structures at new event time
- and then call appropriate plug-in modules provided by
Detector Subsystem Experts
(these calls occur in the Build phase in our
block diagram)
These plug-in modules, written by the Detector Subsystem Experts,
are simple Fortran routines that
- loop over their particular Physics data of interest
(e.g., all Drift Chamber Hits)
- perform those calculations that they know best
(e.g., where the relevant track point should be, given the latest
best value of the Lorentz angle...)
- fill results into the Internal Display List
The Event Display Czar's code then takes over again to
- manage object Pick IDs
- apply drawing options (highlight, isolate, etc) based on Pick IDs
- zoom, rotate and translate
- manage windows
SLD currently has over 200 such modules.
Towards Future HEP Event Displays
Joseph Perl
7 August 1995