API Reference Manual
1.46.0
|
ODP Queue parameters. More...
#include <queue_types.h>
Data Fields | |
odp_queue_type_t | type |
Queue type. More... | |
odp_queue_op_mode_t | enq_mode |
Enqueue mode. More... | |
odp_queue_op_mode_t | deq_mode |
Dequeue mode. More... | |
odp_schedule_param_t | sched |
Scheduler parameters. More... | |
odp_queue_order_t | order |
Original event order maintenance. More... | |
odp_nonblocking_t | nonblocking |
Non-blocking level. More... | |
void * | context |
Queue context pointer. More... | |
uint32_t | context_len |
Queue context data length. More... | |
uint32_t | size |
Queue size. More... | |
ODP Queue parameters.
Definition at line 224 of file api/spec/queue_types.h.
odp_queue_type_t odp_queue_param_t::type |
Queue type.
Valid values for other parameters in this structure depend on the queue type. The default value is ODP_QUEUE_TYPE_PLAIN.
Definition at line 229 of file api/spec/queue_types.h.
odp_queue_op_mode_t odp_queue_param_t::enq_mode |
Enqueue mode.
Default value for both queue types is ODP_QUEUE_OP_MT. Application may enable performance optimizations by defining MT_UNSAFE or DISABLED modes when applicable.
Definition at line 236 of file api/spec/queue_types.h.
odp_queue_op_mode_t odp_queue_param_t::deq_mode |
Dequeue mode.
For PLAIN queues, the default value is ODP_QUEUE_OP_MT. Application may enable performance optimizations by defining MT_UNSAFE or DISABLED modes when applicable. However, when a plain queue is input to the implementation (e.g. a queue for packet output), the parameter is ignored in queue creation and the value is ODP_QUEUE_OP_DISABLED.
For SCHED queues, the parameter is ignored in queue creation and the value is ODP_QUEUE_OP_DISABLED.
Definition at line 249 of file api/spec/queue_types.h.
odp_schedule_param_t odp_queue_param_t::sched |
Scheduler parameters.
These parameters are considered only when queue type is ODP_QUEUE_TYPE_SCHED.
Definition at line 255 of file api/spec/queue_types.h.
odp_queue_order_t odp_queue_param_t::order |
Original event order maintenance.
Keep or ignore the original event order of a source queue. The default value is ODP_QUEUE_ORDER_KEEP.
Definition at line 261 of file api/spec/queue_types.h.
odp_nonblocking_t odp_queue_param_t::nonblocking |
Non-blocking level.
Queue implementation must guarantee at least this level of block freedom for queue enqueue and dequeue/schedule operations. The default value is ODP_BLOCKING.
Definition at line 268 of file api/spec/queue_types.h.
void* odp_queue_param_t::context |
Queue context pointer.
User defined context pointer associated with the queue. The same pointer can be accessed with odp_queue_context() and odp_queue_context_set() calls. The implementation may read the pointer for prefetching the context data. Default value of the pointer is NULL.
Definition at line 277 of file api/spec/queue_types.h.
uint32_t odp_queue_param_t::context_len |
Queue context data length.
User defined context data length in bytes for prefetching. The implementation may use this value as a hint for the number of context data bytes to prefetch. Default value is zero (no hint).
Definition at line 284 of file api/spec/queue_types.h.
uint32_t odp_queue_param_t::size |
Queue size.
The queue must be able to store at minimum this many events simultaneously. The value must not exceed 'max_size' queue capability. The value of zero means implementation specific default size. The default value is 0.
Definition at line 292 of file api/spec/queue_types.h.