Distributed Systems Network Management (DSNM) Subsystem Interface Development Guide
I Process Development Process
Distributed Systems Network Management (DSNM) Subsystem Interface Development
Guide—109759 3-17
Defining the Command Context Space
Accessing the Command Context Space
_THREAD^CONTEXT^ADDRESS is an INT(32) global variable in which the frame
places the extended address of the command context space before each thread dispatch.
The thread can access the command context space with a data definition similar to the
following example:
INT.EXT cx (command^context^def) = _THREAD^CONTEXT^ADDRESS;
where
command^context^def
is a user-defined structure that describes the command context space. The
definition of command^context^def is provided in the next subsection,
“Defining the Command Context Space.”
Defining the Command Context Space
The command context space contains both frame-defined areas and a user-defined area.
Your _STARTUP procedure provides the frame with the length of the command context
area.
Generating the Frame-Defined Variables:
_COMMAND^CONTEXT^HEADER
_COMMAND^CONTEXT^HEADER is a define that is required as part of the
command context structure definition. It declares the frame-defined input, output, and
control context areas.
Defining the User Area
You define the rest of the command context space according to your needs.
The following example declares a command context structure containing three user-
defined lists, a CIID structure (see “CI Communications,” later in this section), and
several work variables:
STRUCT COMMAND^CONTEXT^DEF (*);
BEGIN
_COMMAND^CONTEXT^HEADER;
_LIST (objlist1);
_LIST (objlist2);
_LIST (objlist3);
_CI^ID (subsys^mgr);
INT work1[0:9];
STRING work2;
INT(32) work3;
.
.
END;