| 21 | static char const * EngineName = "Vulkan.hpp"; |
| 22 | |
| 23 | int main() |
| 24 | { |
| 25 | try |
| 26 | { |
| 27 | vk::Instance instance = vk::su::createInstance( AppName, EngineName, {}, {}, VK_API_VERSION_1_1 ); |
| 28 | #if !defined( NDEBUG ) |
| 29 | vk::DebugUtilsMessengerEXT debugUtilsMessenger = instance.createDebugUtilsMessengerEXT( vk::su::makeDebugUtilsMessengerCreateInfoEXT() ); |
| 30 | #endif |
| 31 | |
| 32 | // enumerate the physicalDevices |
| 33 | std::vector<vk::PhysicalDevice> physicalDevices = instance.enumeratePhysicalDevices(); |
| 34 | |
| 35 | /* VULKAN_KEY_START */ |
| 36 | |
| 37 | std::cout << std::boolalpha; |
| 38 | for ( size_t i = 0; i < physicalDevices.size(); i++ ) |
| 39 | { |
| 40 | // some features are only valid, if a corresponding extension is available! |
| 41 | std::vector<vk::ExtensionProperties> extensionProperties = physicalDevices[i].enumerateDeviceExtensionProperties(); |
| 42 | |
| 43 | std::cout << "PhysicalDevice " << i << " :\n"; |
| 44 | auto features2 = physicalDevices[i] |
| 45 | .getFeatures2<vk::PhysicalDeviceFeatures2, |
| 46 | vk::PhysicalDevice16BitStorageFeatures, |
| 47 | vk::PhysicalDevice8BitStorageFeaturesKHR, |
| 48 | vk::PhysicalDeviceASTCDecodeFeaturesEXT, |
| 49 | vk::PhysicalDeviceBlendOperationAdvancedFeaturesEXT, |
| 50 | vk::PhysicalDeviceBufferDeviceAddressFeaturesEXT, |
| 51 | vk::PhysicalDeviceCoherentMemoryFeaturesAMD, |
| 52 | vk::PhysicalDeviceComputeShaderDerivativesFeaturesNV, |
| 53 | vk::PhysicalDeviceConditionalRenderingFeaturesEXT, |
| 54 | vk::PhysicalDeviceCooperativeMatrixFeaturesNV, |
| 55 | vk::PhysicalDeviceCornerSampledImageFeaturesNV, |
| 56 | vk::PhysicalDeviceCoverageReductionModeFeaturesNV, |
| 57 | vk::PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, |
| 58 | vk::PhysicalDeviceDepthClipEnableFeaturesEXT, |
| 59 | vk::PhysicalDeviceDescriptorIndexingFeaturesEXT, |
| 60 | vk::PhysicalDeviceExclusiveScissorFeaturesNV, |
| 61 | vk::PhysicalDeviceFragmentDensityMapFeaturesEXT, |
| 62 | vk::PhysicalDeviceFragmentShaderBarycentricFeaturesNV, |
| 63 | vk::PhysicalDeviceFragmentShaderInterlockFeaturesEXT, |
| 64 | vk::PhysicalDeviceHostQueryResetFeaturesEXT, |
| 65 | vk::PhysicalDeviceImagelessFramebufferFeaturesKHR, |
| 66 | vk::PhysicalDeviceIndexTypeUint8FeaturesEXT, |
| 67 | vk::PhysicalDeviceInlineUniformBlockFeaturesEXT, |
| 68 | vk::PhysicalDeviceLineRasterizationFeaturesEXT, |
| 69 | vk::PhysicalDeviceMemoryPriorityFeaturesEXT, |
| 70 | vk::PhysicalDeviceMeshShaderFeaturesNV, |
| 71 | vk::PhysicalDeviceMultiviewFeatures, |
| 72 | vk::PhysicalDevicePipelineExecutablePropertiesFeaturesKHR, |
| 73 | vk::PhysicalDeviceProtectedMemoryFeatures, |
| 74 | vk::PhysicalDeviceRepresentativeFragmentTestFeaturesNV, |
| 75 | vk::PhysicalDeviceSamplerYcbcrConversionFeatures, |
| 76 | vk::PhysicalDeviceScalarBlockLayoutFeaturesEXT, |
| 77 | vk::PhysicalDeviceShaderAtomicInt64FeaturesKHR, |
| 78 | vk::PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT, |
| 79 | vk::PhysicalDeviceShaderDrawParametersFeatures, |
| 80 | vk::PhysicalDeviceShaderFloat16Int8FeaturesKHR, |
nothing calls this directly
no test coverage detected