### Class

# GSSDP.ResourceBrowser

#### Description [src]

    class GSSDP.ResourceBrowser : GObject.Object {
      parent_instance: GObject
    }

Class handling resource discovery.

After creating a browser and activating it, the `GSSDPResourceBrowser::resource-available` and `GSSDPResourceBrowser::resource-unavailable` signals will be emitted whenever the availability of a resource matching the specified discovery target changes. A discovery request is sent out automatically when activating the browser.

If the associated `GSSDPClient` was configured to support UDA 1.1, it will also emit the `GSSDPResourceBrowser::resource-update` if any of the UDA 1.1 devices on the nework annouced its upcoming BOOTID change.

#### Ancestors

- GObject

#### Constructors

###### gssdp_resource_browser_new

Create a new resource browser for `target`.

#### Instance methods

###### gssdp_resource_browser_get_active

Get whether the browser is currently active.

###### gssdp_resource_browser_get_client

Get the GSSDPClient this resource browser is using for SSDP.

###### gssdp_resource_browser_get_mx

Get the current MX value.

###### gssdp_resource_browser_get_target

Get the current browse target.

###### gssdp_resource_browser_rescan

Begins discovery if `resource_browser` is active and no discovery is performed. Otherwise does nothing.

###### gssdp_resource_browser_set_active

(De)activates `resource_browser`.

###### gssdp_resource_browser_set_mx

Sets the used MX value of `resource_browser` to `mx`.

###### gssdp_resource_browser_set_target

Sets the browser target of `resource_browser` to `target`.

#### Properties

###### GSSDP.ResourceBrowser:active

Whether this browser is active or not.

###### GSSDP.ResourceBrowser:client

The `GSSDPClient` to use for listening to SSDP messages

###### GSSDP.ResourceBrowser:mx

The maximum number of seconds in which to request other parties to respond.

###### GSSDP.ResourceBrowser:target

The discovery target this resource browser is looking for.

#### Signals

###### GSSDP.ResourceBrowser::resource-available

The ::resource-available signal is emitted whenever a new resource has become available.

###### GSSDP.ResourceBrowser::resource-unavailable

The ::resource-unavailable signal is emitted whenever a resource is not available any more.

###### GSSDP.ResourceBrowser::resource-update

The ::resource-update signal is emitted whenever an UPnP 1.1 device is about to change it’s BOOTID.

Available since: 1.2.0

#### Class structure

    struct GSSDPResourceBrowserClass {
      GObjectClass parent_class;
      void (* resource_available) (
        GSSDPResourceBrowser* resource_browser,
        const char* usn,
        const GList* locations
      );
      void (* resource_update) (
        GSSDPResourceBrowser* resource_browser,
        const char* usn,
        guint boot_id,
        guint next_boot_id
      );
      void (* resource_unavailable) (
        GSSDPResourceBrowser* resource_browser,
        const char* usn
      );
      void (* _gssdp_reserved1) (
    void
      );
      void (* _gssdp_reserved2) (
    void
      );
      void (* _gssdp_reserved3) (
    void
      );
      void (* _gssdp_reserved4) (
    void
      );

    }

###### Class members

`parent_class` |
    GObjectClass
| No description available.
`resource_available` |
    void (* resource_available) (
        GSSDPResourceBrowser* resource_browser,
        const char* usn,
        const GList* locations
      )
| No description available.
`resource_update` |
    void (* resource_update) (
        GSSDPResourceBrowser* resource_browser,
        const char* usn,
        guint boot_id,
        guint next_boot_id
      )
| No description available.
`resource_unavailable` |
    void (* resource_unavailable) (
        GSSDPResourceBrowser* resource_browser,
        const char* usn
      )
| No description available.
`_gssdp_reserved1` |
    void (* _gssdp_reserved1) (
    void
      )
| No description available.
`_gssdp_reserved2` |
    void (* _gssdp_reserved2) (
    void
      )
| No description available.
`_gssdp_reserved3` |
    void (* _gssdp_reserved3) (
    void
      )
| No description available.
`_gssdp_reserved4` |
    void (* _gssdp_reserved4) (
    void
      )
| No description available.

#### Virtual methods

###### GSSDP.ResourceBrowserClass.resource_available

No description available.

###### GSSDP.ResourceBrowserClass.resource_unavailable

No description available.

###### GSSDP.ResourceBrowserClass.resource_update

No description available.