Guardian Programmer's Guide

Table Of Contents
Using DEFINEs
Guardian Programmer’s Guide 421922-014
7 - 33
Using DEFINEs: An Example
!------------------------------------------------------------
! Procedure to prompt the user for all attributes for a CLASS
! SORT DEFINE.
!------------------------------------------------------------
PROC SET^SORT;
BEGIN
STRING .VALUES^LIST[0:BUFSIZE - 1];
STRING .NAME[0:15];
NAME ':=' "CLASS ";
VALUES^LIST ':=' "Must be SORT" -> @S^PTR;
CALL DEFINE^ATTR(NAME,VALUES^LIST,
@S^PTR '-' @VALUES^LIST);
NAME ':=' "BLOCK ";
VALUES^LIST ':=' "Any multiple of 512 up to 30K"
-> @S^PTR;
CALL DEFINE^ATTR(NAME,VALUES^LIST,
@S^PTR '-' @VALUES^LIST);
NAME ':=' "CPU ";
VALUES^LIST ':=' "A number in the range 0 through 15"
-> @S^PTR;
CALL DEFINE^ATTR(NAME,VALUES^LIST,
@S^PTR '-' @VALUES^LIST);
NAME ':=' "CPUS ";
VALUES^LIST ':=' ["A comma-separated list of numbers ",
"in the range 0 through 15"]
-> @S^PTR;
CALL DEFINE^ATTR(NAME,VALUES^LIST,
@S^PTR '-' @VALUES^LIST);
NAME ':=' "MODE ";
VALUES^LIST ':=' "AUTOMATIC, MINSPACE or MINTIME"
-> @S^PTR;
CALL DEFINE^ATTR(NAME,VALUES^LIST,
@S^PTR '-' @VALUES^LIST);
NAME ':=' "NOTCPUS ";
VALUES^LIST ':=' ["A comma-separated list of numbers ",
"in the range 0 through 15"]
-> @S^PTR;
CALL DEFINE^ATTR(NAME,VALUES^LIST,
@S^PTR '-' @VALUES^LIST);
NAME ':=' "PRI ";
VALUES^LIST ':=' "A number in the range 1 to 199"
-> @S^PTR;
CALL DEFINE^ATTR(NAME,VALUES^LIST,
@S^PTR '-' @VALUES^LIST);