sl@0: /** @file ../include/sys/event.h sl@0: @internalComponent sl@0: */ sl@0: sl@0: /** @def EVFILT_READ sl@0: sl@0: They are some pre-defined system filter sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def EVFILT_WRITE sl@0: sl@0: They are some pre-defined system filter sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: /** @def EVFILT_AIO sl@0: sl@0: attached to aio requests sl@0: sl@0: @publishedAll sl@0: @released sl@0: */ sl@0: sl@0: sl@0: sl@0: /** @def EVFILT_VNODE sl@0: sl@0: attached to vnodes sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def EVFILT_PROC sl@0: sl@0: attached to struct proc sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def EVFILT_SIGNAL sl@0: sl@0: attached to struct proc sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: /** @def EVFILT_TIMER sl@0: sl@0: timers sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def EVFILT_NETDEV sl@0: sl@0: network devices sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: /** @def EVFILT_FS sl@0: sl@0: filesystem events sl@0: sl@0: @publishedAll sl@0: @released sl@0: */ sl@0: sl@0: /** @struct kevent sl@0: sl@0: Contains the following members, sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: /** @var kevent::ident sl@0: identifier for this event sl@0: */ sl@0: sl@0: /** @var kevent::filter sl@0: filter for event sl@0: */ sl@0: sl@0: /** @var kevent::flags sl@0: action flags for kqueue sl@0: */ sl@0: sl@0: /** @var kevent::fflags sl@0: filter flag value sl@0: */ sl@0: sl@0: /** @var kevent::data sl@0: filter data value sl@0: */ sl@0: sl@0: /** @var kevent::udata sl@0: opaque user data identifier sl@0: */ sl@0: sl@0: sl@0: /** @def EV_SET(kevp_, a, b, c, d, e, f) sl@0: sl@0: The EV_SET() macro is provided for ease of initializing a kevent structure. sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def EV_ADD sl@0: sl@0: It is an action.. add event to kq (implies enable). sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: /** @def EV_DELETE sl@0: sl@0: It is an action.. delete event from kq sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def EV_ENABLE sl@0: sl@0: It is an action.. enable event. sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def EV_DISABLE sl@0: sl@0: It is an action.. disable event (not reported) sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def EV_ONESHOT sl@0: sl@0: flags supported. only report one occurrence. sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: /** @def EV_CLEAR sl@0: sl@0: flags supported. clear event state after reporting . sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def EV_EOF sl@0: sl@0: returned value.EOF detected. sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: /** @def EV_ERROR sl@0: sl@0: returned value. error, data contains errno. sl@0: sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def EV_SYSFLAGS sl@0: sl@0: flags supported. reserved by system. sl@0: sl@0: @publishedAll sl@0: @released sl@0: */ sl@0: sl@0: sl@0: /** @def EV_FLAG1 sl@0: sl@0: flags supported. filter-specific flag. sl@0: sl@0: @publishedAll sl@0: @released sl@0: */ sl@0: sl@0: sl@0: /** @struct knote sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: /** @var knote::kn_link sl@0: for kq sl@0: */ sl@0: sl@0: /** @var knote::kn_selnext sl@0: for struct selinfo sl@0: */ sl@0: sl@0: /** @var knote::kn_knlist sl@0: f_attach populated sl@0: */ sl@0: sl@0: /** @var knote::kn_tqe sl@0: identifier for this event sl@0: */ sl@0: sl@0: /** @var knote::kn_kq sl@0: which queue we are on sl@0: */ sl@0: sl@0: /** @var knote::kn_kevent sl@0: identifier for this event sl@0: */ sl@0: sl@0: /** @var knote::kn_status sl@0: protected by kq lock sl@0: */ sl@0: sl@0: /** @var knote::kn_sfflags sl@0: saved filter flags sl@0: */ sl@0: sl@0: /** @var knote::kn_sdata sl@0: saved data field sl@0: */ sl@0: sl@0: /** @var knote::kn_fop sl@0: identifier for this event sl@0: */ sl@0: sl@0: /** @var knote::kn_hook sl@0: identifier for this event sl@0: */ sl@0: sl@0: /** @def NOTE_LOWAT sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def NOTE_DELETE sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def NOTE_WRITE sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: /** @def NOTE_EXTEND sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def NOTE_ATTRIB sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def NOTE_LINK sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def NOTE_RENAME sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: /** @def NOTE_REVOKE sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def NOTE_EXIT sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def NOTE_FORK sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def NOTE_EXEC sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def NOTE_TRACK sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: /** @def NOTE_TRACKERR sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: /** @def NOTE_CHILD sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def NOTE_PCTRLMASK sl@0: @publishedAll sl@0: @released sl@0: */ sl@0: sl@0: /** @def NOTE_PDATAMASK sl@0: @publishedAll sl@0: @released sl@0: */ sl@0: sl@0: sl@0: /** @def NOTE_LINKUP sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def NOTE_LINKDOWN sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: /** @def NOTE_LINKINV sl@0: @publishedAll sl@0: @externallyDefinedApi sl@0: */ sl@0: sl@0: sl@0: