![]() |
FD.io VPP
v20.09-rc2-28-g3c5414029
Vector Packet Processing
|
Callback multiplex scheme For a fully worked-out example, see .../src/vlib/main. More...
Include dependency graph for callback.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Macros | |
| #define | clib_callback_enable_disable(h, tmp, l, f, enable) |
| Add or remove a callback to the specified callback set. More... | |
| #define | clib_call_callbacks(h, ...) |
| call the specified callback set More... | |
| #define | clib_callback_is_set(h, l, f) |
| predicate function says whether the specified function is enabled More... | |
Callback multiplex scheme For a fully worked-out example, see .../src/vlib/main.
[ch] and .../src/plugins/perfmon.c
Definition in file callback.h.
| #define clib_call_callbacks | ( | h, | |
| ... | |||
| ) |
call the specified callback set
| h | the callback set |
| varargs | additional callback parameters |
Definition at line 67 of file callback.h.
| #define clib_callback_enable_disable | ( | h, | |
| tmp, | |||
| l, | |||
| f, | |||
| enable | |||
| ) |
Add or remove a callback to the specified callback set.
| h | head of the callback vector |
| tmp | vector to build result |
| l | clib_spinlock_t lock to protect the vector, may be 0 |
| f | function to add or remove |
| enable | 1 adds f to the vector, 0 removes f from the vector |
Add or remove a callback from the indicated callback vector. Caller must provide locking to prevent > 1 concurrent writer Swaps the head of the callback vector and a tmp vector in one motion, after a write barrier to ensure that the write is atomic.
Definition at line 38 of file callback.h.
| #define clib_callback_is_set | ( | h, | |
| l, | |||
| f | |||
| ) |
predicate function says whether the specified function is enabled
| h | the callback set |
| l | clib_spinlock_t lock to protect the vector, may be 0 |
| f | the function to search for |
Definition at line 87 of file callback.h.