DMAPMdnsBrowser

DMAPMdnsBrowser

Synopsis

enum                DMAPMdnsBrowserServiceType;
enum                DMAPMdnsBrowserTransportProtocol;
enum                DMAPMdnsBrowserError;
struct              DMAPMdnsBrowserService;
struct              DMAPMdnsBrowserClass;
#define             DMAP_MDNS_BROWSER_ERROR
GQuark              dmap_mdns_browser_error_quark       (void);
DMAPMdnsBrowser *   dmap_mdns_browser_new               (DMAPMdnsBrowserServiceType type);
gboolean            dmap_mdns_browser_start             (DMAPMdnsBrowser *browser,
                                                         GError **error);
gboolean            dmap_mdns_browser_stop              (DMAPMdnsBrowser *browser,
                                                         GError **error);
const GSList *      dmap_mdns_browser_get_services      (DMAPMdnsBrowser *browser);
DMAPMdnsBrowserServiceType dmap_mdns_browser_get_service_type
                                                        (DMAPMdnsBrowser *browser);

Object Hierarchy

  GEnum
   +----DMAPMdnsBrowserServiceType
  GEnum
   +----DMAPMdnsBrowserTransportProtocol
  GEnum
   +----DMAPMdnsBrowserError

Description

Details

enum DMAPMdnsBrowserServiceType

typedef enum {
	DMAP_MDNS_BROWSER_SERVICE_TYPE_INVALID = 0,
	DMAP_MDNS_BROWSER_SERVICE_TYPE_DAAP,
	DMAP_MDNS_BROWSER_SERVICE_TYPE_DPAP,
	DMAP_MDNS_BROWSER_SERVICE_TYPE_DACP,
	DMAP_MDNS_BROWSER_SERVICE_TYPE_RAOP,
	DMAP_MDNS_BROWSER_SERVICE_TYPE_LAST = DMAP_MDNS_BROWSER_SERVICE_TYPE_RAOP
} DMAPMdnsBrowserServiceType;

DMAP_MDNS_BROWSER_SERVICE_TYPE_INVALID

DMAP_MDNS_BROWSER_SERVICE_TYPE_DAAP

DMAP_MDNS_BROWSER_SERVICE_TYPE_DPAP

DMAP_MDNS_BROWSER_SERVICE_TYPE_DACP

DMAP_MDNS_BROWSER_SERVICE_TYPE_RAOP

DMAP_MDNS_BROWSER_SERVICE_TYPE_LAST


enum DMAPMdnsBrowserTransportProtocol

typedef enum {
	DMAP_MDNS_BROWSER_TRANSPORT_PROTOCOL_TCP = 0,
	DMAP_MDNS_BROWSER_TRANSPORT_PROTOCOL_UDP,
	DMAP_MDNS_BROWSER_TRANSPORT_PROTOCOL_LAST = DMAP_MDNS_BROWSER_TRANSPORT_PROTOCOL_UDP
} DMAPMdnsBrowserTransportProtocol;

DMAP_MDNS_BROWSER_TRANSPORT_PROTOCOL_TCP

DMAP_MDNS_BROWSER_TRANSPORT_PROTOCOL_UDP

DMAP_MDNS_BROWSER_TRANSPORT_PROTOCOL_LAST


enum DMAPMdnsBrowserError

typedef enum {
	DMAP_MDNS_BROWSER_ERROR_NOT_RUNNING = 0,
	DMAP_MDNS_BROWSER_ERROR_FAILED,
} DMAPMdnsBrowserError;

DMAP_MDNS_BROWSER_ERROR_NOT_RUNNING

DMAP_MDNS_BROWSER_ERROR_FAILED


struct DMAPMdnsBrowserService

struct DMAPMdnsBrowserService {
	gchar *service_name;
	gchar *name;
	gchar *host;
	guint port;
	gboolean password_protected;
	gchar *pair;                                         // FIXME: subclass
	DMAPMdnsBrowserTransportProtocol transport_protocol; // FIXME: subclass
};


struct DMAPMdnsBrowserClass

struct DMAPMdnsBrowserClass {
	GObjectClass parent_class;

	void (*service_added) (DMAPMdnsBrowser * browser,
			       DMAPMdnsBrowserService * service);
	void (*service_removed) (DMAPMdnsBrowser * browser,
				 DMAPMdnsBrowserService * service);
};


DMAP_MDNS_BROWSER_ERROR

#define DMAP_MDNS_BROWSER_ERROR dmap_mdns_browser_error_quark ()


dmap_mdns_browser_error_quark ()

GQuark              dmap_mdns_browser_error_quark       (void);


dmap_mdns_browser_new ()

DMAPMdnsBrowser *   dmap_mdns_browser_new               (DMAPMdnsBrowserServiceType type);

Creates a new mDNS browser.

type :

The type of service to browse.

Returns :

a pointer to a DMAPMdnsBrowser.

dmap_mdns_browser_start ()

gboolean            dmap_mdns_browser_start             (DMAPMdnsBrowser *browser,
                                                         GError **error);

Starts a DMAPMdnsBrowser.

browser :

A DMAPMdnsBrowser.

error :

A GError.

Returns :

TRUE on success, else FALSE.

dmap_mdns_browser_stop ()

gboolean            dmap_mdns_browser_stop              (DMAPMdnsBrowser *browser,
                                                         GError **error);

Stops a DMAPMdnsBrowser.

browser :

A DMAPMdnsBrowser.

error :

A GError.

Returns :

TRUE on success, else FALSE.

dmap_mdns_browser_get_services ()

const GSList *      dmap_mdns_browser_get_services      (DMAPMdnsBrowser *browser);


dmap_mdns_browser_get_service_type ()

DMAPMdnsBrowserServiceType dmap_mdns_browser_get_service_type
                                                        (DMAPMdnsBrowser *browser);