1 /* BEGIN INCLUDE FILE dm_element_id.incl.pl1 */
 2 
 3 /* DESCRIPTION:
 4 
 5         Contains the declaration of an element identifier.  Element
 6    identifiers consist of two parts, the id (number) of the control interval
 7    in which the element resides, and the index into the slot table of
 8    the element in the control interval.  The declaration of the element_id
 9    structure reflects this division of the element identifier.  The structure
10    is based on the automatic bit string element_id_string because programs
11    generally pass bit strings (element_id_string) to each other, then
12    interpret the bit string by overlaying the element_id structure ony if
13    it is necessary to access the parts of the id.  Basing element_id on
14    addr(element_id_string) instead of on a pointer removes the necessity
15    for always setting that pointer explicitly and guarantees that changes
16    made to the string or structure do not get inconsistent.
17 
18    Changes made to element_id must also be made to datum_id, declared in
19    dm_cm_datum.incl.pl1.
20 */
21 
22 /* HISTORY:
23 Written by Matthew Pierret, 04/01/82.
24 Modified:
25 09/24/84 by Matthew Pierret: Added DESCRIPTION section.
26 */
27 
28 /* format: style2,ind3,ll79 */
29 
30      dcl     element_id_string      bit (36) aligned;
31 
32      dcl     1 element_id           aligned based (addr (element_id_string)),
33                2 control_interval_id
34                                     fixed bin (24) unal unsigned,
35                2 index              fixed bin (12) unal unsigned;
36 
37 
38 /* END INCLUDE FILE dm_element_id.incl.pl1 */