Packet map and queue. More...
Data Structures | |
struct | packet_dimension |
Packet dimension. More... | |
Typedefs | |
typedef int | packet_id_t |
Packet identifier type. | |
typedef struct packet * | packet_t |
Type definition of the packet. | |
typedef packet_t * | packet_ref |
Type definition of the packet pointer. | |
typedef struct packet_dimension | packet_dimension_t |
Type definition of the packet dimension. | |
typedef packet_dimension_t * | packet_dimension_ref |
Type definition of the packet dimension pointer. | |
Functions | |
Packet management system interface | |
packet_t | pm_find (packet_id_t packet_id) |
Finds the packet mapping. | |
int | pm_add (packet_t packet) |
Adds the packet mapping. | |
int | pm_init (void) |
Initializes the packet map. | |
void | pm_destroy (void) |
Releases the packet map. | |
int | pq_add (packet_t *first, packet_t packet, size_t order, size_t metric) |
Add packet to the sorted queue. | |
packet_t | pq_find (packet_t first, size_t order) |
Finds the packet with the given order. | |
int | pq_insert_after (packet_t packet, packet_t new_packet) |
Inserts packet after the given one. | |
packet_t | pq_detach (packet_t packet) |
Detach the packet from the queue. | |
int | pq_set_order (packet_t packet, size_t order, size_t metric) |
Sets the packet order and metric attributes. | |
int | pq_get_order (packet_t packet, size_t *order, size_t *metric) |
Sets the packet order and metric attributes. | |
void | pq_destroy (packet_t first, void(*packet_release)(packet_t packet)) |
Releases the whole queue. | |
packet_t | pq_next (packet_t packet) |
Returns the next packet in the queue. | |
packet_t | pq_previous (packet_t packet) |
Returns the previous packet in the queue. |
Packet map and queue.