diff options
Diffstat (limited to 'toxav/bwcontroller.c')
-rw-r--r-- | toxav/bwcontroller.c | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/toxav/bwcontroller.c b/toxav/bwcontroller.c index 63350f17..b97135d6 100644 --- a/toxav/bwcontroller.c +++ b/toxav/bwcontroller.c | |||
@@ -40,7 +40,7 @@ | |||
40 | */ | 40 | */ |
41 | 41 | ||
42 | struct BWController_s { | 42 | struct BWController_s { |
43 | void (*mcb)(BWController *, uint32_t, float, void *, void *); | 43 | void (*mcb)(BWController *, uint32_t, float, void *); |
44 | void *mcb_data; | 44 | void *mcb_data; |
45 | 45 | ||
46 | Messenger *m; | 46 | Messenger *m; |
@@ -61,18 +61,17 @@ struct BWController_s { | |||
61 | } rcvpkt; /* To calculate average received packet */ | 61 | } rcvpkt; /* To calculate average received packet */ |
62 | }; | 62 | }; |
63 | 63 | ||
64 | int bwc_handle_data(Messenger *m, uint32_t friendnumber, const uint8_t *data, uint16_t length, void *object, | 64 | int bwc_handle_data(Messenger *m, uint32_t friendnumber, const uint8_t *data, uint16_t length, void *object); |
65 | void *userdata); | ||
66 | void send_update(BWController *bwc); | 65 | void send_update(BWController *bwc); |
67 | 66 | ||
68 | BWController *bwc_new(Messenger *m, uint32_t friendnumber, | 67 | BWController *bwc_new(Messenger *m, uint32_t friendnumber, |
69 | void (*mcb)(BWController *, uint32_t, float, void *, void *), | 68 | void (*mcb)(BWController *, uint32_t, float, void *), |
70 | void *call_data) | 69 | void *udata) |
71 | { | 70 | { |
72 | BWController *retu = calloc(sizeof(struct BWController_s), 1); | 71 | BWController *retu = calloc(sizeof(struct BWController_s), 1); |
73 | 72 | ||
74 | retu->mcb = mcb; | 73 | retu->mcb = mcb; |
75 | retu->mcb_data = call_data; | 74 | retu->mcb_data = udata; |
76 | retu->m = m; | 75 | retu->m = m; |
77 | retu->friend_number = friendnumber; | 76 | retu->friend_number = friendnumber; |
78 | retu->cycle.lsu = retu->cycle.lfu = current_time_monotonic(); | 77 | retu->cycle.lsu = retu->cycle.lfu = current_time_monotonic(); |
@@ -180,7 +179,7 @@ void send_update(BWController *bwc) | |||
180 | bwc->cycle.lsu = current_time_monotonic(); | 179 | bwc->cycle.lsu = current_time_monotonic(); |
181 | } | 180 | } |
182 | } | 181 | } |
183 | static int on_update(BWController *bwc, const struct BWCMessage *msg, void *userdata) | 182 | static int on_update(BWController *bwc, const struct BWCMessage *msg) |
184 | { | 183 | { |
185 | LOGGER_DEBUG(bwc->m->log, "%p Got update from peer", bwc); | 184 | LOGGER_DEBUG(bwc->m->log, "%p Got update from peer", bwc); |
186 | 185 | ||
@@ -200,18 +199,16 @@ static int on_update(BWController *bwc, const struct BWCMessage *msg, void *user | |||
200 | if (lost && bwc->mcb) { | 199 | if (lost && bwc->mcb) { |
201 | bwc->mcb(bwc, bwc->friend_number, | 200 | bwc->mcb(bwc, bwc->friend_number, |
202 | ((float) lost / (recv + lost)), | 201 | ((float) lost / (recv + lost)), |
203 | bwc->mcb_data, | 202 | bwc->mcb_data); |
204 | userdata); | ||
205 | } | 203 | } |
206 | 204 | ||
207 | return 0; | 205 | return 0; |
208 | } | 206 | } |
209 | int bwc_handle_data(Messenger *m, uint32_t friendnumber, const uint8_t *data, uint16_t length, void *object, | 207 | int bwc_handle_data(Messenger *m, uint32_t friendnumber, const uint8_t *data, uint16_t length, void *object) |
210 | void *userdata) | ||
211 | { | 208 | { |
212 | if (length - 1 != sizeof(struct BWCMessage)) { | 209 | if (length - 1 != sizeof(struct BWCMessage)) { |
213 | return -1; | 210 | return -1; |
214 | } | 211 | } |
215 | 212 | ||
216 | return on_update(object, (const struct BWCMessage *)(data + 1), userdata); | 213 | return on_update(object, (const struct BWCMessage *)(data + 1)); |
217 | } | 214 | } |