### Constructor

# GUPnP ControlPoint new_full

#### Declaration [src]

    GUPnPControlPoint*
    gupnp_control_point_new_full (
      GUPnPContext* context,
      GUPnPResourceFactory* factory,
      const char* target
    )

#### Description [src]

Create a new `GUPnPControlPoint` with the specified `context`, `factory` and `target`.

`target` should be a service or device name, such as `urn:schemas-upnp-org:service:WANIPConnection:1` or `urn:schemas-upnp-org:device:MediaRenderer:1`.

By passing a custom `GUPnPResourceFactory`, the proxies handed out in ::device-available and ::service-available can be overridden to hand out custom classes instead of the generic `GUPnPServiceProxy` and `GUPnPDeviceProxy`.

#### Parameters

`context`

  Type: `GUPnPContext`

  A `GUPnPContext`.

  The data is owned by the caller of the function.

`factory`

  Type: `GUPnPResourceFactory`

  A `GUPnPResourceFactory`.

  The data is owned by the caller of the function.

`target`

  Type: `const char*`

  The search target.

  The data is owned by the caller of the function.
  The value is a NUL terminated UTF-8 string.

#### Return value

Type: `GUPnPControlPoint`

A new `GUPnPControlPoint` object.

The caller of the function takes ownership of the data, and is responsible for freeing it.