gpu-vulkan-0.1.0.164: Vulkan library
Safe HaskellNone
LanguageHaskell2010

Gpu.Vulkan.Pipeline.Compute

Contents

Synopsis

CREATE

createCs :: forall {k1} {k2} (cias :: [(Maybe Type, (Maybe Type, Maybe Type, ShaderKind, Maybe (Type, Type), [Type]), (Type, [(Type, [BindingType])], [Type]), (k1, (Type, [(Type, [BindingType])], [Type])))]) (mac :: Maybe (Type, Type)) sd spc a. (CreateInfoListToMiddle cias, ToMiddle mac, FromMiddleList (M2_4 cias)) => D sd -> Maybe (P spc) -> PL (U4 (CreateInfo :: Maybe Type -> (Maybe Type, Maybe Type, ShaderKind, Maybe (Type, Type), [Type]) -> (Type, [(Type, [BindingType])], [Type]) -> (k1, (Type, [(Type, [BindingType])], [Type])) -> Type)) cias -> M (U2 A) mac -> (forall (s :: k2). PL (C s) (M2_4 cias) -> IO a) -> IO a Source #

newtype C (s :: k) (lyta :: (Type, [(Type, [BindingType])], [Type])) Source #

Constructors

C C 

Instances

Instances details
Show (C s lyta) Source # 
Instance details

Defined in Gpu.Vulkan.Pipeline.Compute

Methods

showsPrec :: Int -> C s lyta -> ShowS #

show :: C s lyta -> String #

showList :: [C s lyta] -> ShowS #

data CreateInfo (mn :: Maybe Type) (ssta :: (Maybe Type, Maybe Type, ShaderKind, Maybe (Type, Type), [Type])) (lyta :: (Type, [(Type, [BindingType])], [Type])) (bpha :: (k, (Type, [(Type, [BindingType])], [Type]))) Source #

class (CreateInfoListToCore (MiddleArgs as), DestroyCreateInfoMiddleList (MiddleArgs as) as) => CreateInfoListToMiddle (as :: [(Maybe Type, (Maybe Type, Maybe Type, ShaderKind, Maybe (Type, Type), [Type]), (Type, [(Type, [BindingType])], [Type]), (k, (Type, [(Type, [BindingType])], [Type])))]) Source #

Minimal complete definition

createInfoListToMiddle

Instances

Instances details
CreateInfoListToMiddle ('[] :: [(Maybe Type, (Maybe Type, Maybe Type, ShaderKind, Maybe (Type, Type), [Type]), (Type, [(Type, [BindingType])], [Type]), (k, (Type, [(Type, [BindingType])], [Type])))]) Source # 
Instance details

Defined in Gpu.Vulkan.Pipeline.Compute

Methods

createInfoListToMiddle :: D sd -> PL (U4 (CreateInfo :: Maybe Type -> (Maybe Type, Maybe Type, ShaderKind, Maybe (Type, Type), [Type]) -> (Type, [(Type, [BindingType])], [Type]) -> (k, (Type, [(Type, [BindingType])], [Type])) -> Type)) ('[] :: [(Maybe Type, (Maybe Type, Maybe Type, ShaderKind, Maybe (Type, Type), [Type]), (Type, [(Type, [BindingType])], [Type]), (k, (Type, [(Type, [BindingType])], [Type])))]) -> IO (PL (U3 CreateInfo) (MiddleArgs ('[] :: [(Maybe Type, (Maybe Type, Maybe Type, ShaderKind, Maybe (Type, Type), [Type]), (Type, [(Type, [BindingType])], [Type]), (k, (Type, [(Type, [BindingType])], [Type])))])))

(WithPoked (M n'), CreateInfoListToMiddle as, ToMiddle mscc, WithPoked (M n), WithPoked (M n1), PokableList vs) => CreateInfoListToMiddle ('(n, '(n1, n', 'GlslComputeShader, mscc, vs), lyta, bpha) ': as :: [(Maybe Type, (Maybe Type, Maybe Type, ShaderKind, Maybe (Type, Type), [Type]), (Type, [(Type, [BindingType])], [Type]), (k, (Type, [(Type, [BindingType])], [Type])))]) Source # 
Instance details

Defined in Gpu.Vulkan.Pipeline.Compute

Methods

createInfoListToMiddle :: D sd -> PL (U4 (CreateInfo :: Maybe Type -> (Maybe Type, Maybe Type, ShaderKind, Maybe (Type, Type), [Type]) -> (Type, [(Type, [BindingType])], [Type]) -> (k, (Type, [(Type, [BindingType])], [Type])) -> Type)) ('(n, '(n1, n', 'GlslComputeShader, mscc, vs), lyta, bpha) ': as) -> IO (PL (U3 CreateInfo) (MiddleArgs ('(n, '(n1, n', 'GlslComputeShader, mscc, vs), lyta, bpha) ': as)))

class FromMiddleList (ss :: [(Type, [(Type, [BindingType])], [Type])]) Source #

Minimal complete definition

fromMiddleList

Instances

Instances details
FromMiddleList ('[] :: [(Type, [(Type, [BindingType])], [Type])]) Source # 
Instance details

Defined in Gpu.Vulkan.Pipeline.Compute

Methods

fromMiddleList :: forall {k} (sc :: k). [C] -> PL (C sc) ('[] :: [(Type, [(Type, [BindingType])], [Type])])

FromMiddleList ss => FromMiddleList (s ': ss) Source # 
Instance details

Defined in Gpu.Vulkan.Pipeline.Compute

Methods

fromMiddleList :: forall {k} (sc :: k). [C] -> PL (C sc) (s ': ss)