[Next]
[Previous]
[Top]
[Contents]
[Index]
EPICS Record Reference Manual
Chapter 15: Fanout
1. Introduction
The fanout record uses several forward processing links to force
multiple passive records to scan. When more than one record needs to be
scanned as the result of a record being processed, the forward link of
that record can specify a fanout record. The fanout record can specify
up to six other records to process. When more than six are needed, one
of the links in the fanout record can point to another fanout record.
NOTE: Fanout records only propagate
processing, not data. The dfanout or data fanout record can, on the
other hand, send data to up to eight other records. |
The fanout record's fields fall into the following categories:
scan parameters
operator display parameters
run-time parameters.
2. Scan Parameters
The forward link fields of the fanout record (LINK1-LINK6) specify
records to be scanned. The records to be processed must specify Passive
in their SCAN fields; otherwise the forward link to it will not cause
it to process. Also when specifying database links for the fanout
record, the user needs only to specify the record name. As no value is
being sent or retrieved, the field name is optional.
The SELM, SELN, and SELL fields specify the order of processing for the
forward links. The select mechanism field (SELM) has three choices--All
,
Specified
, or Mask
. How these affect which
links to process and in which order is as follows:
- All
- Links are processed in numerical order--LNK1,
LNK2, etc.
- Specified
- SELN is used as the specifier of
which link to process. For instance, if SELN=1, then LNK1 will be
processed.
- Mask
- The number in SELN is used as follows:
if SELN=1, LNK1 is processed. If SELN=2, LNK1 and LNK2 are processed.
If SELN=3, then LNK1, LNK2, and LNK3 are processed, etc.
SELN reads its value from SELL. SELL can be a constant, a database link,
or a channel access link. If a constant, SELN is initialized with the
constant value and can be changed via dbPuts. For database/channel
access links, SELN is retrieved from SELL each time the record is
processed and can also be changed via dbPuts.
The Fanout record also has the standard scanning fields common to all
records. These fields are listed in Scan
Fields, Chapter 2, 2. In addition, Scanning
Specification, Chapter 1, 1, explains in more detail how
forward links and the scanning algorithms work.
Field | Summary | Type | DCT | Initial | Access | Modify | Rec
Proc Monitor | PP |
---|
LNK1 | Forward Links | FWDLINK | Yes | 0 | No | No | N/A | No |
LNK2 | Forward Links | FWDLINK | Yes | 0 | No | No | N/A | No |
LNK3 | Forward Links | FWDLINK | Yes | 0 | No | No | N/A | No |
LNK4 | Forward Links | FWDLINK | Yes | 0 | No | No | N/A | No |
LNK5 | Forward Links | FWDLINK | Yes | 0 | No | No | N/A | No |
LNK6 | Forward Links | FWDLINK | Yes | 0 | No | No | N/A | No |
SELM | Select Mechanism: | RECCHOICE | Yes | 0 | Yes | Yes | No | No |
SELN | Link Selection Algorithm | USHORT | No | 1 | Yes | Yes | No | No |
SELL | Link Selection Location | INLINK | Yes | 0 | No | No | N/A | No |
3. Operator Display Parameters
These parameters are used to present meaningful data to the operator.
See Chapter
2, Fields Common to All Record Types, for more on these
fields.
Field | Summary | Type | DCT | Initial | Access | Modify | Rec
Proc Monitor | PP |
---|
NAME | Record Name | STRING [29] | Yes | 0 | Yes | No | No | |
DESC | Description | STRING [29] | Yes | Null | Yes | Yes | No | No |
4. Alarm Parameters
The Fanout 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.
5. Run-time Parameters
The VAL field is used only so that dbNameAddr succeeds when no field
name is specified. Otherwise, it has no significance.
Field | Summary | Type | DCT | Initial | Access | Modify | Rec
Proc Monitor | PP |
---|
VAL | Value Field | LONG | No | 0 | Yes | Yes | No | Yes |
6. Record Support Routines
init_record
This routine initializes SELN with the value of SELL, if SELL type is
CONSTANT link, or creates a channel access link if SELL type is PV_LINK.
process
See next section.
7. Record Processing
Routine process implements the following algorithm:
- 1. PACT is set to TRUE.
- 2. The link selection SELN is fetched.
- 3. Depending on the selection mechanism, the
link selection forward links are processed. and UDF is set to FALSE.
- 4. Check to see if monitors should be invoked.
- Alarm monitors are invoked if the alarm status or severity has
changed.
- NSEV and NSTA are reset to 0.
- 5. Scan forward link if necessary, set PACT FALSE,
and return.
-
1. - Introduction
-
-
2. - Scan Parameters
-
-
3. - Operator Display Parameters
-
-
4. - Alarm Parameters
-
-
5. - Run-time Parameters
-
-
6. - Record Support Routines
-
- init_record
-
- process
-
-
7. - Record Processing
-
EPICS Record Reference Manual - 19 MAY 1998
[Next]
[Previous]
[Top]
[Contents]
[Index]
Generated with Harlequin WebMaker