Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
VulkanContext
is an object representing the platform-specific
Vulkan draw context.
GdkVulkanContexts
are created for a Surface
using
surfaceCreateVulkanContext
, and the context will match the
the characteristics of the surface.
Support for VulkanContext
is platform-specific, context creation
can fail, returning Nothing
context.
Synopsis
- newtype VulkanContext = VulkanContext (ManagedPtr VulkanContext)
- class (GObject o, IsDescendantOf VulkanContext o) => IsVulkanContext o
- toVulkanContext :: (MonadIO m, IsVulkanContext o) => o -> m VulkanContext
- type C_VulkanContextImagesUpdatedCallback = Ptr () -> Ptr () -> IO ()
- type VulkanContextImagesUpdatedCallback = IO ()
- afterVulkanContextImagesUpdated :: (IsVulkanContext a, MonadIO m) => a -> VulkanContextImagesUpdatedCallback -> m SignalHandlerId
- genClosure_VulkanContextImagesUpdated :: MonadIO m => VulkanContextImagesUpdatedCallback -> m (GClosure C_VulkanContextImagesUpdatedCallback)
- mk_VulkanContextImagesUpdatedCallback :: C_VulkanContextImagesUpdatedCallback -> IO (FunPtr C_VulkanContextImagesUpdatedCallback)
- noVulkanContextImagesUpdatedCallback :: Maybe VulkanContextImagesUpdatedCallback
- onVulkanContextImagesUpdated :: (IsVulkanContext a, MonadIO m) => a -> VulkanContextImagesUpdatedCallback -> m SignalHandlerId
- wrap_VulkanContextImagesUpdatedCallback :: VulkanContextImagesUpdatedCallback -> C_VulkanContextImagesUpdatedCallback
Exported types
newtype VulkanContext Source #
Memory-managed wrapper type.
VulkanContext (ManagedPtr VulkanContext) |
Instances
Eq VulkanContext Source # | |
Defined in GI.Gdk.Objects.VulkanContext (==) :: VulkanContext -> VulkanContext -> Bool # (/=) :: VulkanContext -> VulkanContext -> Bool # | |
GObject VulkanContext Source # | |
Defined in GI.Gdk.Objects.VulkanContext | |
ManagedPtrNewtype VulkanContext Source # | |
Defined in GI.Gdk.Objects.VulkanContext toManagedPtr :: VulkanContext -> ManagedPtr VulkanContext | |
TypedObject VulkanContext Source # | |
Defined in GI.Gdk.Objects.VulkanContext | |
HasParentTypes VulkanContext Source # | |
Defined in GI.Gdk.Objects.VulkanContext | |
IsGValue (Maybe VulkanContext) Source # | Convert |
Defined in GI.Gdk.Objects.VulkanContext gvalueGType_ :: IO GType gvalueSet_ :: Ptr GValue -> Maybe VulkanContext -> IO () gvalueGet_ :: Ptr GValue -> IO (Maybe VulkanContext) | |
type ParentTypes VulkanContext Source # | |
Defined in GI.Gdk.Objects.VulkanContext |
class (GObject o, IsDescendantOf VulkanContext o) => IsVulkanContext o Source #
Type class for types which can be safely cast to VulkanContext
, for instance with toVulkanContext
.
Instances
(GObject o, IsDescendantOf VulkanContext o) => IsVulkanContext o Source # | |
Defined in GI.Gdk.Objects.VulkanContext |
toVulkanContext :: (MonadIO m, IsVulkanContext o) => o -> m VulkanContext Source #
Cast to VulkanContext
, for types for which this is known to be safe. For general casts, use castTo
.
Methods
Click to display all available methods, including inherited ones
Methods
beginFrame, bindProperty, bindPropertyFull, endFrame, forceFloating, freezeNotify, getv, init, isFloating, isInFrame, notify, notifyByPspec, ref, refSink, runDispose, stealData, stealQdata, thawNotify, unref, watchClosure.
Getters
getData, getDisplay, getFrameRegion, getProperty, getQdata, getSurface.
Setters
Signals
imagesUpdated
type C_VulkanContextImagesUpdatedCallback = Ptr () -> Ptr () -> IO () Source #
Type for the callback on the (unwrapped) C side.
type VulkanContextImagesUpdatedCallback = IO () Source #
This signal is emitted when the images managed by this context have changed. Usually this means that the swapchain had to be recreated, for example in response to a change of the surface size.
afterVulkanContextImagesUpdated :: (IsVulkanContext a, MonadIO m) => a -> VulkanContextImagesUpdatedCallback -> m SignalHandlerId Source #
Connect a signal handler for the imagesUpdated signal, to be run after the default handler. When overloading is enabled, this is equivalent to
after
vulkanContext #imagesUpdated callback
genClosure_VulkanContextImagesUpdated :: MonadIO m => VulkanContextImagesUpdatedCallback -> m (GClosure C_VulkanContextImagesUpdatedCallback) Source #
Wrap the callback into a GClosure
.
mk_VulkanContextImagesUpdatedCallback :: C_VulkanContextImagesUpdatedCallback -> IO (FunPtr C_VulkanContextImagesUpdatedCallback) Source #
Generate a function pointer callable from C code, from a C_VulkanContextImagesUpdatedCallback
.
noVulkanContextImagesUpdatedCallback :: Maybe VulkanContextImagesUpdatedCallback Source #
A convenience synonym for
.Nothing
:: Maybe
VulkanContextImagesUpdatedCallback
onVulkanContextImagesUpdated :: (IsVulkanContext a, MonadIO m) => a -> VulkanContextImagesUpdatedCallback -> m SignalHandlerId Source #
Connect a signal handler for the imagesUpdated signal, to be run before the default handler. When overloading is enabled, this is equivalent to
on
vulkanContext #imagesUpdated callback