### Function

# GObject signal_newv

since: 2.0

#### Declaration

    guint
    g_signal_newv (
      const gchar* signal_name,
      GType itype,
      GSignalFlags signal_flags,
      GClosure* class_closure,
      GSignalAccumulator accumulator,
      gpointer accu_data,
      GSignalCMarshaller c_marshaller,
      GType return_type,
      guint n_params,
      GType* param_types
    )

#### Description

Creates a new signal. (This is usually done in the class initializer.)

See `g_signal_new()` for details on allowed signal names.

If c_marshaller is `NULL`, `g_cclosure_marshal_generic()` will be used as the marshaller for this signal.

Available since: 2.0

#### Parameters

`signal_name`

  Type: `const gchar*`

  The name for the signal.

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

`itype`

  Type: `GType`

  The type this signal pertains to. It will also pertain to types which are derived from this type.

`signal_flags`

  Type: `GSignalFlags`

  A combination of `GSignalFlags` specifying detail of when the default handler is to be invoked. You should at least specify `G_SIGNAL_RUN_FIRST` or `G_SIGNAL_RUN_LAST`.

`class_closure`

  Type: `GClosure`

  The closure to invoke on signal emission; may be `NULL`.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

`accumulator`

  Type: `GSignalAccumulator`

  The accumulator for this signal; may be `NULL`.

  The argument can be `NULL`.

`accu_data`

  Type: `gpointer`

  User data for the `accumulator`.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

`c_marshaller`

  Type: `GSignalCMarshaller`

  The function to translate arrays of parameter values to signal emissions into C language callback invocations or `NULL`.

  The argument can be `NULL`.

`return_type`

  Type: `GType`

  The type of return value, or `G_TYPE_NONE` for a signal without a return value.

`n_params`

  Type: `guint`

  The length of `param_types`.

`param_types`

  Type: An array of `GType`

  An array of types, one for each parameter (may be `NULL` if `n_params` is zero)

  The argument can be `NULL`.
  The length of the array is specified in the `n_params` argument.
  The data is owned by the caller of the function.

#### Return value

Type: `guint`

The signal id.