# libtmux::NotificationWatch

- **Module:** libtmux
- **Package:** libtmux-cxx
- **Language:** C++
- **Kind:** class
- **Source:** https://github.com/libtmux/libtmux-cxx/blob/393d4b0ad666f18a6581f1eb281741a75a7503f0/include/libtmux/notification.hpp#L150
- **Page:** https://libtmux.org/en/cxx/latest/reference/libtmux-notificationwatch/

One independent view of outside-block events emitted after opening.

Taking from one watch never drains another watch or the Connection's legacy event queue. The retained log is shared and bounded; this watch's dropped count reports only events this watch actually missed.

A watch retains the stream state. It can drain already-buffered events after its Connection is moved or destroyed; waits then wake as a closed stream.

## Members

- `NotificationWatch` (method)
- `~NotificationWatch` (method)
- `take_notifications` (method): Everything this watch has not taken yet, returned without waiting.
- `wait_for_notifications` (method): Wait for this watch to have an event, for the stream to close, or for the deadline.
- `notification_fd` (method): Readable when this watch has something to take or its stream has closed.
- `dropped_notifications` (method): Events evicted before this watch took them, excluding events consumed by other cursors and events emitted before this watch opened.
