# GstVulkanFence

A GstVulkanFence encapsulates a VkFence

## GstVulkanFence

### Members

`parent` (GstMiniObject) –

the parent GstMiniObject

`device` (GstVulkanDevice *) –

the GstVulkanDevice this fence is allocated from

`cache` (GstVulkanFenceCache *) –

the parent GstVulkanFenceCache for fence reuse

`fence` (VkFence) –

the vulkan fence handle

Since : 1.18

## GstVulkan.VulkanFence

### Members

`parent` (Gst.MiniObject) –

the parent Gst.MiniObject

`device` (GstVulkan.VulkanDevice) –

the GstVulkan.VulkanDevice this fence is allocated from

`cache` (GstVulkan.VulkanFenceCache) –

the parent GstVulkan.VulkanFenceCache for fence reuse

`fence` (Vulkan.Fence) –

the vulkan fence handle

Since : 1.18

## GstVulkan.VulkanFence

### Members

`parent` (Gst.MiniObject) –

the parent Gst.MiniObject

`device` (GstVulkan.VulkanDevice) –

the GstVulkan.VulkanDevice this fence is allocated from

`cache` (GstVulkan.VulkanFenceCache) –

the parent GstVulkan.VulkanFenceCache for fence reuse

`fence` (Vulkan.Fence) –

the vulkan fence handle

Since : 1.18

### Constructors

#### gst_vulkan_fence_new

    GstVulkanFence *
    gst_vulkan_fence_new (GstVulkanDevice * device,
                          GError ** error)

Parameters:

`device` –

the parent GstVulkanDevice

`error` ( [out][optional]) –

a GError for the failure condition

Returns –

a new GstVulkanFence or NULL on error

Since : 1.18

#### GstVulkan.VulkanFence.prototype.new

    function GstVulkan.VulkanFence.prototype.new(device: GstVulkan.VulkanDevice): {
        // javascript wrapper for 'gst_vulkan_fence_new'
    }

Parameters:

`device` (GstVulkan.VulkanDevice) –

the parent GstVulkan.VulkanDevice

Returns (GstVulkan.VulkanFence) –

a new GstVulkan.VulkanFence or NULL on error

Since : 1.18

#### GstVulkan.VulkanFence.new

    @raises(GLib.GError)
    def GstVulkan.VulkanFence.new (device):
        #python wrapper for 'gst_vulkan_fence_new'

Parameters:

`device` (GstVulkan.VulkanDevice) –

the parent GstVulkan.VulkanDevice

Returns (GstVulkan.VulkanFence) –

a new GstVulkan.VulkanFence or NULL on error

Since : 1.18

#### gst_vulkan_fence_new_always_signalled

    GstVulkanFence *
    gst_vulkan_fence_new_always_signalled (GstVulkanDevice * device)

Parameters:

`device` –
No description available
Returns –

a new GstVulkanFence that is always in the signalled state

Since : 1.18

#### GstVulkan.VulkanFence.prototype.new_always_signalled

    function GstVulkan.VulkanFence.prototype.new_always_signalled(device: GstVulkan.VulkanDevice): {
        // javascript wrapper for 'gst_vulkan_fence_new_always_signalled'
    }

Parameters:

`device` (GstVulkan.VulkanDevice) –
No description available
Returns (GstVulkan.VulkanFence) –

a new GstVulkan.VulkanFence that is always in the signalled state

Since : 1.18

#### GstVulkan.VulkanFence.new_always_signalled

    def GstVulkan.VulkanFence.new_always_signalled (device):
        #python wrapper for 'gst_vulkan_fence_new_always_signalled'

Parameters:

`device` (GstVulkan.VulkanDevice) –
No description available
Returns (GstVulkan.VulkanFence) –

a new GstVulkan.VulkanFence that is always in the signalled state

Since : 1.18

### Methods

#### gst_vulkan_fence_is_signaled

    gboolean
    gst_vulkan_fence_is_signaled (GstVulkanFence * fence)

Parameters:

`fence` –

a GstVulkanFence

Returns –

whether fence has been signalled

Since : 1.18

#### GstVulkan.VulkanFence.prototype.is_signaled

    function GstVulkan.VulkanFence.prototype.is_signaled(): {
        // javascript wrapper for 'gst_vulkan_fence_is_signaled'
    }

Parameters:

`fence` (GstVulkan.VulkanFence) –

a GstVulkan.VulkanFence

Returns (Number) –

whether fence has been signalled

Since : 1.18

