## udev_queue udev_queue — access to currently active events |

## Functions

struct udev_queue * | udev_queue_ref ()
struct udev_queue * | udev_queue_unref ()
struct udev * | udev_queue_get_udev ()
struct udev_queue * | udev_queue_new ()
int | udev_queue_get_udev_is_active ()
int | udev_queue_get_queue_is_empty ()
int | udev_queue_get_seqnum_is_finished ()
int | udev_queue_get_seqnum_sequence_is_finished ()
struct udev_list_entry * | udev_queue_get_queued_list_entry ()
unsigned long long int | udev_queue_get_kernel_seqnum ()
unsigned long long int | udev_queue_get_udev_seqnum ()

## Types and Values

struct | udev_queue

## Object Hierarchy

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

## Functions

### udev_queue_ref ()

    struct udev_queue *
    udev_queue_ref (struct udev_queue *udev_queue);

Take a reference of a udev queue context.

#### Parameters

udev_queue | udev queue context |

#### Returns

the same udev queue context.

### udev_queue_unref ()

    struct udev_queue *
    udev_queue_unref (struct udev_queue *udev_queue);

Drop a reference of a udev queue context. If the refcount reaches zero, the resources of the queue context will be released.

#### Parameters

udev_queue | udev queue context |

#### Returns

NULL

### udev_queue_get_udev ()

    struct udev *
    udev_queue_get_udev (struct udev_queue *udev_queue);

Retrieve the udev library context the queue context was created with.

#### Parameters

udev_queue | udev queue context |

#### Returns

the udev library context.

### udev_queue_new ()

    struct udev_queue *
    udev_queue_new (struct udev *udev);

The initial refcount is 1, and needs to be decremented to release the resources of the udev queue context.

#### Parameters

udev | udev library context |

#### Returns

the udev queue context, or NULL on error.

### udev_queue_get_udev_is_active ()

    int
    udev_queue_get_udev_is_active (struct udev_queue *udev_queue);

Check if udev is active on the system.

#### Parameters

udev_queue | udev queue context |

#### Returns

a flag indicating if udev is active.

### udev_queue_get_queue_is_empty ()

    int
    udev_queue_get_queue_is_empty (struct udev_queue *udev_queue);

Check if udev is currently processing any events.

#### Parameters

udev_queue | udev queue context |

#### Returns

a flag indicating if udev is currently handling events.

### udev_queue_get_seqnum_is_finished ()

    int
    udev_queue_get_seqnum_is_finished (struct udev_queue *udev_queue,
                                       unsigned long long int seqnum);

Check if udev is currently processing a given sequence number.

#### Parameters

udev_queue | udev queue context |
seqnum | sequence number |

#### Returns

a flag indicating if the given sequence number is currently active.

### udev_queue_get_seqnum_sequence_is_finished ()

    int
    udev_queue_get_seqnum_sequence_is_finished
                                   (struct udev_queue *udev_queue,
                                    unsigned long long int start,
                                    unsigned long long int end);

Check if udev is currently processing any events in a given sequence number range.

#### Parameters

udev_queue | udev queue context |
start | first event sequence number |
end | last event sequence number |

#### Returns

a flag indicating if any of the sequence numbers in the given range is currently active.

### udev_queue_get_queued_list_entry ()

    struct udev_list_entry *
    udev_queue_get_queued_list_entry (struct udev_queue *udev_queue);

Get the first entry of the list of queued events.

#### Parameters

udev_queue | udev queue context |

#### Returns

a udev_list_entry.

### udev_queue_get_kernel_seqnum ()

    unsigned long long int
    udev_queue_get_kernel_seqnum (struct udev_queue *udev_queue);

Get the current kernel event sequence number.

#### Parameters

udev_queue | udev queue context |

#### Returns

the sequence number.

### udev_queue_get_udev_seqnum ()

    unsigned long long int
    udev_queue_get_udev_seqnum (struct udev_queue *udev_queue);

Get the last known udev event sequence number.

#### Parameters

udev_queue | udev queue context |

#### Returns

the sequence number.

## Types and Values

### struct udev_queue

    struct udev_queue;

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