### Method

# Qrtr Node wait_for_services

since: 1.0

#### Declaration [src]

    void
    qrtr_node_wait_for_services (
      QrtrNode* self,
      GArray* services,
      guint timeout_ms,
      GCancellable* cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data
    )

#### Description [src]

Asynchronously waits until all the services listed in `services` are present on the node.

The operation may fail if any of the requested services isn’t notified, or if the node is removed from the bus while waiting.

When the operation is finished `callback` will be called. You can then call `qrtr_node_wait_for_services_finish()` to get the result of the operation.

Available since: 1.0

This method completes asynchronously. Use `qrtr_node_wait_for_services_finish()` inside the `GAsyncReadyCallback` to obtain the result of the operation.

#### Parameters

`services`

  Type: An array of `guint32`

  A `GArray` of service types.

  The data is owned by the caller of the method.

`timeout_ms`

  Type: `guint`

  The timeout, in milliseconds, to wait for the the services to be exposed in the node.

`cancellable`

  Type: `GCancellable`

  A `GCancellable`, or `NULL`.

  The argument can be `NULL`.
  The data is owned by the caller of the method.

`callback`

  Type: `GAsyncReadyCallback`

  A `GAsyncReadyCallback` to call when the request is satisfied.

  The argument can be `NULL`.

`user_data`

  Type: `gpointer`

  User data to pass to `callback`.

  The argument can be `NULL`.
  The data is owned by the caller of the method.