gtpc2m1a | C/C++ Language Support User's Guide |
This function tests the state of one or more entry control block (ECB) data
levels or data event control blocks (DECBs) and releases the core block from
any that are occupied.
Format
#include <tpfapi.h>
void crusa(int count, enum t_lvl level, ...);
or
#include <tpfapi.h>
void crusa(int count, TPF_DECB *decb, ...);
- count
- An integer containing the number of ECB data level or DECB parameters
included in the parameter list.
- level
- One of 16 possible values representing a valid ECB data level from the
enumeration type t_lvl, expressed as Dx, where x
represents the hexadecimal number of the level (0-F).
- decb
- A pointer to a DECB.
Normal Return
Void.
Error Return
Not applicable.
Programming Considerations
- Core block reference words (CBRWs) are initialized for all ECB data levels
or DECBs from which blocks were released.
- Specifying an incorrect ECB data level or DECB results in a system error
with exit.
- Specifying both ECB data levels and DECBs in the same function call
results in a system error with exit. You must specify either all DECBs
or all ECB data levels in the same function call.
- Specifying an incorrect count of parameters results in a system error with
exit.
- Applications that call this function using DECBs instead of ECB data
levels must be compiled with the C++ compiler because this function has been
overloaded.
- This function is implemented in dynamic link library (DLL)
CTAD. You must use the definition side-deck for DLL CTAD to link-edit
an application that uses this function.
Examples
The following example tests ECB data levels D0, D4, DA, and any specified
DECBs for working storage blocks, and releases the blocks if present.
#include <tpfapi.h>
·
·
·
TPF_DECB *decb1, *decb2, *decb3;
·
·
·
crusa(3,DA,D0,D4); /* Clear levels D0, D4, DA */
·
·
·
crusa(3, decb1, decb2, decb3);
/* release storage block if held by DECB*/
Related Information
See TPF Application Programming for more
information about DECBs.