# Local Nodes

struct WpImplNode

  A WpImplNode allows running a node implementation (`struct pw_impl_node`) locally, loading the implementation from factory or wrapping a manually constructed `pw_impl_node`. This object can then be exported to PipeWire by requesting WP_PROXY_FEATURE_BOUND.

  GObject Properties

  pw-impl-node

    The actual node implementation, `struct pw_impl_node *`

    `gpointer` | `G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY`

WpImplNode *wp_impl_node_new_wrap(WpCore *core, struct pw_impl_node *node)

  Constructs a node object from an existing `pw_impl_node`.

  Parameters:

    - core -- the wireplumber core

    - node -- an existing `pw_impl_node` to wrap

  Returns:

    (transfer full): A new WpImplNode wrapping node

WpImplNode *wp_impl_node_new_from_pw_factory(WpCore *core, const gchar *factory_name, WpProperties *properties)

  Constructs a new node, locally on this process, using the specified factory_name.

  To export this node to the PipeWire server, you need to call wp_object_activate() requesting WP_PROXY_FEATURE_BOUND and wait for the operation to complete.

  Parameters:

    - core -- the wireplumber core

    - factory_name -- the name of the pipewire factory

    - properties -- (nullable) (transfer full): properties to be passed to node constructor

  Returns:

    (nullable) (transfer full): A new WpImplNode wrapping the node that was constructed by the factory, or NULL if the factory does not exist or was unable to construct the node

WP_TYPE_IMPL_NODE (wp_impl_node_get_type ())

  The WpImplNode GType.