EM-ODP 4.4.0
Event Machine on ODP
Loading...
Searching...
No Matches
em_event.h File Reference
#include <stdbool.h>
#include <stdint.h>
#include <odp_api.h>
#include <event_machine.h>
#include <event_machine/platform/env/environment.h>
#include "em_event_inline.h"
#include "em_event_state.h"
#include "em_event_types.h"
#include "em_mem.h"
#include "em_pool_types.h"
#include "em_queue_inline.h"
#include "em_queue_types.h"
#include "misc/list.h"
Include dependency graph for em_event.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

 COMPILE_TIME_ASSERT ((uintptr_t) EM_EVENT_UNDEF==(uintptr_t) ODP_EVENT_INVALID, EM_EVENT_NOT_EQUAL_TO_ODP_EVENT)
 
 COMPILE_TIME_ASSERT (EM_TMO_TYPE_NONE==0, "EM_TMO_TYPE_NONE must be 0")
 
em_status_t event_init (void)
 
void print_event_info (void)
 
em_event_t pkt_clone_odp (odp_packet_t pkt, odp_pool_t pkt_pool, uint32_t offset, uint32_t size, bool clone_uarea, bool is_clone_part)
 
void output_queue_track (queue_elem_t *const output_q_elem)
 
void output_queue_drain (const queue_elem_t *output_q_elem)
 
void output_queue_buffering_drain (void)
 
uint32_t event_vector_tbl (em_event_t vector_event, em_event_t **event_tbl)
 
uint32_t event_vector_tbl__odp_pktvec (odp_packet_vector_t pkt_vec, em_event_t **event_tbl)
 
uint32_t event_vector_tbl__odp_evvec (odp_event_vector_t evvec, em_event_t **event_tbl)
 
em_status_t event_vector_max_size (em_event_t vector_event, uint32_t *max_size, em_escope_t escope)
 
event_prealloc_hdr_tevent_prealloc (const mpool_elem_t *pool_elem, uint32_t size)
 
event_prealloc_hdr_tlist_node_to_prealloc_hdr (list_node_t *const list_node)
 

Detailed Description

EM internal event functions

Definition in file em_event.h.

Function Documentation

◆ event_init()

em_status_t event_init ( void  )

Definition at line 119 of file em_event.c.

◆ event_prealloc()

event_prealloc_hdr_t * event_prealloc ( const mpool_elem_t pool_elem,
uint32_t  size 
)

Start-up helper for pool preallocation

Definition at line 176 of file em_event.c.

◆ event_vector_max_size()

em_status_t event_vector_max_size ( em_event_t  vector_event,
uint32_t *  max_size,
em_escope_t  escope 
)

Definition at line 465 of file em_event.c.

◆ event_vector_tbl()

uint32_t event_vector_tbl ( em_event_t  vector_event,
em_event_t **  event_tbl 
)

Definition at line 444 of file em_event.c.

◆ event_vector_tbl__odp_evvec()

uint32_t event_vector_tbl__odp_evvec ( odp_event_vector_t  evvec,
em_event_t **  event_tbl 
)

Helper to event_vector_tbl()

Definition at line 377 of file em_event.c.

◆ event_vector_tbl__odp_pktvec()

uint32_t event_vector_tbl__odp_pktvec ( odp_packet_vector_t  pkt_vec,
em_event_t **  event_tbl 
)

Helper to event_vector_tbl()

Definition at line 411 of file em_event.c.

◆ list_node_to_prealloc_hdr()

event_prealloc_hdr_t * list_node_to_prealloc_hdr ( list_node_t *const  list_node)

Definition at line 213 of file em_event.c.

◆ output_queue_buffering_drain()

void output_queue_buffering_drain ( void  )

Definition at line 352 of file em_event.c.

◆ output_queue_drain()

void output_queue_drain ( const queue_elem_t output_q_elem)

Definition at line 303 of file em_event.c.

◆ output_queue_track()

void output_queue_track ( queue_elem_t *const  output_q_elem)

Definition at line 290 of file em_event.c.

◆ pkt_clone_odp()

em_event_t pkt_clone_odp ( odp_packet_t  pkt,
odp_pool_t  pkt_pool,
uint32_t  offset,
uint32_t  size,
bool  clone_uarea,
bool  is_clone_part 
)

Helper for em_event_clone().

Clone an event originating from an external odp pkt-pool. Initialize the new cloned event as an EM event and return it.

Alloc and copy content via ODP. Also the ev_hdr in the odp-pkt user_area is copied.

Definition at line 230 of file em_event.c.

◆ print_event_info()

void print_event_info ( void  )

Definition at line 127 of file em_event.c.