38 event_data ?
"enabled" :
"disabled");
55 uword *event_data = 0;
74 for (i = 0; i <
vec_len (event_data); i++)
80 for (i = 0; i <
vec_len (event_data); i++)
84 case ODDBUF_EVENT_PERIODIC_ENABLE_DISABLE:
85 for (i = 0; i <
vec_len (event_data); i++)
103 if (omp->periodic_node_index > 0)
static void handle_timeout(oddbuf_main_t *pm, f64 now)
static f64 vlib_process_wait_for_event_or_clock(vlib_main_t *vm, f64 dt)
Suspend a cooperative multi-tasking thread Waits for an event, or for the indicated number of seconds...
static uword * vlib_process_wait_for_event(vlib_main_t *vm)
static f64 vlib_time_now(vlib_main_t *vm)
#define vec_reset_length(v)
Reset vector length to zero NULL-pointer tolerant.
static void handle_event1(oddbuf_main_t *pm, f64 now, uword event_data)
static uword vlib_process_get_events(vlib_main_t *vm, uword **data_vector)
Return the first event type which has occurred and a vector of per-event data of that type...
static void handle_event2(oddbuf_main_t *pm, f64 now, uword event_data)
u32 vlib_process_create(vlib_main_t *vm, char *name, vlib_node_function_t *f, u32 log2_n_stack_bytes)
Create a vlib process.
u8 periodic_timer_enabled
void oddbuf_create_periodic_process(oddbuf_main_t *omp)
static void handle_periodic_enable_disable(oddbuf_main_t *pm, f64 now, uword event_data)
#define clib_warning(format, args...)
static uword oddbuf_periodic_process(vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f)
#define vec_len(v)
Number of elements in vector (rvalue-only, NULL tolerant)
oddbuf_main_t oddbuf_main