mirror of
https://github.com/CPunch/Laika.git
synced 2026-02-02 14:40:03 +00:00
Added panel-specific packets
- laikaP_iterList for iterating over pollList - laikaS_consumeRead for throwing away padding or otherwise unneeded bytes in the socket's inbuffer - incremented minor version
This commit is contained in:
@@ -191,3 +191,26 @@ struct sLaika_pollEvent *laikaP_poll(struct sLaika_pollList *pList, int timeout,
|
||||
/* return revents array */
|
||||
return pList->revents;
|
||||
}
|
||||
|
||||
struct sWrapperData {
|
||||
tLaika_pollIter iter;
|
||||
void *uData;
|
||||
};
|
||||
|
||||
/* wrapper iterator */
|
||||
bool iterWrapper(const void *rawItem, void *uData) {
|
||||
struct sWrapperData *data = (struct sWrapperData*)uData;
|
||||
tLaika_hashMapElem *item = (tLaika_hashMapElem*)rawItem;
|
||||
return data->iter(item->sock, data->uData);
|
||||
}
|
||||
|
||||
void laikaP_iterList(struct sLaika_pollList *pList, tLaika_pollIter iter, void *uData) {
|
||||
struct sWrapperData wrapper;
|
||||
wrapper.iter = iter;
|
||||
wrapper.uData = uData;
|
||||
|
||||
/* iterate over hashmap calling our iterWrapper, pass the *real* iterator to
|
||||
itemWrapper so that it can call it. probably a better way to do this
|
||||
but w/e lol */
|
||||
hashmap_scan(pList->sockets, iterWrapper, &wrapper);
|
||||
}
|
||||
Reference in New Issue
Block a user