# HG changeset patch # User Thomas Harning Jr # Date 1196032091 18000 # Node ID 03d12148100cbdbd7a322fc96b7f25d1ac31d5fa # Parent e20f175aa1589f9a069de5fc37429af1f5c55ab0 bufferevent learned get_*_watermarks diff -r e20f175aa158 -r 03d12148100c doc/modules/luaevent.core.bufferevent.mdwn --- a/doc/modules/luaevent.core.bufferevent.mdwn Sun Nov 25 18:05:17 2007 -0500 +++ b/doc/modules/luaevent.core.bufferevent.mdwn Sun Nov 25 18:08:11 2007 -0500 @@ -42,3 +42,11 @@ * Input: `(low, high)` * `low` - When buffer is below this, the event will be fired * `high` - N/A to libevent, user app may use this + +## bufferevent:get_read_watermarks +* Output: `low, high` +* See `set_read_watermarks` + +## bufferevent:get_write_watermarks +* Output: `low, high` +* See `set_write_watermarks` diff -r e20f175aa158 -r 03d12148100c src/buffer_event.c --- a/src/buffer_event.c Sun Nov 25 18:05:17 2007 -0500 +++ b/src/buffer_event.c Sun Nov 25 18:08:11 2007 -0500 @@ -167,11 +167,31 @@ return 0; } +static int buffer_event_get_read_watermarks(lua_State* L) { + le_bufferevent* ev = buffer_event_get(L, 1); + if(!ev->ev) return 0; + + lua_pushinteger(L, ev->ev->wm_read.low); + lua_pushinteger(L, ev->ev->wm_read.high); + return 2; +} + +static int buffer_event_get_write_watermarks(lua_State* L) { + le_bufferevent* ev = buffer_event_get(L, 1); + if(!ev->ev) return 0; + + lua_pushinteger(L, ev->ev->wm_write.low); + lua_pushinteger(L, ev->ev->wm_write.high); + return 2; +} + static luaL_Reg buffer_event_funcs[] = { {"get_read", buffer_event_get_read}, {"get_write", buffer_event_get_write}, {"set_read_watermarks", buffer_event_set_read_watermarks}, {"set_write_watermarks", buffer_event_set_write_watermarks}, + {"get_read_watermarks", buffer_event_get_read_watermarks}, + {"get_write_watermarks", buffer_event_get_write_watermarks}, {NULL, NULL} };