ObjectClass

open class ObjectClass : ObjectClassProtocol

The ObjectClass type acts as an owner of an underlying GObjectClass instance. It provides the methods that can operate on this data type through ObjectClassProtocol conformance. Use ObjectClass as a strong reference or owner of a GObjectClass instance.

The class structure for the GObject type.

(C Language Example):

// Example of implementing a singleton using a constructor.
static MySingleton *the_singleton = NULL;

static GObject*
my_singleton_constructor (GType                  type,
                          guint                  n_construct_params,
                          GObjectConstructParam *construct_params)
{
  GObject *object;

  if (!the_singleton)
    {
      object = G_OBJECT_CLASS (parent_class)->constructor (type,
                                                           n_construct_params,
                                                           construct_params);
      the_singleton = MY_SINGLETON (object);
    }
  else
    object = g_object_ref (G_OBJECT (the_singleton));

  return object;
}
  • ptr
    Untyped pointer to the underlying `GObjectClass` instance.
    

    For type-safe access, use the generated, typed pointer _ptr property instead.

    Declaration

    Swift

    public let ptr: UnsafeMutableRawPointer!
  • Designated initialiser from the underlying C data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the ObjectClass instance.

    Declaration

    Swift

    @inlinable
    public init(_ op: UnsafeMutablePointer<GObjectClass>)

    Parameters

    op

    pointer to the underlying object

  • Designated initialiser from a constant pointer to the underlying C data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the ObjectClass instance.

    Declaration

    Swift

    @inlinable
    public init(_ op: UnsafePointer<GObjectClass>)

    Parameters

    op

    pointer to the underlying object

  • Optional initialiser from a non-mutating gpointer to the underlying C data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the ObjectClass instance.

    Declaration

    Swift

    @inlinable
    public init!(gpointer op: gpointer?)

    Parameters

    op

    gpointer to the underlying object

  • Optional initialiser from a non-mutating gconstpointer to the underlying C data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the ObjectClass instance.

    Declaration

    Swift

    @inlinable
    public init!(gconstpointer op: gconstpointer?)

    Parameters

    op

    pointer to the underlying object

  • Optional initialiser from a constant pointer to the underlying C data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the ObjectClass instance.

    Declaration

    Swift

    @inlinable
    public init!(_ op: UnsafePointer<GObjectClass>?)

    Parameters

    op

    pointer to the underlying object

  • Optional initialiser from the underlying C data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the ObjectClass instance.

    Declaration

    Swift

    @inlinable
    public init!(_ op: UnsafeMutablePointer<GObjectClass>?)

    Parameters

    op

    pointer to the underlying object

  • Designated initialiser from the underlying C data type. GObjectClass does not allow reference counting, so despite the name no actual retaining will occur. i.e., ownership is transferred to the ObjectClass instance.

    Declaration

    Swift

    @inlinable
    public init(retaining op: UnsafeMutablePointer<GObjectClass>)

    Parameters

    op

    pointer to the underlying object

  • Reference intialiser for a related type that implements ObjectClassProtocol GObjectClass does not allow reference counting.

    Declaration

    Swift

    @inlinable
    public init<T>(_ other: T) where T : ObjectClassProtocol

    Parameters

    other

    an instance of a related type that implements ObjectClassProtocol

  • Unsafe typed initialiser. Do not use unless you know the underlying data type the pointer points to conforms to ObjectClassProtocol.

    Declaration

    Swift

    @inlinable
    public init<T>(cPointer p: UnsafeMutablePointer<T>)

    Parameters

    cPointer

    pointer to the underlying object

  • Unsafe typed, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to ObjectClassProtocol.

    Declaration

    Swift

    @inlinable
    public init<T>(retainingCPointer cPointer: UnsafeMutablePointer<T>)

    Parameters

    cPointer

    pointer to the underlying object

  • Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to ObjectClassProtocol.

    Declaration

    Swift

    @inlinable
    public init(raw p: UnsafeRawPointer)

    Parameters

    p

    raw pointer to the underlying object

  • Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to ObjectClassProtocol.

    Declaration

    Swift

    @inlinable
    public init(retainingRaw raw: UnsafeRawPointer)
  • Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to ObjectClassProtocol.

    Declaration

    Swift

    @inlinable
    public init(raw p: UnsafeMutableRawPointer)

    Parameters

    p

    mutable raw pointer to the underlying object

  • Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to ObjectClassProtocol.

    Declaration

    Swift

    @inlinable
    public init(retainingRaw raw: UnsafeMutableRawPointer)

    Parameters

    raw

    mutable raw pointer to the underlying object

  • Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to ObjectClassProtocol.

    Declaration

    Swift

    @inlinable
    public init(opaquePointer p: OpaquePointer)

    Parameters

    p

    opaque pointer to the underlying object

  • Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to ObjectClassProtocol.

    Declaration

    Swift

    @inlinable
    public init(retainingOpaquePointer p: OpaquePointer)

    Parameters

    p

    opaque pointer to the underlying object