### Virtual Method

# Ide DeviceProvider load_async

#### Declaration

    void
    load_async (
      IdeDeviceProvider* self,
      GCancellable* cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data
    )

#### Description

Requests that the `IdeDeviceProvider` asynchronously load any known devices.

This should only be called once on an `IdeDeviceProvider`. It is an error to call this function more than once for a single `IdeDeviceProvider`.

`IdeDeviceProvider` implementations are expected to emit the `IdeDeviceProvider::device-added` signal for each device they’ve discovered. That should be done for known devices before returning from the asynchronous operation so that the device manager does not need to wait for additional devices to enter the “settled” state.

Available since: | 3.32

#### Parameters

`cancellable` | `GCancellable`
| A `GCancellable` or `NULL`.
| The argument can be `NULL`.
| The data is owned by the caller of the function.
`callback` | `GAsyncReadyCallback`
| A `GAsyncReadyCallback` to execute upon completion.
`user_data` | `gpointer`
| Closure data for `callback`.
| The argument can be `NULL`.
| The data is owned by the caller of the function.