[Next]
[Previous]
[Top]
[Contents]
[Index]
EPICS Record Reference Manual
Chapter 23: Permissive
1. Introduction
The permissive record is for communication between a server and a
client. An example would be a sequence program server and an operator
interface client. By using multiple permissive records a sequence
program can communicate its current state to the client. The fields in
this record fall into the following categories:
scan parameters
client-server parameters
operator display parameters
monitor parameters
2. Scan Parameters
The permissive record has the standard fields for specifying under what
circumstances the record will be processed. These fields are listed in Scan
Fields, Chapter 2, 2. In addition, Scanning
Specification, Chapter 1, 1, explains how these fields are
used. Since the permissive record supports no direct interfaces to
hardware, its SCAN field cannot be I/O Intr
.
3. Client-server Parameters
The client and server communicate through the VAL and watchdog flag
(WFLG) fields. At initialization, both fields are set equal to 0, which
means OFF. The server sets WFLG equal to ON when it is ready to accept a
request. The client monitors WFLG and when WFLG equals 1, the
client-server action is performed (a private matter between server and
client).
When WFLG is off--when the server is busy--the client program may turn
the VAL field from OFF to ON. After the server finishes its task, it
will notice that VAL is ON and will turn both WFLG and VAL OFF and
performs the requested service.
Note that the when WFLG is ON, the client program must not turn
VAL to on.
Field | Summary | Type | DCT | Initial | Access | Modify | Rec
Proc Monitor | PP |
---|
VAL | Value Field | USHORT | No | 0 | Yes | Yes | Yes | Yes |
WFLG | Watchdog Flag | USHORT | No | 0 | Yes | Yes | Yes | Yes |
4. Operator Display Parameters
The label field (LABL) contains a string given to it that should
describe the record in further detail. In addition to the DESC field.
See Chapter
2, Fields Common to All Record Types, for more on the
record name (NAME) and description (DESC) fields.
Field | Summary | Type | DCT | Initial | Access | Modify | Rec
Proc Monitor | PP |
---|
LABL | Label | STRING [20] | Yes | Null | Yes | Yes | No | Yes |
NAME | Record Name | STRING [29] | Yes | 0 | Yes | No | No | No |
DESC | Description | STRING [29] | Yes | Null | Yes | Yes | No | No |
5. Alarm Parameters
The Permissive record has the alarm parameters common to all record
types. Alarm
Fields, Chapter 2, 3, lists other fields related to a alarms
that are common to all record types.
6. Run-time Parameters
These fields are used to trigger monitors for each field. Monitors for
the VAL field are triggered when OVAL, the old value field, does not
equal VAL. Likewise, OFLG causes monitors to be invoked for WFLG when
WFLG does not equal OLFG.
Field | Summary | Type | DCT | Initial | Access | Modify | Rec
Proc Monitor | PP |
---|
OVAL | Old Value | USHORT | No | 0 | Yes | No | No | No |
OFLG | Old Flag Value | USHORT | No | 0 | Yes | No | No | No |
7. Record Support Routines
Two record support routines are provided: process, and get_value.
process
process sets UDF to FALSE, triggers monitors on VAL and WFLG when they
change, and scans the forward link if necessary.
get_value
get_value fills in struct valueDes
so that it refers to
VAL.
-
1. - Introduction
-
-
2. - Scan Parameters
-
-
3. - Client-server Parameters
-
-
4. - Operator Display Parameters
-
-
5. - Alarm Parameters
-
-
6. - Run-time Parameters
-
-
7. - Record Support Routines
-
- process
-
- get_value
-
EPICS Record Reference Manual - 19 MAY 1998
[Next]
[Previous]
[Top]
[Contents]
[Index]
Generated with Harlequin WebMaker