#### GstVulkan.VulkanFence.is_signaled

    def GstVulkan.VulkanFence.is_signaled (self):
        #python wrapper for 'gst_vulkan_fence_is_signaled'

Parameters:

`fence` (GstVulkan.VulkanFence) –

a GstVulkan.VulkanFence

Returns (bool) –

whether fence has been signalled

Since : 1.18

#### gst_vulkan_fence_reset

    gst_vulkan_fence_reset (GstVulkanFence * fence)

Parameters:

`fence` –
No description available

#### GstVulkan.VulkanFence.prototype.reset

    function GstVulkan.VulkanFence.prototype.reset(): {
        // javascript wrapper for 'gst_vulkan_fence_reset'
    }

Parameters:

`fence` (GstVulkan.VulkanFence) –
No description available

#### GstVulkan.VulkanFence.reset

    def GstVulkan.VulkanFence.reset (self):
        #python wrapper for 'gst_vulkan_fence_reset'

Parameters:

`fence` (GstVulkan.VulkanFence) –
No description available

## GstVulkanFenceCache

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstVulkanHandlePool
                    ╰──GstVulkanFenceCache

### Members

`parent` (GstVulkanHandlePool) –

the parent GstVulkanHandlePool

Since : 1.18

### Class structure

#### GstVulkanFenceCacheClass

##### Fields

`parent_class` (GstVulkanHandlePoolClass) –

the parent GstVulkanHandlePoolClass

Since : 1.18

### GstVulkan.VulkanFenceCacheClass

##### Attributes

`parent_class` (GstVulkan.VulkanHandlePoolClass) –

the parent GstVulkan.VulkanHandlePoolClass

Since : 1.18

### GstVulkan.VulkanFenceCacheClass

##### Attributes

`parent_class` (GstVulkan.VulkanHandlePoolClass) –

the parent GstVulkan.VulkanHandlePoolClass

Since : 1.18

## GstVulkan.VulkanFenceCache

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──Gst.Object
                ╰──GstVulkan.VulkanHandlePool
                    ╰──GstVulkan.VulkanFenceCache

### Members

`parent` (GstVulkan.VulkanHandlePool) –

the parent GstVulkan.VulkanHandlePool

Since : 1.18

## GstVulkan.VulkanFenceCache

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──Gst.Object
                ╰──GstVulkan.VulkanHandlePool
                    ╰──GstVulkan.VulkanFenceCache

### Members

`parent` (GstVulkan.VulkanHandlePool) –

the parent GstVulkan.VulkanHandlePool

Since : 1.18

### Constructors

#### gst_vulkan_fence_cache_new

    GstVulkanFenceCache *
    gst_vulkan_fence_cache_new (GstVulkanDevice * device)

Parameters:

`device` –
No description available
Returns –
No description available

#### GstVulkan.VulkanFenceCache.prototype.new

    function GstVulkan.VulkanFenceCache.prototype.new(device: GstVulkan.VulkanDevice): {
        // javascript wrapper for 'gst_vulkan_fence_cache_new'
    }

Parameters:

`device` (GstVulkan.VulkanDevice) –
No description available
Returns (GstVulkan.VulkanFenceCache) –
No description available

#### GstVulkan.VulkanFenceCache.new

    def GstVulkan.VulkanFenceCache.new (device):
        #python wrapper for 'gst_vulkan_fence_cache_new'

Parameters:

`device` (GstVulkan.VulkanDevice) –
No description available
Returns (GstVulkan.VulkanFenceCache) –
No description available

## Function Macros

### GST_VULKAN_FENCE_CAST

    #define GST_VULKAN_FENCE_CAST(f) ((GstVulkanFence *) f)

Since : 1.18

### GST_VULKAN_FENCE_FENCE

    #define GST_VULKAN_FENCE_FENCE(f) (GST_VULKAN_FENCE_CAST(f)->fence)

Since : 1.18

### gst_vulkan_fence_cache_acquire

    #define gst_vulkan_fence_cache_acquire(o,e) (GstVulkanFence *) gst_vulkan_handle_pool_acquire (GST_VULKAN_HANDLE_POOL (o),e);

A helper define for internally calling gst_vulkan_handle_pool_acquire()

Parameters:

`o` –

the GstVulkanFenceCache

`e` –

a GError

Since : 1.18

## Constants

### GST_TYPE_VULKAN_FENCE

    #define GST_TYPE_VULKAN_FENCE (gst_vulkan_fence_get_type ())

Since : 1.18

The results of the search are