it2s-itss-facilities/src/queue.h

21 lines
425 B
C

#pragma once
#include <pthread.h>
#include <stdbool.h>
#include <stdint.h>
#define QUEUE_MAX_LEN 32
#define PACKET_MAX_LEN 8192
typedef struct queue {
uint8_t **packet;
uint16_t *packet_len;
uint8_t *destination;
uint16_t len;
pthread_mutex_t lock;
pthread_cond_t trigger;
} queue_t;
queue_t* queue_init();
int queue_add(queue_t* queue, uint8_t *packet, uint16_t packet_len, uint8_t destination);