| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Vulkan.Requirement
Synopsis
- data InstanceRequirement where
- RequireInstanceVersion :: {..} -> InstanceRequirement
- RequireInstanceLayer :: {..} -> InstanceRequirement
- RequireInstanceExtension :: {..} -> InstanceRequirement
- data DeviceRequirement where
- RequireDeviceVersion :: {..} -> DeviceRequirement
- RequireDeviceFeature :: forall struct. KnownFeatureStruct struct => {..} -> DeviceRequirement
- RequireDeviceProperty :: forall struct. KnownPropertyStruct struct => {..} -> DeviceRequirement
- RequireDeviceExtension :: {..} -> DeviceRequirement
- class Typeable feat => KnownFeatureStruct feat where
- sFeatureStruct :: SFeatureStruct feat
- class Typeable prop => KnownPropertyStruct prop where
- sPropertyStruct :: SPropertyStruct prop
- data SFeatureStruct feat where
- BasicFeatureStruct :: SFeatureStruct PhysicalDeviceFeatures
- ExtendedFeatureStruct :: (Show feat, Extends PhysicalDeviceFeatures2 feat, Extends DeviceCreateInfo feat, Zero feat, FromCStruct feat, ToCStruct feat) => SFeatureStruct feat
- data SPropertyStruct prop where
- BasicPropertyStruct :: SPropertyStruct PhysicalDeviceProperties
- ExtendedPropertyStruct :: (Typeable prop, Extends PhysicalDeviceProperties2 prop, FromCStruct prop, ToCStruct prop) => SPropertyStruct prop
Vulkan requirements
data InstanceRequirement where Source #
A requirement on a Vulkan Instance.
Constructors
| RequireInstanceVersion | Require a minimum Vulkan instance version. |
Fields
| |
| RequireInstanceLayer | Require a Vulkan layer. |
Fields
| |
| RequireInstanceExtension | Require a Vulkan instance extension. |
Fields | |
data DeviceRequirement where Source #
Constructors
| RequireDeviceVersion | Require a minimum device version. |
Fields
| |
| RequireDeviceFeature | Require a Vulkan physical device feature. |
Fields
| |
| RequireDeviceProperty | Require a Vulkan physical device property. |
Fields
| |
| RequireDeviceExtension | Require a Vulkan device extension. |
Fields
| |
Utility functionality for handling structure chains
class Typeable feat => KnownFeatureStruct feat where Source #
A Vulkan structure that can appear in PhysicalDeviceFeatures2.
Methods
sFeatureStruct :: SFeatureStruct feat Source #
Instances
| KnownFeatureStruct PhysicalDeviceFeatures Source # | |
Defined in Vulkan.Requirement | |
| (Typeable feat, Show feat, Extends PhysicalDeviceFeatures2 feat, Extends DeviceCreateInfo feat, Zero feat, FromCStruct feat, ToCStruct feat) => KnownFeatureStruct feat Source # | |
Defined in Vulkan.Requirement Methods sFeatureStruct :: SFeatureStruct feat Source # | |
class Typeable prop => KnownPropertyStruct prop where Source #
A Vulkan structure that can appear in PhysicalDeviceProperties2.
Methods
sPropertyStruct :: SPropertyStruct prop Source #
Instances
| KnownPropertyStruct PhysicalDeviceProperties Source # | |
Defined in Vulkan.Requirement | |
| (Typeable prop, Extends PhysicalDeviceProperties2 prop, FromCStruct prop, ToCStruct prop) => KnownPropertyStruct prop Source # | |
Defined in Vulkan.Requirement Methods sPropertyStruct :: SPropertyStruct prop Source # | |
data SFeatureStruct feat where Source #
Singleton for a Vulkan structure that can appear in PhysicalDeviceFeatures2.
It is either PhysicalDeviceFeatures, or it Extends PhysicalDeviceFeatures2.
Constructors
| BasicFeatureStruct :: SFeatureStruct PhysicalDeviceFeatures | |
| ExtendedFeatureStruct :: (Show feat, Extends PhysicalDeviceFeatures2 feat, Extends DeviceCreateInfo feat, Zero feat, FromCStruct feat, ToCStruct feat) => SFeatureStruct feat |
data SPropertyStruct prop where Source #
Singleton for a Vulkan structure that can appear in PhysicalDeviceProperties2.
It is either PhysicalDeviceProperties, or it Extends PhysicalDeviceProperties2.
Constructors
| BasicPropertyStruct :: SPropertyStruct PhysicalDeviceProperties | |
| ExtendedPropertyStruct :: (Typeable prop, Extends PhysicalDeviceProperties2 prop, FromCStruct prop, ToCStruct prop) => SPropertyStruct prop |