aboutsummaryrefslogtreecommitdiff
path: root/src/itc.h
blob: 01a0564323820cf28ac5350747d0ca777e510489 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#ifndef __LIBTUBERIA_ITC_H__
#define __LIBTUBERIA_ITC_H__

typedef struct itc itc;
typedef void (*itc_free_element)(void *element);

itc *itc_alloc(int nslots);
void itc_free(itc **ctx, itc_free_element free_element);

void *itc_retrive(itc *ctx, int timeout_ms);
int itc_inject(itc *ctx, int timeout_ms, void *element);
void itc_flush(itc *ctx);
void itc_drop(itc *ctx, itc_free_element free_element);

#endif //__LIBTUBERIA_ITC_H__