vulkan-2.0.0.0: Bindings to the Vulkan graphics API.

Safe HaskellNone
LanguageHaskell2010

Graphics.Vulkan.Core10.Event

Synopsis

Documentation

newtype VkEventCreateFlags Source #

VkEventCreateFlags - Reserved for future use

Description

VkEventCreateFlags is a bitmask type for setting a mask, but is currently reserved for future use.

See Also

VkEventCreateInfo

Instances

Eq VkEventCreateFlags Source # 
Ord VkEventCreateFlags Source # 
Read VkEventCreateFlags Source # 
Show VkEventCreateFlags Source # 
Storable VkEventCreateFlags Source # 
Bits VkEventCreateFlags Source # 
FiniteBits VkEventCreateFlags Source # 

type VkEvent = Ptr VkEvent_T Source #

VkEvent - Opaque handle to a event object

Description

See Also

vkCmdResetEvent, vkCmdSetEvent, vkCmdWaitEvents, vkCreateEvent, vkDestroyEvent, vkGetEventStatus, vkResetEvent, vkSetEvent

vkCreateEvent :: ("device" ::: VkDevice) -> ("pCreateInfo" ::: Ptr VkEventCreateInfo) -> ("pAllocator" ::: Ptr VkAllocationCallbacks) -> ("pEvent" ::: Ptr VkEvent) -> IO VkResult Source #

vkCreateEvent - Create a new event object

Parameters

  • device is the logical device that creates the event.
  • pCreateInfo is a pointer to an instance of the VkEventCreateInfo structure which contains information about how the event is to be created.
  • pAllocator controls host memory allocation as described in the Memory Allocation chapter.
  • pEvent points to a handle in which the resulting event object is returned.

Description

When created, the event object is in the unsignaled state.

Valid Usage (Implicit)

  • device must be a valid VkDevice handle
  • pCreateInfo must be a valid pointer to a valid VkEventCreateInfo structure
  • If pAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structure
  • pEvent must be a valid pointer to a VkEvent handle

Return Codes

Success
- VK_SUCCESS
Failure
- VK_ERROR_OUT_OF_HOST_MEMORY
  • VK_ERROR_OUT_OF_DEVICE_MEMORY

See Also

VkAllocationCallbacks, VkDevice, VkEvent, VkEventCreateInfo

vkDestroyEvent :: ("device" ::: VkDevice) -> ("event" ::: VkEvent) -> ("pAllocator" ::: Ptr VkAllocationCallbacks) -> IO () Source #

vkDestroyEvent - Destroy an event object

Parameters

  • device is the logical device that destroys the event.
  • event is the handle of the event to destroy.
  • pAllocator controls host memory allocation as described in the Memory Allocation chapter.

Description

Valid Usage

  • All submitted commands that refer to event must have completed execution
  • If VkAllocationCallbacks were provided when event was created, a compatible set of callbacks must be provided here
  • If no VkAllocationCallbacks were provided when event was created, pAllocator must be NULL

Valid Usage (Implicit)

  • device must be a valid VkDevice handle
  • If event is not VK_NULL_HANDLE, event must be a valid VkEvent handle
  • If pAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structure
  • If event is a valid handle, it must have been created, allocated, or retrieved from device

Host Synchronization

  • Host access to event must be externally synchronized

See Also

VkAllocationCallbacks, VkDevice, VkEvent

vkGetEventStatus :: ("device" ::: VkDevice) -> ("event" ::: VkEvent) -> IO VkResult Source #

vkGetEventStatus - Retrieve the status of an event object

Parameters

  • device is the logical device that owns the event.
  • event is the handle of the event to query.

Description

Upon success, vkGetEventStatus returns the state of the event object with the following return codes:

+-----------------------------------+-----------------------------------+
| Status                            | Meaning                           |
+===================================+===================================+
| @VK_EVENT_SET@                    | The event specified by @event@ is |
|                                   | signaled.                         |
+-----------------------------------+-----------------------------------+
| @VK_EVENT_RESET@                  | The event specified by @event@ is |
|                                   | unsignaled.                       |
+-----------------------------------+-----------------------------------+

Event Object Status Codes

If a vkCmdSetEvent or vkCmdResetEvent command is in a command buffer that is in the pending state, then the value returned by this command may immediately be out of date.

The state of an event can be updated by the host. The state of the event is immediately changed, and subsequent calls to vkGetEventStatus will return the new state. If an event is already in the requested state, then updating it to the same state has no effect.

Valid Usage (Implicit)

  • device must be a valid VkDevice handle
  • event must be a valid VkEvent handle
  • event must have been created, allocated, or retrieved from device

Return Codes

Success
- VK_EVENT_SET
  • VK_EVENT_RESET
Failure
- VK_ERROR_OUT_OF_HOST_MEMORY
  • VK_ERROR_OUT_OF_DEVICE_MEMORY
  • VK_ERROR_DEVICE_LOST

See Also

VkDevice, VkEvent

vkSetEvent :: ("device" ::: VkDevice) -> ("event" ::: VkEvent) -> IO VkResult Source #

vkSetEvent - Set an event to signaled state

Parameters

  • device is the logical device that owns the event.
  • event is the event to set.

Description

When vkSetEvent is executed on the host, it defines an /event signal operation/ which sets the event to the signaled state.

If event is already in the signaled state when vkSetEvent is executed, then vkSetEvent has no effect, and no event signal operation occurs.

Valid Usage (Implicit)

  • device must be a valid VkDevice handle
  • event must be a valid VkEvent handle
  • event must have been created, allocated, or retrieved from device

Host Synchronization

  • Host access to event must be externally synchronized

Return Codes

Success
- VK_SUCCESS
Failure
- VK_ERROR_OUT_OF_HOST_MEMORY
  • VK_ERROR_OUT_OF_DEVICE_MEMORY

See Also

VkDevice, VkEvent

vkResetEvent :: ("device" ::: VkDevice) -> ("event" ::: VkEvent) -> IO VkResult Source #

vkResetEvent - Reset an event to non-signaled state

Parameters

  • device is the logical device that owns the event.
  • event is the event to reset.

Description

When vkResetEvent is executed on the host, it defines an /event unsignal operation/ which resets the event to the unsignaled state.

If event is already in the unsignaled state when vkResetEvent is executed, then vkResetEvent has no effect, and no event unsignal operation occurs.

Valid Usage

  • event must not be waited on by a vkCmdWaitEvents command that is currently executing

Valid Usage (Implicit)

  • device must be a valid VkDevice handle
  • event must be a valid VkEvent handle
  • event must have been created, allocated, or retrieved from device

Host Synchronization

  • Host access to event must be externally synchronized

Return Codes

Success
- VK_SUCCESS
Failure
- VK_ERROR_OUT_OF_HOST_MEMORY
  • VK_ERROR_OUT_OF_DEVICE_MEMORY

See Also

VkDevice, VkEvent

data VkEventCreateInfo Source #

VkEventCreateInfo - Structure specifying parameters of a newly created event

Description

Valid Usage (Implicit)

  • sType must be VK_STRUCTURE_TYPE_EVENT_CREATE_INFO
  • pNext must be NULL
  • flags must be 0

See Also

VkEventCreateFlags, VkStructureType, vkCreateEvent

Constructors

VkEventCreateInfo 

Fields