Portability | portable |
---|---|
Stability | experimental |
Maintainer | pxqr.sta@gmail.com |
Safe Haskell | None |
The udev daemon processes events asynchronously. All events which do not have interdependencies run in parallel. This exports the current state of the event processing queue, and the current event sequence numbers from the kernel and the udev daemon.
- data Queue
- type Seqnum = Int
- newQueue :: UDev -> IO Queue
- isActive :: Queue -> IO Bool
- isEmpty :: Queue -> IO Bool
- isFinished :: Queue -> Seqnum -> IO Bool
- getPending :: Queue -> IO List
- sequenceIsFinished :: Queue -> Seqnum -> Seqnum -> IO Bool
- getKernelSeqnum :: Queue -> IO Seqnum
- getUDevSeqnum :: Queue -> IO Seqnum
Documentation
:: Queue | udev queue context |
-> Seqnum | sequence number |
-> IO Bool | if the given sequence number is currently active. |
Check if udev is currently processing a given sequence number.
getPending :: Queue -> IO ListSource
Get the first entry of the list of queued events.
:: Queue | udev queue context |
-> Seqnum | first event sequence number |
-> Seqnum | last event sequence number |
-> IO Bool | if any of the sequence numbers in the given range is currently active |
Check if udev is currently processing any events in a given sequence number range.
getKernelSeqnum :: Queue -> IO SeqnumSource
Get the current kernel event sequence number.
getUDevSeqnum :: Queue -> IO SeqnumSource
Get the last known udev event sequence number.