### Function

# GObject type_add_interface_check

since: 2.4

#### Declaration

    void
    g_type_add_interface_check (
      gpointer check_data,
      GTypeInterfaceCheckFunc check_func
    )

#### Description

Adds a function to be called after an interface vtable is initialized for any class (i.e. after the `interface_init` member of `GInterfaceInfo` has been called).

This function is useful when you want to check an invariant that depends on the interfaces of a class. For instance, the implementation of `GObject` uses this facility to check that an object implements all of the properties that are defined on its interfaces.

Available since: 2.4

This function is not directly available to language bindings.

#### Parameters

`check_data`

  Type: `gpointer`

  Data to pass to `check_func`.

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

`check_func`

  Type: `GTypeInterfaceCheckFunc`

  Function to be called after each interface is initialized.