udev-0.0.0.0: libudev bindings

Portabilityportable
Stabilityexperimental
Maintainerpxqr.sta@gmail.com
Safe HaskellNone

System.UDev.Queue

Description

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.

Synopsis

Documentation

data Queue Source

Opaque object representing the current event queue in the udev daemon.

type Seqnum = IntSource

Sequence number of event.

newQueue :: UDev -> IO QueueSource

Create a new queue.

isActive :: Queue -> IO BoolSource

Check if udev is active on the system.

isEmpty :: Queue -> IO BoolSource

Check if udev is currently processing any events.

isFinishedSource

Arguments

:: 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.

sequenceIsFinishedSource

Arguments

:: 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.