BluetoothClient

## BluetoothClient BluetoothClient — Bluetooth client object |

## Stability Level

Stable, unless otherwise indicated

## Synopsis

    #include <bluetooth-client.h>

    #define             BLUETOOTH_GET_CLIENT_CLASS          (obj)
    struct              BluetoothClient;
    BluetoothClient *   bluetooth_client_new                (void);
    GtkTreeModel *      bluetooth_client_get_model          (BluetoothClient *client);
    GtkTreeModel *      bluetooth_client_get_filter_model   (BluetoothClient *client,
                                                             GtkTreeModelFilterVisibleFunc func,
                                                             gpointer data,
                                                             GDestroyNotify destroy);
    GtkTreeModel *      bluetooth_client_get_adapter_model  (BluetoothClient *client);
    GtkTreeModel *      bluetooth_client_get_device_model   (BluetoothClient *client);
    const gchar *       bluetooth_type_to_string            (guint type);
    gboolean            bluetooth_verify_address            (const char *bdaddr);
    const char *        bluetooth_uuid_to_string            (const char *uuid);

## Description

The BluetoothClient object is used to query the state of Bluetooth devices and adapters.

## Details

### BLUETOOTH_GET_CLIENT_CLASS()

    #define             BLUETOOTH_GET_CLIENT_CLASS(obj)

### struct BluetoothClient

    struct BluetoothClient {
    	GObject parent;
    };

### bluetooth_client_new ()

    BluetoothClient *   bluetooth_client_new                (void);

Returns a reference to the BluetoothClient singleton. Use #`g_object_unref()` the object when done.

Returns : | a BluetoothClient object. [transfer full]

### bluetooth_client_get_model ()

    GtkTreeModel *      bluetooth_client_get_model          (BluetoothClient *client);

Returns an unfiltered GtkTreeModel representing the adapter and devices available on the system.

`client` : | a BluetoothClient object
Returns : | a GtkTreeModel object. [transfer full]

### bluetooth_client_get_filter_model ()

    GtkTreeModel *      bluetooth_client_get_filter_model   (BluetoothClient *client,
                                                             GtkTreeModelFilterVisibleFunc func,
                                                             gpointer data,
                                                             GDestroyNotify destroy);

Returns a GtkTreeModelFilter of devices filtered using the `func`, `data` and `destroy` arguments to pass to `gtk_tree_model_filter_set_visible_func()`.

`client` : | a BluetoothClient object
`func` : | a GtkTreeModelFilterVisibleFunc
`data` : | user data to pass to `gtk_tree_model_filter_set_visible_func()`
`destroy` : | a destroy function for `gtk_tree_model_filter_set_visible_func()`
Returns : | a GtkTreeModel object. [transfer full]

### bluetooth_client_get_adapter_model ()

    GtkTreeModel *      bluetooth_client_get_adapter_model  (BluetoothClient *client);

Returns a GtkTreeModelFilter with only adapters present.

`client` : | a BluetoothClient object
Returns : | a GtkTreeModel object. [transfer full]

### bluetooth_client_get_device_model ()

    GtkTreeModel *      bluetooth_client_get_device_model   (BluetoothClient *client);

Returns a GtkTreeModelFilter with only devices belonging to the default adapter listed. Note that the model will follow a specific adapter, and will not follow the default adapter. Also note that due to the way GtkTreeModelFilter works, you will probably want to monitor signals on the "child-model" GtkTreeModel to monitor for changes.

`client` : | a BluetoothClient object
Returns : | a GtkTreeModel object. [transfer full]

### bluetooth_type_to_string ()

    const gchar *       bluetooth_type_to_string            (guint type);

Returns the string representation of the `type` passed. Do not free the return value.

`type` : | a BluetoothType
Returns : | a string.

### bluetooth_verify_address ()

    gboolean            bluetooth_verify_address            (const char *bdaddr);

Returns whether the string is a valid Bluetooth address. This does not contact the device in any way.

`bdaddr` : | a string representing a Bluetooth address
Returns : | `TRUE` if the address is valid, `FALSE` if not.

### bluetooth_uuid_to_string ()

    const char *        bluetooth_uuid_to_string            (const char *uuid);

Returns a string representing a human-readable (but not usable for display to users) version of the `uuid`. Do not free the return value.

`uuid` : | a string representing a Bluetooth UUID
Returns : | a string.