GUPnPContextManager

GUPnPContextManager — Manages GUPnPContext objects.

Synopsis

struct              GUPnPContextManager;
GUPnPContextManager * gupnp_context_manager_new         (GMainContext *main_context,
                                                         guint port);
GUPnPContextManager * gupnp_context_manager_create      (guint port);
void                gupnp_context_manager_manage_control_point
                                                        (GUPnPContextManager *manager,
                                                         GUPnPControlPoint *control_point);
void                gupnp_context_manager_manage_root_device
                                                        (GUPnPContextManager *manager,
                                                         GUPnPRootDevice *root_device);
guint               gupnp_context_manager_get_port      (GUPnPContextManager *manager);

Object Hierarchy

  GObject
   +----GUPnPContextManager

Properties

  "main-context"             gpointer              : Read / Write / Construct Only
  "port"                     guint                 : Read / Write / Construct Only

Signals

  "context-available"                              : Run Last
  "context-unavailable"                            : Run First

Description

A Utility class that takes care of creation and destruction of GUPnPContext objects for all available network interfaces as they go up (connect) and down (disconnect), respectively.

Details

struct GUPnPContextManager

struct GUPnPContextManager;

This struct contains private data only, and should be accessed using the functions below.


gupnp_context_manager_new ()

GUPnPContextManager * gupnp_context_manager_new         (GMainContext *main_context,
                                                         guint port);

Warning

gupnp_context_manager_new has been deprecated since version 0.17.2 and should not be used in newly-written code. Use gupnp_context_manager_create().

Same as gupnp_context_manager_create().

main_context :

Deprecated: 0.17.2: NULL. If you want to use a different main context use g_main_context_push_thread_default() instead. [allow-none]

port :

Port to create contexts for, or 0 if you don't care what port is used.

Returns :

A new GUPnPContextManager object. [transfer full]

gupnp_context_manager_create ()

GUPnPContextManager * gupnp_context_manager_create      (guint port);

Factory-method to create a new GUPnPContextManager. The final type of the GUPnPContextManager depends on the compile-time selection or - in case of NetworkManager - on its availability during runtime. If it is not available, the implementation falls back to the basic Unix context manager instead.

port :

Port to create contexts for, or 0 if you don't care what port is used.

Returns :

A new GUPnPContextManager object. [transfer full]

gupnp_context_manager_manage_control_point ()

void                gupnp_context_manager_manage_control_point
                                                        (GUPnPContextManager *manager,
                                                         GUPnPControlPoint *control_point);

By calling this function, you are asking manager to keep a reference to control_point until it's associated GUPnPContext is no longer available. You usually want to call this function from "context-available" handler after you create a GUPnPControlPoint object for the newly available context.

manager :

A GUPnPContextManager

control_point :

The GUPnPControlPoint to be taken care of

gupnp_context_manager_manage_root_device ()

void                gupnp_context_manager_manage_root_device
                                                        (GUPnPContextManager *manager,
                                                         GUPnPRootDevice *root_device);

By calling this function, you are asking manager to keep a reference to root_device when it's associated GUPnPContext is no longer available. You usually want to call this function from "context-available" handler after you create a GUPnPRootDevice object for the newly available context.

manager :

A GUPnPContextManager

root_device :

The GUPnPRootDevice to be taken care of

gupnp_context_manager_get_port ()

guint               gupnp_context_manager_get_port      (GUPnPContextManager *manager);

Get the network port associated with this context manager.

manager :

A GUPnPContextManager

Returns :

The network port asssociated with this context manager.

Property Details

The "main-context" property

  "main-context"             gpointer              : Read / Write / Construct Only

GMainContext to pass to created GUPnPContext objects.


The "port" property

  "port"                     guint                 : Read / Write / Construct Only

Port the contexts listen on, or 0 if you don't care what port is used by GUPnPContext objects created by this object.

Default value: 0

Signal Details

The "context-available" signal

void                user_function                      (GUPnPContextManager *context_manager,
                                                        GUPnPContext        *context,
                                                        gpointer             user_data)            : Run Last

Signals the availability of new GUPnPContext.

context_manager :

The GUPnPContextManager that received the signal

context :

The now available GUPnPContext

user_data :

user data set when the signal handler was connected.

The "context-unavailable" signal

void                user_function                      (GUPnPContextManager *context_manager,
                                                        GUPnPContext        *context,
                                                        gpointer             user_data)            : Run First

Signals the unavailability of a GUPnPContext.

context_manager :

The GUPnPContextManager that received the signal

context :

The now unavailable GUPnPContext

user_data :

user data set when the signal handler was connected.