## GeoclueMaster GeoclueMaster — Geoclue Master API |

## Synopsis

    #define             GEOCLUE_MASTER_DBUS_SERVICE
    #define             GEOCLUE_MASTER_DBUS_PATH
    #define             GEOCLUE_MASTER_DBUS_INTERFACE
                        GeoclueMaster;
    GeoclueMaster *     geoclue_master_get_default          (void);
    GeoclueMasterClient * geoclue_master_create_client      (GeoclueMaster *master,
                                                             char **object_path,
                                                             GError **error);
    void                (*GeoclueCreateClientCallback)      (GeoclueMaster *master,
                                                             GeoclueMasterClient *client,
                                                             char *object_path,
                                                             GError *error,
                                                             gpointer userdata);
    void                geoclue_master_create_client_async  (GeoclueMaster *master,
                                                             GeoclueCreateClientCallback callback,
                                                             gpointer userdata);

## Object Hierarchy

      GObject
       +----GeoclueMaster

## Description

GeoclueMaster is part of the Geoclue public C client API. It uses D-Bus to communicate with the actual Master service.

GeoclueMaster is a singleton service, so it should not be created explicitly: instead one should use `geoclue_master_get_default()` to get a reference to it. It can be used to create a GeoclueMasterClient object.

## Details

### GEOCLUE_MASTER_DBUS_SERVICE

    #define GEOCLUE_MASTER_DBUS_SERVICE "org.freedesktop.Geoclue.Master"

### GEOCLUE_MASTER_DBUS_PATH

    #define GEOCLUE_MASTER_DBUS_PATH "/org/freedesktop/Geoclue/Master"

### GEOCLUE_MASTER_DBUS_INTERFACE

    #define GEOCLUE_MASTER_DBUS_INTERFACE "org.freedesktop.Geoclue.Master"

### GeoclueMaster

    typedef struct _GeoclueMaster GeoclueMaster;

### geoclue_master_get_default ()

    GeoclueMaster *     geoclue_master_get_default          (void);

Returns the default GeoclueMaster object. Should be unreferenced once the client is finished with it.

Returns : | A reference to the default GeoclueMaster object

### geoclue_master_create_client ()

    GeoclueMasterClient * geoclue_master_create_client      (GeoclueMaster *master,
                                                             char **object_path,
                                                             GError **error);

Creates a GeoclueMasterClient and puts the D-Bus object path in `object_path`.

`master` : | A GeoclueMaster object
`object_path` : | Pointer to returned GeoclueMasterClient D-Bus object path or `NULL`
`error` : | Pointer to returned GError or `NULL`
Returns : | A new GeoclueMasterClient or `NULL` on error.

### GeoclueCreateClientCallback ()

    void                (*GeoclueCreateClientCallback)      (GeoclueMaster *master,
                                                             GeoclueMasterClient *client,
                                                             char *object_path,
                                                             GError *error,
                                                             gpointer userdata);

`master` : |
`client` : |
`object_path` : |
`error` : |
`userdata` : |

### geoclue_master_create_client_async ()

    void                geoclue_master_create_client_async  (GeoclueMaster *master,
                                                             GeoclueCreateClientCallback callback,
                                                             gpointer userdata);

`master` : |
`callback` : |
`userdata` : |

## See Also

GeoclueMasterClient