### Function

# GObject type_register_fundamental

#### Declaration [src]

    GType
    g_type_register_fundamental (
      GType type_id,
      const gchar* type_name,
      const GTypeInfo* info,
      const GTypeFundamentalInfo* finfo,
      GTypeFlags flags
    )

#### Description [src]

Registers `type_id` as the predefined identifier and `type_name` as the name of a fundamental type. If `type_id` is already registered, or a type named `type_name` is already registered, the behaviour is undefined. The type system uses the information contained in the `GTypeInfo` structure pointed to by `info` and the `GTypeFundamentalInfo` structure pointed to by `finfo` to manage the type and its instances. The value of `flags` determines additional characteristics of the fundamental type.

#### Parameters

`type_id`

  Type: `GType`

  A predefined type identifier.

`type_name`

  Type: `const gchar*`

  0-terminated string used as the name of the new type.

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

`info`

  Type: `GTypeInfo`

  `GTypeInfo` structure for this type.

  The data is owned by the caller of the function.

`finfo`

  Type: `GTypeFundamentalInfo`

  `GTypeFundamentalInfo` structure for this type.

  The data is owned by the caller of the function.

`flags`

  Type: `GTypeFlags`

  Bitwise combination of `GTypeFlags` values.

#### Return value

Type: `GType`

The predefined type identifier.