PixbufModule
open class PixbufModule : PixbufModuleProtocol
A GdkPixbufModule contains the necessary functions to load and save
images in a certain file format.
If GdkPixbuf has been compiled with GModule support, it can be extended
by modules which can load (and perhaps also save) new image and animation
formats.
Implementing modules
The GdkPixbuf interfaces needed for implementing modules are contained in
gdk-pixbuf-io.h (and gdk-pixbuf-animation.h if the module supports
animations). They are not covered by the same stability guarantees as the
regular GdkPixbuf API. To underline this fact, they are protected by the
GDK_PIXBUF_ENABLE_BACKEND pre-processor symbol.
Each loadable module must contain a GdkPixbufModuleFillVtableFunc function
named fill_vtable, which will get called when the module
is loaded and must set the function pointers of the GdkPixbufModule.
In order to make format-checking work before actually loading the modules
(which may require calling dlopen to load image libraries), modules export
their signatures (and other information) via the fill_info function. An
external utility, gdk-pixbuf-query-loaders, uses this to create a text
file containing a list of all available loaders and their signatures.
This file is then read at runtime by GdkPixbuf to obtain the list of
available loaders and their signatures.
Modules may only implement a subset of the functionality available via
GdkPixbufModule. If a particular functionality is not implemented, the
fill_vtable function will simply not set the corresponding
function pointers of the GdkPixbufModule structure. If a module supports
incremental loading (i.e. provides begin_load, stop_load and
load_increment), it doesn’t have to implement load, since GdkPixbuf
can supply a generic load implementation wrapping the incremental loading.
Installing modules
Installing a module is a two-step process:
- copy the module
file(s)to the loader directory (normally$libdir/gdk-pixbuf-2.0/$version/loaders, unless overridden by the environment variableGDK_PIXBUF_MODULEDIR) - call
gdk-pixbuf-query-loadersto update the module file (normally$libdir/gdk-pixbuf-2.0/$version/loaders.cache, unless overridden by the environment variableGDK_PIXBUF_MODULE_FILE)
The PixbufModule type acts as an owner of an underlying GdkPixbufModule instance.
It provides the methods that can operate on this data type through PixbufModuleProtocol conformance.
Use PixbufModule as a strong reference or owner of a GdkPixbufModule instance.
-
Untyped pointer to the underlying `GdkPixbufModule` instance.For type-safe access, use the generated, typed pointer
_ptrproperty instead.Declaration
Swift
public let ptr: UnsafeMutableRawPointer! -
Designated initialiser from the underlying
Cdata type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to thePixbufModuleinstance.Declaration
Swift
@inlinable public init(_ op: UnsafeMutablePointer<GdkPixbufModule>)Parameters
oppointer to the underlying object
-
Designated initialiser from a constant pointer to the underlying
Cdata type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to thePixbufModuleinstance.Declaration
Swift
@inlinable public init(_ op: UnsafePointer<GdkPixbufModule>)Parameters
oppointer to the underlying object
-
Optional initialiser from a non-mutating
gpointerto the underlyingCdata type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to thePixbufModuleinstance.Declaration
Swift
@inlinable public init!(gpointer op: gpointer?)Parameters
opgpointer to the underlying object
-
Optional initialiser from a non-mutating
gconstpointerto the underlyingCdata type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to thePixbufModuleinstance.Declaration
Swift
@inlinable public init!(gconstpointer op: gconstpointer?)Parameters
oppointer to the underlying object
-
Optional initialiser from a constant pointer to the underlying
Cdata type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to thePixbufModuleinstance.Declaration
Swift
@inlinable public init!(_ op: UnsafePointer<GdkPixbufModule>?)Parameters
oppointer to the underlying object
-
Optional initialiser from the underlying
Cdata type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to thePixbufModuleinstance.Declaration
Swift
@inlinable public init!(_ op: UnsafeMutablePointer<GdkPixbufModule>?)Parameters
oppointer to the underlying object
-
Designated initialiser from the underlying
Cdata type.GdkPixbufModuledoes not allow reference counting, so despite the name no actual retaining will occur. i.e., ownership is transferred to thePixbufModuleinstance.Declaration
Swift
@inlinable public init(retaining op: UnsafeMutablePointer<GdkPixbufModule>)Parameters
oppointer to the underlying object
-
Reference intialiser for a related type that implements
PixbufModuleProtocolGdkPixbufModuledoes not allow reference counting.Declaration
Swift
@inlinable public init<T>(_ other: T) where T : PixbufModuleProtocolParameters
otheran instance of a related type that implements
PixbufModuleProtocol -
Unsafe typed initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
PixbufModuleProtocol.Declaration
Swift
@inlinable public init<T>(cPointer p: UnsafeMutablePointer<T>)Parameters
cPointerpointer to the underlying object
-
Unsafe typed, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
PixbufModuleProtocol.Declaration
Swift
@inlinable public init<T>(retainingCPointer cPointer: UnsafeMutablePointer<T>)Parameters
cPointerpointer to the underlying object
-
Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
PixbufModuleProtocol.Declaration
Swift
@inlinable public init(raw p: UnsafeRawPointer)Parameters
praw 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
PixbufModuleProtocol.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
PixbufModuleProtocol.Declaration
Swift
@inlinable public required init(raw p: UnsafeMutableRawPointer)Parameters
pmutable 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
PixbufModuleProtocol.Declaration
Swift
@inlinable public init(retainingRaw raw: UnsafeMutableRawPointer)Parameters
rawmutable 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
PixbufModuleProtocol.Declaration
Swift
@inlinable public init(opaquePointer p: OpaquePointer)Parameters
popaque 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
PixbufModuleProtocol.Declaration
Swift
@inlinable public init(retainingOpaquePointer p: OpaquePointer)Parameters
popaque pointer to the underlying object
View on GitHub
Install in Dash
PixbufModule Class Reference