Measure User's Guide

Creating a Custom Measurement Application
Measure User’s Guide520560-003
6-19
Checking the Status of the Subsystem or a
Measurement
structures based on the template structure CPU^DEF (not shown), which defines a
CPU counter record.
Checking the Status of the Subsystem or a
Measurement
Two procedure calls are used to check the status of the Measure subsystem and an
active measurement.
The MEASMONSTATUS procedure call returns this information about the Measure
subsystem:
The number of measurements currently active.
The names of the currently active or configured measurements. The names are
ordered by measurement number. Therefore, you can use MEASMONSTATUS to
obtain the measurement number of an active measurement.
A call to MEASCONFIGURE adds a measurement to the list of active measurements.
Therefore, a measurement that is configured but not started appears in the array
returned by MEASMONSTATUS. A measurement remains on the list of active
measurements until a call to MEASCONTROL stops it.
Example 6-4. Reading Active Counters
LITERAL MAX^CPU = 15;
STRUCT .CPU(CPU^DEF)[0:MAX^CPU]; ! counter record buffer
STRUCT .DESCRIPTOR(CPU^DESC); ! CPU descriptor
INT BYTESRET,
ERROR[0:MAX^CPU],
I;
.
.
.
! Initialize first two words of CPU descriptor.
DESCRIPTOR.TYPE := CPU^T;
DESCRIPTOR.LEN := $LEN(CPU.DESC);
! Read in CPU records.
FOR I := 0 TO MAX^CPU DO
BEGIN
DESCRIPTOR.CPU^NUMBER := I;
ERROR[I] := MEASREADACTIVE(MEASCB,MEASNUM,DESCRIPTOR,
CPU[I],$LEN(CPU^DEF),BYTESRET);
END;