Lines Matching refs:eventLoop

68     aeEventLoop *eventLoop;  in aeCreateEventLoop()  local
71 if ((eventLoop = zmalloc(sizeof(*eventLoop))) == NULL) goto err; in aeCreateEventLoop()
72 eventLoop->events = zmalloc(sizeof(aeFileEvent)*setsize); in aeCreateEventLoop()
73 eventLoop->fired = zmalloc(sizeof(aeFiredEvent)*setsize); in aeCreateEventLoop()
74 if (eventLoop->events == NULL || eventLoop->fired == NULL) goto err; in aeCreateEventLoop()
75 eventLoop->setsize = setsize; in aeCreateEventLoop()
76 eventLoop->lastTime = time(NULL); in aeCreateEventLoop()
77 eventLoop->timeEventHead = NULL; in aeCreateEventLoop()
78 eventLoop->timeEventNextId = 0; in aeCreateEventLoop()
79 eventLoop->stop = 0; in aeCreateEventLoop()
80 eventLoop->maxfd = -1; in aeCreateEventLoop()
81 eventLoop->beforesleep = NULL; in aeCreateEventLoop()
82 eventLoop->aftersleep = NULL; in aeCreateEventLoop()
83 if (aeApiCreate(eventLoop) == -1) goto err; in aeCreateEventLoop()
87 eventLoop->events[i].mask = AE_NONE; in aeCreateEventLoop()
88 return eventLoop; in aeCreateEventLoop()
91 if (eventLoop) { in aeCreateEventLoop()
92 zfree(eventLoop->events); in aeCreateEventLoop()
93 zfree(eventLoop->fired); in aeCreateEventLoop()
94 zfree(eventLoop); in aeCreateEventLoop()
100 int aeGetSetSize(aeEventLoop *eventLoop) { in aeGetSetSize() argument
101 return eventLoop->setsize; in aeGetSetSize()
111 int aeResizeSetSize(aeEventLoop *eventLoop, int setsize) { in aeResizeSetSize() argument
114 if (setsize == eventLoop->setsize) return AE_OK; in aeResizeSetSize()
115 if (eventLoop->maxfd >= setsize) return AE_ERR; in aeResizeSetSize()
116 if (aeApiResize(eventLoop,setsize) == -1) return AE_ERR; in aeResizeSetSize()
118 eventLoop->events = zrealloc(eventLoop->events,sizeof(aeFileEvent)*setsize); in aeResizeSetSize()
119 eventLoop->fired = zrealloc(eventLoop->fired,sizeof(aeFiredEvent)*setsize); in aeResizeSetSize()
120 eventLoop->setsize = setsize; in aeResizeSetSize()
124 for (i = eventLoop->maxfd+1; i < setsize; i++) in aeResizeSetSize()
125 eventLoop->events[i].mask = AE_NONE; in aeResizeSetSize()
129 void aeDeleteEventLoop(aeEventLoop *eventLoop) { in aeDeleteEventLoop() argument
130 aeApiFree(eventLoop); in aeDeleteEventLoop()
131 zfree(eventLoop->events); in aeDeleteEventLoop()
132 zfree(eventLoop->fired); in aeDeleteEventLoop()
133 zfree(eventLoop); in aeDeleteEventLoop()
136 void aeStop(aeEventLoop *eventLoop) { in aeStop() argument
137 eventLoop->stop = 1; in aeStop()
140 int aeCreateFileEvent(aeEventLoop *eventLoop, int fd, int mask, in aeCreateFileEvent() argument
143 if (fd >= eventLoop->setsize) { in aeCreateFileEvent()
147 aeFileEvent *fe = &eventLoop->events[fd]; in aeCreateFileEvent()
149 if (aeApiAddEvent(eventLoop, fd, mask) == -1) in aeCreateFileEvent()
155 if (fd > eventLoop->maxfd) in aeCreateFileEvent()
156 eventLoop->maxfd = fd; in aeCreateFileEvent()
160 void aeDeleteFileEvent(aeEventLoop *eventLoop, int fd, int mask) in aeDeleteFileEvent() argument
162 if (fd >= eventLoop->setsize) return; in aeDeleteFileEvent()
163 aeFileEvent *fe = &eventLoop->events[fd]; in aeDeleteFileEvent()
170 aeApiDelEvent(eventLoop, fd, mask); in aeDeleteFileEvent()
172 if (fd == eventLoop->maxfd && fe->mask == AE_NONE) { in aeDeleteFileEvent()
176 for (j = eventLoop->maxfd-1; j >= 0; j--) in aeDeleteFileEvent()
177 if (eventLoop->events[j].mask != AE_NONE) break; in aeDeleteFileEvent()
178 eventLoop->maxfd = j; in aeDeleteFileEvent()
182 int aeGetFileEvents(aeEventLoop *eventLoop, int fd) { in aeGetFileEvents() argument
183 if (fd >= eventLoop->setsize) return 0; in aeGetFileEvents()
184 aeFileEvent *fe = &eventLoop->events[fd]; in aeGetFileEvents()
216 long long aeCreateTimeEvent(aeEventLoop *eventLoop, long long milliseconds, in aeCreateTimeEvent() argument
220 long long id = eventLoop->timeEventNextId++; in aeCreateTimeEvent()
231 te->next = eventLoop->timeEventHead; in aeCreateTimeEvent()
234 eventLoop->timeEventHead = te; in aeCreateTimeEvent()
238 int aeDeleteTimeEvent(aeEventLoop *eventLoop, long long id) in aeDeleteTimeEvent() argument
240 aeTimeEvent *te = eventLoop->timeEventHead; in aeDeleteTimeEvent()
262 static aeTimeEvent *aeSearchNearestTimer(aeEventLoop *eventLoop) in aeSearchNearestTimer() argument
264 aeTimeEvent *te = eventLoop->timeEventHead; in aeSearchNearestTimer()
278 static int processTimeEvents(aeEventLoop *eventLoop) { in processTimeEvents() argument
292 if (now < eventLoop->lastTime) { in processTimeEvents()
293 te = eventLoop->timeEventHead; in processTimeEvents()
299 eventLoop->lastTime = now; in processTimeEvents()
301 te = eventLoop->timeEventHead; in processTimeEvents()
302 maxId = eventLoop->timeEventNextId-1; in processTimeEvents()
313 eventLoop->timeEventHead = te->next; in processTimeEvents()
317 te->finalizerProc(eventLoop, te->clientData); in processTimeEvents()
339 retval = te->timeProc(eventLoop, id, te->clientData); in processTimeEvents()
366 int aeProcessEvents(aeEventLoop *eventLoop, int flags) in aeProcessEvents() argument
377 if (eventLoop->maxfd != -1 || in aeProcessEvents()
384 shortest = aeSearchNearestTimer(eventLoop); in aeProcessEvents()
419 numevents = aeApiPoll(eventLoop, tvp); in aeProcessEvents()
422 if (eventLoop->aftersleep != NULL && flags & AE_CALL_AFTER_SLEEP) in aeProcessEvents()
423 eventLoop->aftersleep(eventLoop); in aeProcessEvents()
426 aeFileEvent *fe = &eventLoop->events[eventLoop->fired[j].fd]; in aeProcessEvents()
427 int mask = eventLoop->fired[j].mask; in aeProcessEvents()
428 int fd = eventLoop->fired[j].fd; in aeProcessEvents()
451 fe->rfileProc(eventLoop,fd,fe->clientData,mask); in aeProcessEvents()
458 fe->wfileProc(eventLoop,fd,fe->clientData,mask); in aeProcessEvents()
467 fe->rfileProc(eventLoop,fd,fe->clientData,mask); in aeProcessEvents()
477 processed += processTimeEvents(eventLoop); in aeProcessEvents()
504 void aeMain(aeEventLoop *eventLoop) { in aeMain() argument
505 if (eventLoop->beforesleep != NULL) in aeMain()
506 eventLoop->beforesleep(eventLoop); in aeMain()
507 aeProcessEvents(eventLoop, AE_ALL_EVENTS|AE_CALL_AFTER_SLEEP); in aeMain()
514 void aeSetBeforeSleepProc(aeEventLoop *eventLoop, aeBeforeSleepProc *beforesleep) { in aeSetBeforeSleepProc() argument
515 eventLoop->beforesleep = beforesleep; in aeSetBeforeSleepProc()
518 void aeSetAfterSleepProc(aeEventLoop *eventLoop, aeBeforeSleepProc *aftersleep) { in aeSetAfterSleepProc() argument
519 eventLoop->aftersleep = aftersleep; in aeSetAfterSleepProc()