Mercurial > hg > nnchat
comparison libnnchat.h @ 277:2cff949abbc5
Remove ringbuf implementation, it's been moved to th-libs.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Thu, 09 Jun 2011 11:39:33 +0300 |
parents | 1211b740fbda |
children | b765f15f9895 |
comparison
equal
deleted
inserted
replaced
276:1807059fb8f2 | 277:2cff949abbc5 |
---|---|
30 #define NN_CONNBUF_SIZE (64 * 1024) | 30 #define NN_CONNBUF_SIZE (64 * 1024) |
31 #define NN_NUM_BUCKETS (256) | 31 #define NN_NUM_BUCKETS (256) |
32 #define NN_DELAY_USEC (15 * 1000) | 32 #define NN_DELAY_USEC (15 * 1000) |
33 | 33 |
34 typedef struct { | 34 typedef struct { |
35 char **data; | |
36 size_t n, size; | |
37 } nn_ringbuf_t; | |
38 | |
39 | |
40 typedef struct { | |
41 ssize_t pos, len, size; | 35 ssize_t pos, len, size; |
42 char *data; | 36 char *data; |
43 } nn_editbuf_t; | 37 } nn_editbuf_t; |
44 | 38 |
45 | 39 |
46 typedef struct _nn_user_t { | 40 typedef struct _nn_user_t { |
47 char *name; | 41 char *name; |
48 time_t lastspoke, joined; | 42 time_t lastspoke, joined; |
49 struct _nn_user_t *next; | 43 struct _nn_user_t *next; |
50 } nn_user_t; | 44 } nn_user_t; |
51 | |
52 | 45 |
53 | 46 |
54 typedef struct { | 47 typedef struct { |
55 nn_user_t *buckets[NN_NUM_BUCKETS]; | 48 nn_user_t *buckets[NN_NUM_BUCKETS]; |
56 } nn_userhash_t; | 49 } nn_userhash_t; |
110 char * nn_strip_tags(const char *str); | 103 char * nn_strip_tags(const char *str); |
111 char * nn_dbldecode_str(const char *str); | 104 char * nn_dbldecode_str(const char *str); |
112 char * nn_dblencode_str(const char *str); | 105 char * nn_dblencode_str(const char *str); |
113 | 106 |
114 | 107 |
115 nn_ringbuf_t * nn_ringbuf_new(const size_t size); | |
116 void nn_ringbuf_free(nn_ringbuf_t *buf); | |
117 void nn_ringbuf_add(nn_ringbuf_t *buf, const char *str); | |
118 | |
119 | |
120 int nn_editbuf_write(nn_editbuf_t *buf, ssize_t pos, int ch); | 108 int nn_editbuf_write(nn_editbuf_t *buf, ssize_t pos, int ch); |
121 int nn_editbuf_insert(nn_editbuf_t *buf, ssize_t pos, int ch); | 109 int nn_editbuf_insert(nn_editbuf_t *buf, ssize_t pos, int ch); |
122 int nn_editbuf_delete(nn_editbuf_t *buf, ssize_t pos); | 110 int nn_editbuf_delete(nn_editbuf_t *buf, ssize_t pos); |
123 void nn_editbuf_clear(nn_editbuf_t *buf); | 111 void nn_editbuf_clear(nn_editbuf_t *buf); |
124 nn_editbuf_t * nn_editbuf_new(ssize_t n); | 112 nn_editbuf_t * nn_editbuf_new(ssize_t n); |