![]() |
[ Intro | Pubs | RunInfo | Workbook | Software | SLACVX | Search ] |
In our discussions of adding objects and adding relations in the SLD event display system, the object's parent was always some bank of physics data. When we drew a monte carlo track, its parent was a MCPART bank. When we drew a Kal cluster, its parent was a KRBCLUS bank.
But some objects have as their parent not a whole bank but a single block. For example, the "MC hits individually pickable" (the ones that can highlight one at a time) have as their parent a specific POINTS block within the MCHITS bank. For such objects, PATH and PARENT require a more detailed specification.
The draw routine for a repeat block object sets PARENT a little differently than for an ordinary display object. Recall that for an ordinary display object, parent is set to the pointer to the Jazelle bank that contains the data being represented. For example, for PHDTNUM (the routine that draws numbers at the end of tracks based on the PHTRK banks), parent is set to the relevant PHTRK pointer.
For repeat block objects, we need a way to squeeze in an additional piece of data, namely the parent's repeat block index. To do this, the draw routine adds a DSPROBJ bank. It sets DSPOBJ%(PARENT) to point to this new DSPROBJ bank. It sets DSPROBJ%(PARENT) to the parent bank. And this leaves room to store the parent's repeat block index in DSPROBJ%(RBLOCK).
Where repeat block objects are involved, RELTYPE can be one of the following two generic relations types.