DPDK  23.03.0
Typedefs
rte_swx_extern.h File Reference
#include <stdint.h>

Go to the source code of this file.

Typedefs

typedef void *(* rte_swx_extern_type_constructor_t) (const char *args)
 
typedef void(* rte_swx_extern_type_destructor_t) (void *object)
 
typedef int(* rte_swx_extern_type_member_func_t) (void *object, void *mailbox)
 
typedef int(* rte_swx_extern_func_t) (void *mailbox)
 

Detailed Description

RTE SWX Extern objects and functions

Extern object and extern function interfaces. The extern objects and extern functions provide the mechanisms to hook external functionality into the packet processing pipeline.

Definition in file rte_swx_extern.h.

Typedef Documentation

◆ rte_swx_extern_type_constructor_t

typedef void*(* rte_swx_extern_type_constructor_t) (const char *args)

Extern object constructor

Parameters
[in]argsExtern object constructor arguments. It may be NULL.
Returns
Extern object handle.

Definition at line 35 of file rte_swx_extern.h.

◆ rte_swx_extern_type_destructor_t

typedef void(* rte_swx_extern_type_destructor_t) (void *object)

Extern object destructor

Parameters
[in]objectExtern object handle.

Definition at line 44 of file rte_swx_extern.h.

◆ rte_swx_extern_type_member_func_t

typedef int(* rte_swx_extern_type_member_func_t) (void *object, void *mailbox)

Extern object member function

The mailbox is used to pass input arguments to the member function and retrieve the output results. The mailbox mechanism allows for multiple concurrent executions of the same member function for the same extern object.

Multiple invocations of the same member function may be required in order for the associated operation to complete. The completion is flagged by a return value of 1, in which case the results are available in the mailbox; in case of a return value of 0, the operation is not yet completed, so the member function must be invoked again with exactly the same object and mailbox arguments.

Parameters
[in]objectExtern object handle.
[in]mailboxExtern object mailbox.
Returns
0 when the operation is not yet completed, and 1 when the operation is completed. No other return values are allowed.

Definition at line 69 of file rte_swx_extern.h.

◆ rte_swx_extern_func_t

typedef int(* rte_swx_extern_func_t) (void *mailbox)

The mailbox is used to pass input arguments to the extern function and retrieve the output results. The mailbox mechanism allows for multiple concurrent executions of the same extern function.

Multiple invocations of the same extern function may be required in order for the associated operation to complete. The completion is flagged by a return value of 1, in which case the results are available in the mailbox; in case of a return value of 0, the operation is not yet completed, so the extern function must be invoked again with exactly the same mailbox argument.

Parameters
[in]mailboxExtern object mailbox.
Returns
0 when the operation is not yet completed, and 1 when the operation is completed. No other return values are allowed.

Definition at line 92 of file rte_swx_extern.h.