summaryrefslogtreecommitdiff
path: root/girs/GstAllocators-1.0.gir
diff options
context:
space:
mode:
Diffstat (limited to 'girs/GstAllocators-1.0.gir')
-rw-r--r--girs/GstAllocators-1.0.gir571
1 files changed, 571 insertions, 0 deletions
diff --git a/girs/GstAllocators-1.0.gir b/girs/GstAllocators-1.0.gir
new file mode 100644
index 0000000000..f1b8b2ef08
--- /dev/null
+++ b/girs/GstAllocators-1.0.gir
@@ -0,0 +1,571 @@
+<!-- This file was automatically generated from C sources - DO NOT EDIT!
+To affect the contents of this file, edit the original C definitions,
+and/or use gtk-doc annotations. -->
+<repository xmlns="http://www.gtk.org/introspection/core/1.0" xmlns:c="http://www.gtk.org/introspection/c/1.0" xmlns:glib="http://www.gtk.org/introspection/glib/1.0" version="1.2">
+ <include name="Gst" version="1.0"/>
+ <package name="gstreamer-allocators-1.0"/>
+ <c:include name="gst/allocators/allocators.h"/>
+ <namespace name="GstAllocators" version="1.0" shared-library="libgstallocators-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst">
+ <constant name="ALLOCATOR_DMABUF" value="dmabuf" c:type="GST_ALLOCATOR_DMABUF">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <type name="utf8" c:type="gchar*"/>
+ </constant>
+ <constant name="ALLOCATOR_FD" value="fd" c:type="GST_ALLOCATOR_FD">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <type name="utf8" c:type="gchar*"/>
+ </constant>
+ <constant name="CAPS_FEATURE_MEMORY_DMABUF" value="memory:DMABuf" c:type="GST_CAPS_FEATURE_MEMORY_DMABUF" version="1.12">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h">Constant that defines the caps feature name for DMA buffer sharing.
+
+It has to be used for non-mappable dma-buf only, i.e. when the underlying
+memory is not mappable to user space. Or when the mapped memory contains
+non meaningful data. It can be the case for protected content or when the
+user wants explicitly avoid any software post processing.
+
+In these cases all elements between the exported and the importer has to work
+in passthrough mode. This is done by adding this caps feature.
+
+When the memory is mappable for read and write requests then it is assumes
+to be a fast path and so this caps feature should not be used. Though
+according to the dma-buf protocol, while it is mapped it prevents the
+exporter to migrate the buffer.
+
+This caps feature should not serve at all the purpose of selecting the
+@GST_ALLOCATOR_DMABUF allocator during caps negotiation.
+When the exporter is the upstream element from the importer point of view,
+the exporter should try to map the dma buffer at runtime (preferably during
+decide_allocation phase). When it succeeds for #GST_MAP_READWRITE this caps
+feature should not be used. This allows scalers, color converts and any image
+processing filters to work directly on the dma buffer.
+In this case the importer element should check all incoming memory using
+gst_is_dmabuf_memory().</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <type name="utf8" c:type="gchar*"/>
+ </constant>
+ <function-macro name="DMABUF_ALLOCATOR" c:identifier="GST_DMABUF_ALLOCATOR" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <parameters>
+ <parameter name="obj">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <function-macro name="DMABUF_ALLOCATOR_CAST" c:identifier="GST_DMABUF_ALLOCATOR_CAST" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <parameters>
+ <parameter name="obj">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <function-macro name="DMABUF_ALLOCATOR_CLASS" c:identifier="GST_DMABUF_ALLOCATOR_CLASS" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <parameters>
+ <parameter name="klass">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <function-macro name="DMABUF_ALLOCATOR_GET_CLASS" c:identifier="GST_DMABUF_ALLOCATOR_GET_CLASS" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <parameters>
+ <parameter name="obj">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <class name="DRMDumbAllocator" c:symbol-prefix="drm_dumb_allocator" c:type="GstDRMDumbAllocator" version="1.24" parent="Gst.Allocator" glib:type-name="GstDRMDumbAllocator" glib:get-type="gst_drm_dumb_allocator_get_type" glib:type-struct="DRMDumbAllocatorClass">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.h">Private intance object for #GstDRMDumbAllocator.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.h"/>
+ <constructor name="new_with_device_path" c:identifier="gst_drm_dumb_allocator_new_with_device_path" version="1.24">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">Creates a new #GstDRMDumbAllocator for the specific device path. This
+function can fail if the path does not exist, is not a DRM device or if
+the DRM device doesnot support DUMB allocation.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.h"/>
+ <return-value transfer-ownership="full" nullable="1">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">a new DRM Dumb allocator. Use gst_object_unref()
+ to release the allocator after usage.</doc>
+ <type name="Gst.Allocator" c:type="GstAllocator*"/>
+ </return-value>
+ <parameters>
+ <parameter name="drm_device_path" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">path to the DRM device to open</doc>
+ <type name="filename" c:type="const gchar*"/>
+ </parameter>
+ </parameters>
+ </constructor>
+ <constructor name="new_with_fd" c:identifier="gst_drm_dumb_allocator_new_with_fd" version="1.24">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">Creates a new #GstDRMDumbAllocator for the specific file desciptor. This
+function can fail if the file descriptor is not a DRM device or if
+the DRM device does not support DUMB allocation.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.h"/>
+ <return-value transfer-ownership="full" nullable="1">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">a new DRM Dumb allocator. Use gst_object_unref()
+ to release the allocator after usage.</doc>
+ <type name="Gst.Allocator" c:type="GstAllocator*"/>
+ </return-value>
+ <parameters>
+ <parameter name="drm_fd" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">file descriptor of the DRM device</doc>
+ <type name="gint" c:type="gint"/>
+ </parameter>
+ </parameters>
+ </constructor>
+ <method name="alloc" c:identifier="gst_drm_dumb_allocator_alloc" version="1.24">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">Allocated a DRM buffer object for the specific @drm_fourcc, @width and
+@height. Note that the DRM Dumb allocation interface is agnostic to the
+pixel format. This @drm_fourcc is converted into a bpp (bit-per-pixel)
+number and the height is scaled according to the sub-sampling.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.h"/>
+ <return-value transfer-ownership="full">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">a new DRM Dumb #GstMemory. Use gst_memory_unref()
+ to release the memory after usage.</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </return-value>
+ <parameters>
+ <instance-parameter name="allocator" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">the allocator instance</doc>
+ <type name="DRMDumbAllocator" c:type="GstAllocator*"/>
+ </instance-parameter>
+ <parameter name="drm_fourcc" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">the DRM format to allocate for</doc>
+ <type name="guint32" c:type="guint32"/>
+ </parameter>
+ <parameter name="width" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">padded width for this allocation</doc>
+ <type name="guint32" c:type="guint32"/>
+ </parameter>
+ <parameter name="height" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">padded height for this allocation</doc>
+ <type name="guint32" c:type="guint32"/>
+ </parameter>
+ <parameter name="out_pitch" direction="out" caller-allocates="0" transfer-ownership="full">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">the pitch as returned by the driver</doc>
+ <type name="guint32" c:type="guint32*"/>
+ </parameter>
+ </parameters>
+ </method>
+ <method name="has_prime_export" c:identifier="gst_drm_dumb_allocator_has_prime_export" version="1.24">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">This function allow verifying if the driver support dma-buf exportation.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.h"/>
+ <return-value transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">%TRUE if the allocator support exporting dma-buf.</doc>
+ <type name="gboolean" c:type="gboolean"/>
+ </return-value>
+ <parameters>
+ <instance-parameter name="allocator" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">the #GstAllocator</doc>
+ <type name="DRMDumbAllocator" c:type="GstAllocator*"/>
+ </instance-parameter>
+ </parameters>
+ </method>
+ <property name="drm-device-path" version="1.24" writable="1" construct-only="1" transfer-ownership="none">
+ <type name="filename" c:type="gchar*"/>
+ </property>
+ <property name="drm-fd" version="1.24" writable="1" construct-only="1" transfer-ownership="none">
+ <type name="gint" c:type="gint"/>
+ </property>
+ </class>
+ <record name="DRMDumbAllocatorClass" c:type="GstDRMDumbAllocatorClass" glib:is-gtype-struct-for="DRMDumbAllocator">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.h"/>
+ <field name="parent_class">
+ <type name="Gst.AllocatorClass" c:type="GstAllocatorClass"/>
+ </field>
+ </record>
+ <class name="DmaBufAllocator" c:symbol-prefix="dmabuf_allocator" c:type="GstDmaBufAllocator" version="1.12" parent="FdAllocator" glib:type-name="GstDmaBufAllocator" glib:get-type="gst_dmabuf_allocator_get_type" glib:type-struct="DmaBufAllocatorClass">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h">Base class for allocators with dmabuf-backed memory</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <constructor name="new" c:identifier="gst_dmabuf_allocator_new" version="1.2">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">Return a new dmabuf allocator.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <return-value transfer-ownership="full">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">a new dmabuf allocator. Use gst_object_unref() to
+release the allocator after usage</doc>
+ <type name="Gst.Allocator" c:type="GstAllocator*"/>
+ </return-value>
+ </constructor>
+ <function name="alloc" c:identifier="gst_dmabuf_allocator_alloc" version="1.2">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">Return a %GstMemory that wraps a dmabuf file descriptor.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <return-value transfer-ownership="full" nullable="1">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">a GstMemory based on @allocator.
+When the buffer will be released dmabuf allocator will close the @fd.
+The memory is only mmapped on gst_buffer_map() request.</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </return-value>
+ <parameters>
+ <parameter name="allocator" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">allocator to be used for this memory</doc>
+ <type name="Gst.Allocator" c:type="GstAllocator*"/>
+ </parameter>
+ <parameter name="fd" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">dmabuf file descriptor</doc>
+ <type name="gint" c:type="gint"/>
+ </parameter>
+ <parameter name="size" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">memory size</doc>
+ <type name="gsize" c:type="gsize"/>
+ </parameter>
+ </parameters>
+ </function>
+ <function name="alloc_with_flags" c:identifier="gst_dmabuf_allocator_alloc_with_flags" version="1.16">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">Return a %GstMemory that wraps a dmabuf file descriptor.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <return-value transfer-ownership="full" nullable="1">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">a GstMemory based on @allocator.
+
+When the buffer will be released the allocator will close the @fd unless
+the %GST_FD_MEMORY_FLAG_DONT_CLOSE flag is specified.
+The memory is only mmapped on gst_buffer_mmap() request.</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </return-value>
+ <parameters>
+ <parameter name="allocator" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">allocator to be used for this memory</doc>
+ <type name="Gst.Allocator" c:type="GstAllocator*"/>
+ </parameter>
+ <parameter name="fd" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">dmabuf file descriptor</doc>
+ <type name="gint" c:type="gint"/>
+ </parameter>
+ <parameter name="size" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">memory size</doc>
+ <type name="gsize" c:type="gsize"/>
+ </parameter>
+ <parameter name="flags" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">extra #GstFdMemoryFlags</doc>
+ <type name="FdMemoryFlags" c:type="GstFdMemoryFlags"/>
+ </parameter>
+ </parameters>
+ </function>
+ <field name="parent">
+ <type name="FdAllocator" c:type="GstFdAllocator"/>
+ </field>
+ <field name="_gst_reserved" readable="0" private="1">
+ <array zero-terminated="0" fixed-size="4">
+ <type name="gpointer" c:type="gpointer"/>
+ </array>
+ </field>
+ </class>
+ <record name="DmaBufAllocatorClass" c:type="GstDmaBufAllocatorClass" glib:is-gtype-struct-for="DmaBufAllocator">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <field name="parent_class">
+ <type name="FdAllocatorClass" c:type="GstFdAllocatorClass"/>
+ </field>
+ <field name="_gst_reserved" readable="0" private="1">
+ <array zero-terminated="0" fixed-size="4">
+ <type name="gpointer" c:type="gpointer"/>
+ </array>
+ </field>
+ </record>
+ <function-macro name="FD_ALLOCATOR" c:identifier="GST_FD_ALLOCATOR" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <parameters>
+ <parameter name="obj">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <function-macro name="FD_ALLOCATOR_CAST" c:identifier="GST_FD_ALLOCATOR_CAST" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <parameters>
+ <parameter name="obj">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <function-macro name="FD_ALLOCATOR_CLASS" c:identifier="GST_FD_ALLOCATOR_CLASS" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <parameters>
+ <parameter name="klass">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <function-macro name="FD_ALLOCATOR_GET_CLASS" c:identifier="GST_FD_ALLOCATOR_GET_CLASS" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <parameters>
+ <parameter name="obj">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <class name="FdAllocator" c:symbol-prefix="fd_allocator" c:type="GstFdAllocator" version="1.6" parent="Gst.Allocator" glib:type-name="GstFdAllocator" glib:get-type="gst_fd_allocator_get_type" glib:type-struct="FdAllocatorClass">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h">Base class for allocators with fd-backed memory</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <constructor name="new" c:identifier="gst_fd_allocator_new" version="1.6">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">Return a new fd allocator.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <return-value transfer-ownership="full">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">a new fd allocator. Use gst_object_unref() to
+release the allocator after usage</doc>
+ <type name="Gst.Allocator" c:type="GstAllocator*"/>
+ </return-value>
+ </constructor>
+ <function name="alloc" c:identifier="gst_fd_allocator_alloc" version="1.6">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">Return a %GstMemory that wraps a generic file descriptor.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <return-value transfer-ownership="full" nullable="1">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">a GstMemory based on @allocator.
+When the buffer will be released the allocator will close the @fd unless
+the %GST_FD_MEMORY_FLAG_DONT_CLOSE flag is specified.
+The memory is only mmapped on gst_buffer_map() request.</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </return-value>
+ <parameters>
+ <parameter name="allocator" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">allocator to be used for this memory</doc>
+ <type name="Gst.Allocator" c:type="GstAllocator*"/>
+ </parameter>
+ <parameter name="fd" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">file descriptor</doc>
+ <type name="gint" c:type="gint"/>
+ </parameter>
+ <parameter name="size" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">memory size</doc>
+ <type name="gsize" c:type="gsize"/>
+ </parameter>
+ <parameter name="flags" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">extra #GstFdMemoryFlags</doc>
+ <type name="FdMemoryFlags" c:type="GstFdMemoryFlags"/>
+ </parameter>
+ </parameters>
+ </function>
+ <field name="parent">
+ <type name="Gst.Allocator" c:type="GstAllocator"/>
+ </field>
+ </class>
+ <record name="FdAllocatorClass" c:type="GstFdAllocatorClass" glib:is-gtype-struct-for="FdAllocator">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <field name="parent_class">
+ <type name="Gst.AllocatorClass" c:type="GstAllocatorClass"/>
+ </field>
+ </record>
+ <bitfield name="FdMemoryFlags" version="1.6" c:type="GstFdMemoryFlags">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h">Various flags to control the operation of the fd backed memory.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <member name="none" value="0" c:identifier="GST_FD_MEMORY_FLAG_NONE">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h">no flag</doc>
+ </member>
+ <member name="keep_mapped" value="1" c:identifier="GST_FD_MEMORY_FLAG_KEEP_MAPPED">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h">once the memory is mapped,
+ keep it mapped until the memory is destroyed.</doc>
+ </member>
+ <member name="map_private" value="2" c:identifier="GST_FD_MEMORY_FLAG_MAP_PRIVATE">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h">do a private mapping instead of
+ the default shared mapping.</doc>
+ </member>
+ <member name="dont_close" value="4" c:identifier="GST_FD_MEMORY_FLAG_DONT_CLOSE">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h">don't close the file descriptor when
+ the memory is freed. Since: 1.10</doc>
+ </member>
+ </bitfield>
+ <function-macro name="IS_DMABUF_ALLOCATOR" c:identifier="GST_IS_DMABUF_ALLOCATOR" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <parameters>
+ <parameter name="obj">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <function-macro name="IS_DMABUF_ALLOCATOR_CLASS" c:identifier="GST_IS_DMABUF_ALLOCATOR_CLASS" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <parameters>
+ <parameter name="klass">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <function-macro name="IS_FD_ALLOCATOR" c:identifier="GST_IS_FD_ALLOCATOR" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <parameters>
+ <parameter name="obj">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <function-macro name="IS_FD_ALLOCATOR_CLASS" c:identifier="GST_IS_FD_ALLOCATOR_CLASS" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <parameters>
+ <parameter name="klass">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <function-macro name="PHYS_MEMORY_ALLOCATOR_CAST" c:identifier="GST_PHYS_MEMORY_ALLOCATOR_CAST" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstphysmemory.h"/>
+ <parameters>
+ <parameter name="obj">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <function-macro name="PHYS_MEMORY_ALLOCATOR_GET_INTERFACE" c:identifier="GST_PHYS_MEMORY_ALLOCATOR_GET_INTERFACE" introspectable="0">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstphysmemory.h"/>
+ <parameters>
+ <parameter name="obj">
+ </parameter>
+ </parameters>
+ </function-macro>
+ <interface name="PhysMemoryAllocator" c:symbol-prefix="phys_memory_allocator" c:type="GstPhysMemoryAllocator" version="1.14" glib:type-name="GstPhysMemoryAllocator" glib:get-type="gst_phys_memory_allocator_get_type" glib:type-struct="PhysMemoryAllocatorInterface">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstphysmemory.h"/>
+ <prerequisite name="Gst.Allocator"/>
+ <virtual-method name="get_phys_addr">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstphysmemory.h"/>
+ <return-value transfer-ownership="none">
+ <type name="guintptr" c:type="guintptr"/>
+ </return-value>
+ <parameters>
+ <instance-parameter name="allocator" transfer-ownership="none">
+ <type name="PhysMemoryAllocator" c:type="GstPhysMemoryAllocator*"/>
+ </instance-parameter>
+ <parameter name="mem" transfer-ownership="none">
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </parameter>
+ </parameters>
+ </virtual-method>
+ </interface>
+ <record name="PhysMemoryAllocatorInterface" c:type="GstPhysMemoryAllocatorInterface" glib:is-gtype-struct-for="PhysMemoryAllocator" version="1.14">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstphysmemory.h">Marker interface for allocators with physical address backed memory</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstphysmemory.h"/>
+ <field name="parent_iface" readable="0" private="1">
+ <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
+ </field>
+ <field name="get_phys_addr">
+ <callback name="get_phys_addr">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstphysmemory.h"/>
+ <return-value transfer-ownership="none">
+ <type name="guintptr" c:type="guintptr"/>
+ </return-value>
+ <parameters>
+ <parameter name="allocator" transfer-ownership="none">
+ <type name="PhysMemoryAllocator" c:type="GstPhysMemoryAllocator*"/>
+ </parameter>
+ <parameter name="mem" transfer-ownership="none">
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </parameter>
+ </parameters>
+ </callback>
+ </field>
+ </record>
+ <function name="dmabuf_memory_get_fd" c:identifier="gst_dmabuf_memory_get_fd" version="1.2">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">Return the file descriptor associated with @mem.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <return-value transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">the file descriptor associated with the memory, or -1. The file
+ descriptor is still owned by the GstMemory. Use dup to take a copy
+ if you intend to use it beyond the lifetime of this GstMemory.</doc>
+ <type name="gint" c:type="gint"/>
+ </return-value>
+ <parameters>
+ <parameter name="mem" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">the memory to get the file descriptor</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </parameter>
+ </parameters>
+ </function>
+ <function name="drm_dumb_memory_export_dmabuf" c:identifier="gst_drm_dumb_memory_export_dmabuf" version="1.24">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">Exports a DMABuf from the DRM Bumb buffer object. One can check if this
+feature is supported using gst_drm_dumb_allocator_has_prime_export();</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.h"/>
+ <return-value transfer-ownership="full">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">a #GstMemory from #GstDmaBufAllocator wrapping the exported dma-buf
+ file descriptor.</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </return-value>
+ <parameters>
+ <parameter name="mem" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">the memory to export from</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </parameter>
+ </parameters>
+ </function>
+ <function name="drm_dumb_memory_get_handle" c:identifier="gst_drm_dumb_memory_get_handle" version="1.24">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">Return the DRM buffer object handle associated with @mem.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.h"/>
+ <return-value transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">the DRM buffer object handle associated with the memory, or 0.
+ The handle is still owned by the GstMemory and cannot be used
+ beyond the lifetime of this GstMemory unless it is being passed
+ to DRM driver, which does handle a refcount internally.</doc>
+ <type name="guint32" c:type="guint32"/>
+ </return-value>
+ <parameters>
+ <parameter name="mem" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">the memory to get the handle from</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </parameter>
+ </parameters>
+ </function>
+ <function name="fd_memory_get_fd" c:identifier="gst_fd_memory_get_fd" version="1.6">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">Get the fd from @mem. Call gst_is_fd_memory() to check if @mem has
+an fd.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <return-value transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">the fd of @mem or -1 when there is no fd on @mem</doc>
+ <type name="gint" c:type="gint"/>
+ </return-value>
+ <parameters>
+ <parameter name="mem" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">#GstMemory</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </parameter>
+ </parameters>
+ </function>
+ <function name="is_dmabuf_memory" c:identifier="gst_is_dmabuf_memory" version="1.2">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">Check if @mem is dmabuf memory.</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.h"/>
+ <return-value transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">%TRUE if @mem is dmabuf memory, otherwise %FALSE</doc>
+ <type name="gboolean" c:type="gboolean"/>
+ </return-value>
+ <parameters>
+ <parameter name="mem" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdmabuf.c">the memory to be check</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </parameter>
+ </parameters>
+ </function>
+ <function name="is_drm_dumb_memory" c:identifier="gst_is_drm_dumb_memory" version="1.24">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.h"/>
+ <return-value transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">%TRUE if @mem is DRM Dumb memory, otherwise %FALSE</doc>
+ <type name="gboolean" c:type="gboolean"/>
+ </return-value>
+ <parameters>
+ <parameter name="mem" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstdrmdumb.c">the memory to be checked</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </parameter>
+ </parameters>
+ </function>
+ <function name="is_fd_memory" c:identifier="gst_is_fd_memory" version="1.6">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">Check if @mem is memory backed by an fd</doc>
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.h"/>
+ <return-value transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">%TRUE when @mem has an fd that can be retrieved with
+gst_fd_memory_get_fd().</doc>
+ <type name="gboolean" c:type="gboolean"/>
+ </return-value>
+ <parameters>
+ <parameter name="mem" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstfdmemory.c">#GstMemory</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </parameter>
+ </parameters>
+ </function>
+ <function name="is_phys_memory" c:identifier="gst_is_phys_memory" version="1.14">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstphysmemory.h"/>
+ <return-value transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstphysmemory.c">whether the memory at @mem is backed by physical memory</doc>
+ <type name="gboolean" c:type="gboolean"/>
+ </return-value>
+ <parameters>
+ <parameter name="mem" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstphysmemory.c">a #GstMemory</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </parameter>
+ </parameters>
+ </function>
+ <function name="phys_memory_get_phys_addr" c:identifier="gst_phys_memory_get_phys_addr" version="1.14">
+ <source-position filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstphysmemory.h"/>
+ <return-value transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstphysmemory.c">Physical memory address that is backing @mem, or 0 if none</doc>
+ <type name="guintptr" c:type="guintptr"/>
+ </return-value>
+ <parameters>
+ <parameter name="mem" transfer-ownership="none">
+ <doc xml:space="preserve" filename="../subprojects/gst-plugins-base/gst-libs/gst/allocators/gstphysmemory.c">a #GstMemory</doc>
+ <type name="Gst.Memory" c:type="GstMemory*"/>
+ </parameter>
+ </parameters>
+ </function>
+ </namespace>
+</repository>