comparison th_datastruct.h @ 627:964657ad0960

Indentation cosmetics.
author Matti Hamalainen <ccr@tnsp.org>
date Fri, 17 Jan 2020 19:14:36 +0200
parents 98c8bd80f633
children b695eb769e30
comparison
equal deleted inserted replaced
626:98c8bd80f633 627:964657ad0960
23 struct _th_llist_t *prev, *next; 23 struct _th_llist_t *prev, *next;
24 void *data; // Pointer to data payload of this node 24 void *data; // Pointer to data payload of this node
25 } th_llist_t; 25 } th_llist_t;
26 26
27 27
28 th_llist_t * th_llist_new(void *data); 28 th_llist_t * th_llist_new(void *data);
29 void th_llist_free(th_llist_t *list); 29 void th_llist_free(th_llist_t *list);
30 void th_llist_free_func_data(th_llist_t *list, void (*freefunc)(void *data)); 30 void th_llist_free_func_data(th_llist_t *list, void (*freefunc)(void *data));
31 void th_llist_free_func_node(th_llist_t *list, void (*freefunc)(th_llist_t *node)); 31 void th_llist_free_func_node(th_llist_t *list, void (*freefunc)(th_llist_t *node));
32 32
33 void th_llist_append_node(th_llist_t **list, th_llist_t *node); 33 void th_llist_append_node(th_llist_t **list, th_llist_t *node);
34 th_llist_t * th_llist_append(th_llist_t **list, void *data); 34 th_llist_t * th_llist_append(th_llist_t **list, void *data);
35 void th_llist_prepend_node(th_llist_t **list, th_llist_t *node); 35 void th_llist_prepend_node(th_llist_t **list, th_llist_t *node);
36 th_llist_t * th_llist_prepend(th_llist_t **list, void *data); 36 th_llist_t * th_llist_prepend(th_llist_t **list, void *data);
37 void th_llist_delete(th_llist_t **list, const void *data); 37 void th_llist_delete(th_llist_t **list, const void *data);
38 void th_llist_delete_node(th_llist_t **list, th_llist_t *node); 38 void th_llist_delete_node(th_llist_t **list, th_llist_t *node);
39 void th_llist_delete_node_fast(th_llist_t **list, th_llist_t *node); 39 void th_llist_delete_node_fast(th_llist_t **list, th_llist_t *node);
40 40
41 th_llist_t * th_llist_get_nth(th_llist_t *list, const size_t n); 41 th_llist_t * th_llist_get_nth(th_llist_t *list, const size_t n);
42 size_t th_llist_length(const th_llist_t *list); 42 size_t th_llist_length(const th_llist_t *list);
43 ssize_t th_llist_position(const th_llist_t *list, const th_llist_t *node); 43 ssize_t th_llist_position(const th_llist_t *list, const th_llist_t *node);
44 44
45 void th_llist_foreach(th_llist_t *list, void (*func)(th_llist_t *node, void *userdata), void *data); 45 void th_llist_foreach(th_llist_t *list, void (*func)(th_llist_t *node, void *userdata), void *data);
46 int th_llist_foreach_cond(th_llist_t *list, int (*func)(th_llist_t *node, void *userdata), void *data, th_llist_t **res); 46 int th_llist_foreach_cond(th_llist_t *list, int (*func)(th_llist_t *node, void *userdata), void *data, th_llist_t **res);
47 47
48 th_llist_t * th_llist_find(th_llist_t *list, const void *data); 48 th_llist_t * th_llist_find(th_llist_t *list, const void *data);
49 th_llist_t * th_llist_find_func(th_llist_t *list, const void *userdata, int (compare)(const void *, const void *)); 49 th_llist_t * th_llist_find_func(th_llist_t *list, const void *userdata, int (compare)(const void *, const void *));
50 50
51 51
52 /* Ringbuffer implementation 52 /* Ringbuffer implementation
53 */ 53 */
54 typedef struct 54 typedef struct
56 char **data; 56 char **data;
57 size_t n, size; 57 size_t n, size;
58 void (*deallocator)(void *data); 58 void (*deallocator)(void *data);
59 } th_ringbuf_t; 59 } th_ringbuf_t;
60 60
61 th_ringbuf_t * th_ringbuf_new(const size_t size, void (*mdeallocator)(void *)); 61
62 BOOL th_ringbuf_grow(th_ringbuf_t *buf, const size_t n); 62 th_ringbuf_t * th_ringbuf_new(const size_t size, void (*mdeallocator)(void *data));
63 void th_ringbuf_free(th_ringbuf_t *buf); 63 BOOL th_ringbuf_grow(th_ringbuf_t *buf, const size_t n);
64 void th_ringbuf_add(th_ringbuf_t *buf, void *ptr); 64 void th_ringbuf_free(th_ringbuf_t *buf);
65 void th_ringbuf_add(th_ringbuf_t *buf, void *ptr);
65 66
66 67
67 /* Growing buffers 68 /* Growing buffers
68 */ 69 */
69 #define TH_BUFGROW (32) 70 #define TH_BUFGROW (32)