Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 835688b9 authored by Nikita Gupta's avatar Nikita Gupta Committed by Android (Google) Code Review
Browse files

Merge "Update vkjson" into main

parents 0c638dc9 3c2535d9
Loading
Loading
Loading
Loading
+1425 −592

File changed.

Preview size limit exceeded, changes collapsed.

+244 −35
Original line number Original line Diff line number Diff line
@@ -21,8 +21,8 @@
#ifndef VKJSON_H_
#ifndef VKJSON_H_
#define VKJSON_H_
#define VKJSON_H_


#include <vulkan/vulkan.h>
#include <string.h>
#include <string.h>
#include <vulkan/vulkan.h>


#include <map>
#include <map>
#include <string>
#include <string>
@@ -38,44 +38,233 @@ struct VkJsonLayer {
  std::vector<VkExtensionProperties> extensions;
  std::vector<VkExtensionProperties> extensions;
};
};


struct VkJsonExtDriverProperties {
struct VkJsonKHRVariablePointers {
  VkJsonExtDriverProperties() {
  VkJsonKHRVariablePointers() {
    reported = false;
    reported = false;
    memset(&driver_properties_khr, 0,
    memset(&variable_pointer_features_khr, 0,
           sizeof(VkPhysicalDeviceDriverPropertiesKHR));
           sizeof(VkPhysicalDeviceVariablePointerFeaturesKHR));
    memset(&variable_pointers_features_khr, 0,
           sizeof(VkPhysicalDeviceVariablePointersFeaturesKHR));
  }
  }
  bool reported;
  bool reported;
  VkPhysicalDeviceDriverPropertiesKHR driver_properties_khr;
  VkPhysicalDeviceVariablePointerFeaturesKHR variable_pointer_features_khr;
  VkPhysicalDeviceVariablePointersFeaturesKHR variable_pointers_features_khr;
};
};


struct VkJsonExtVariablePointerFeatures {
struct VkJsonKHRShaderFloat16Int8 {
  VkJsonExtVariablePointerFeatures() {
  VkJsonKHRShaderFloat16Int8() {
    reported = false;
    reported = false;
    memset(&variable_pointer_features_khr, 0,
    memset(&shader_float16_int8_features_khr, 0,
           sizeof(VkPhysicalDeviceVariablePointerFeaturesKHR));
           sizeof(VkPhysicalDeviceShaderFloat16Int8FeaturesKHR));
    memset(&float16_int8_features_khr, 0,
           sizeof(VkPhysicalDeviceFloat16Int8FeaturesKHR));
  }
  }
  bool reported;
  bool reported;
  VkPhysicalDeviceVariablePointerFeaturesKHR variable_pointer_features_khr;
  VkPhysicalDeviceShaderFloat16Int8FeaturesKHR shader_float16_int8_features_khr;
  VkPhysicalDeviceFloat16Int8FeaturesKHR float16_int8_features_khr;
};
};


struct VkJsonExtImage2DViewOf3DFeatures {
struct VkJsonExtImage2dViewOf3d {
  VkJsonExtImage2DViewOf3DFeatures() {
  VkJsonExtImage2dViewOf3d() {
    reported = false;
    reported = false;
    memset(&image_2D_view_of_3D_features_EXT, 0,
    memset(&image_2d_view_of_3d_features_ext, 0,
           sizeof(VkPhysicalDeviceImage2DViewOf3DFeaturesEXT));
           sizeof(VkPhysicalDeviceImage2DViewOf3DFeaturesEXT));
  }
  }
  bool reported;
  bool reported;
  VkPhysicalDeviceImage2DViewOf3DFeaturesEXT image_2D_view_of_3D_features_EXT;
  VkPhysicalDeviceImage2DViewOf3DFeaturesEXT image_2d_view_of_3d_features_ext;
};
};


struct VkJsonExtShaderFloat16Int8Features {
struct VkJsonExtCustomBorderColor {
  VkJsonExtShaderFloat16Int8Features() {
  VkJsonExtCustomBorderColor() {
    reported = false;
    reported = false;
    memset(&shader_float16_int8_features_khr, 0,
    memset(&custom_border_color_features_ext, 0,
           sizeof(VkPhysicalDeviceShaderFloat16Int8FeaturesKHR));
           sizeof(VkPhysicalDeviceCustomBorderColorFeaturesEXT));
  }
  }
  bool reported;
  bool reported;
  VkPhysicalDeviceShaderFloat16Int8FeaturesKHR shader_float16_int8_features_khr;
  VkPhysicalDeviceCustomBorderColorFeaturesEXT custom_border_color_features_ext;
};

struct VkJsonExtPrimitiveTopologyListRestart {
  VkJsonExtPrimitiveTopologyListRestart() {
    reported = false;
    memset(&primitive_topology_list_restart_features_ext, 0,
           sizeof(VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT));
  }
  bool reported;
  VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT
      primitive_topology_list_restart_features_ext;
};

struct VkJsonExtProvokingVertex {
  VkJsonExtProvokingVertex() {
    reported = false;
    memset(&provoking_vertex_features_ext, 0,
           sizeof(VkPhysicalDeviceProvokingVertexFeaturesEXT));
  }
  bool reported;
  VkPhysicalDeviceProvokingVertexFeaturesEXT provoking_vertex_features_ext;
};

struct VkJsonKHRIndexTypeUint8 {
  VkJsonKHRIndexTypeUint8() {
    reported = false;
    memset(&index_type_uint8_features_khr, 0,
           sizeof(VkPhysicalDeviceIndexTypeUint8FeaturesKHR));
  }
  bool reported;
  VkPhysicalDeviceIndexTypeUint8FeaturesKHR index_type_uint8_features_khr;
};

struct VkJsonExtIndexTypeUint8 {
  VkJsonExtIndexTypeUint8() {
    reported = false;
    memset(&index_type_uint8_features_ext, 0,
           sizeof(VkPhysicalDeviceIndexTypeUint8FeaturesEXT));
  }
  bool reported;
  VkPhysicalDeviceIndexTypeUint8FeaturesEXT index_type_uint8_features_ext;
};

struct VkJsonKHRVertexAttributeDivisor {
  VkJsonKHRVertexAttributeDivisor() {
    reported = false;
    memset(&vertex_attribute_divisor_features_khr, 0,
           sizeof(VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR));
  }
  bool reported;
  VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR
      vertex_attribute_divisor_features_khr;
};

struct VkJsonExtVertexAttributeDivisor {
  VkJsonExtVertexAttributeDivisor() {
    reported = false;
    memset(&vertex_attribute_divisor_features_ext, 0,
           sizeof(VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT));
  }
  bool reported;
  VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT
      vertex_attribute_divisor_features_ext;
};

struct VkJsonExtTransformFeedback {
  VkJsonExtTransformFeedback() {
    reported = false;
    memset(&transform_feedback_features_ext, 0,
           sizeof(VkPhysicalDeviceTransformFeedbackFeaturesEXT));
  }
  bool reported;
  VkPhysicalDeviceTransformFeedbackFeaturesEXT transform_feedback_features_ext;
};

struct VkJsonKHRShaderSubgroupUniformControlFlow {
  VkJsonKHRShaderSubgroupUniformControlFlow() {
    reported = false;
    memset(&shader_subgroup_uniform_control_flow_features_khr, 0,
           sizeof(VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR));
  }
  bool reported;
  VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR
      shader_subgroup_uniform_control_flow_features_khr;
};

struct VkJsonKHRShaderSubgroupExtendedTypes {
  VkJsonKHRShaderSubgroupExtendedTypes() {
    reported = false;
    memset(&shader_subgroup_extended_types_features_khr, 0,
           sizeof(VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR));
  }
  bool reported;
  VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR
      shader_subgroup_extended_types_features_khr;
};

struct VkJsonKHR8bitStorage {
  VkJsonKHR8bitStorage() {
    reported = false;
    memset(&bit8_storage_features_khr, 0,
           sizeof(VkPhysicalDevice8BitStorageFeaturesKHR));
  }
  bool reported;
  VkPhysicalDevice8BitStorageFeaturesKHR bit8_storage_features_khr;
};

struct VkJsonKHRShaderIntegerDotProduct {
  VkJsonKHRShaderIntegerDotProduct() {
    reported = false;
    memset(&shader_integer_dot_product_features_khr, 0,
           sizeof(VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR));
  }
  bool reported;
  VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR
      shader_integer_dot_product_features_khr;
};

struct VkJsonIMGRelaxedLineRasterization {
  VkJsonIMGRelaxedLineRasterization() {
    reported = false;
    memset(&relaxed_line_rasterization_features_img, 0,
           sizeof(VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG));
  }
  bool reported;
  VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG
      relaxed_line_rasterization_features_img;
};

struct VkJsonKHRLineRasterization {
  VkJsonKHRLineRasterization() {
    reported = false;
    memset(&line_rasterization_features_khr, 0,
           sizeof(VkPhysicalDeviceLineRasterizationFeaturesKHR));
  }
  bool reported;
  VkPhysicalDeviceLineRasterizationFeaturesKHR line_rasterization_features_khr;
};

struct VkJsonExtLineRasterization {
  VkJsonExtLineRasterization() {
    reported = false;
    memset(&line_rasterization_features_ext, 0,
           sizeof(VkPhysicalDeviceLineRasterizationFeaturesEXT));
  }
  bool reported;
  VkPhysicalDeviceLineRasterizationFeaturesEXT line_rasterization_features_ext;
};

struct VkJsonExtPrimitivesGeneratedQuery {
  VkJsonExtPrimitivesGeneratedQuery() {
    reported = false;
    memset(&primitives_generated_query_features_ext, 0,
           sizeof(VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT));
  }
  bool reported;
  VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT
      primitives_generated_query_features_ext;
};

struct VkJsonKHRShaderFloatControls {
  VkJsonKHRShaderFloatControls() {
    reported = false;
    memset(&float_controls_properties_khr, 0,
           sizeof(VkPhysicalDeviceFloatControlsPropertiesKHR));
  }
  bool reported;
  VkPhysicalDeviceFloatControlsPropertiesKHR float_controls_properties_khr;
};

struct VkJsonKHRDriverProperties {
  VkJsonKHRDriverProperties() {
    reported = false;
    memset(&driver_properties_khr, 0,
           sizeof(VkPhysicalDeviceDriverPropertiesKHR));
  }
  bool reported;
  VkPhysicalDeviceDriverPropertiesKHR driver_properties_khr;
};

struct VkJsonCore11 {
  VkPhysicalDeviceVulkan11Properties properties;
  VkPhysicalDeviceVulkan11Features features;
};
};


struct VkJsonCore12 {
struct VkJsonCore12 {
@@ -109,29 +298,48 @@ struct VkJsonDevice {
    memset(&bit16_storage_features, 0,
    memset(&bit16_storage_features, 0,
           sizeof(VkPhysicalDevice16BitStorageFeatures));
           sizeof(VkPhysicalDevice16BitStorageFeatures));
    memset(&multiview_features, 0, sizeof(VkPhysicalDeviceMultiviewFeatures));
    memset(&multiview_features, 0, sizeof(VkPhysicalDeviceMultiviewFeatures));
    memset(&variable_pointer_features, 0,
    memset(&variable_pointers_features, 0,
           sizeof(VkPhysicalDeviceVariablePointerFeatures));
           sizeof(VkPhysicalDeviceVariablePointersFeatures));
    memset(&protected_memory_features, 0,
    memset(&protected_memory_features, 0,
           sizeof(VkPhysicalDeviceProtectedMemoryFeatures));
           sizeof(VkPhysicalDeviceProtectedMemoryFeatures));
    memset(&sampler_ycbcr_conversion_features, 0,
    memset(&sampler_ycbcr_conversion_features, 0,
           sizeof(VkPhysicalDeviceSamplerYcbcrConversionFeatures));
           sizeof(VkPhysicalDeviceSamplerYcbcrConversionFeatures));
    memset(&shader_draw_parameter_features, 0,
    memset(&shader_draw_parameter_features, 0,
           sizeof(VkPhysicalDeviceShaderDrawParameterFeatures));
           sizeof(VkPhysicalDeviceShaderDrawParameterFeatures));
    memset(&core11, 0, sizeof(VkJsonCore11));
    memset(&core12, 0, sizeof(VkJsonCore12));
    memset(&core12, 0, sizeof(VkJsonCore12));
    memset(&core13, 0, sizeof(VkJsonCore13));
    memset(&core13, 0, sizeof(VkJsonCore13));
    memset(&core14, 0, sizeof(VkJsonCore14));
    memset(&core14, 0, sizeof(VkJsonCore14));
  }
  }
  VkJsonKHRVariablePointers khr_variable_pointers;
  VkJsonKHRShaderFloat16Int8 khr_shader_float16_int8;
  VkJsonExtImage2dViewOf3d ext_image_2d_view_of_3d;
  VkJsonExtCustomBorderColor ext_custom_border_color;
  VkJsonExtPrimitiveTopologyListRestart ext_primitive_topology_list_restart;
  VkJsonExtProvokingVertex ext_provoking_vertex;
  VkJsonKHRIndexTypeUint8 khr_index_type_uint8;
  VkJsonExtIndexTypeUint8 ext_index_type_uint8;
  VkJsonKHRVertexAttributeDivisor khr_vertex_attribute_divisor;
  VkJsonExtVertexAttributeDivisor ext_vertex_attribute_divisor;
  VkJsonExtTransformFeedback ext_transform_feedback;
  VkJsonKHRShaderSubgroupUniformControlFlow
      khr_shader_subgroup_uniform_control_flow;
  VkJsonKHRShaderSubgroupExtendedTypes khr_shader_subgroup_extended_types;
  VkJsonKHR8bitStorage khr_8bit_storage;
  VkJsonKHRShaderIntegerDotProduct khr_shader_integer_dot_product;
  VkJsonIMGRelaxedLineRasterization img_relaxed_line_rasterization;
  VkJsonKHRLineRasterization khr_line_rasterization;
  VkJsonExtLineRasterization ext_line_rasterization;
  VkJsonExtPrimitivesGeneratedQuery ext_primitives_generated_query;
  VkJsonKHRShaderFloatControls khr_shader_float_controls;
  VkJsonKHRDriverProperties khr_driver_properties;
  VkJsonCore11 core11;
  VkJsonCore12 core12;
  VkJsonCore13 core13;
  VkJsonCore14 core14;
  VkPhysicalDeviceProperties properties;
  VkPhysicalDeviceProperties properties;
  VkPhysicalDeviceFeatures features;
  VkPhysicalDeviceFeatures features;
  VkJsonExtDriverProperties ext_driver_properties;
  VkJsonExtVariablePointerFeatures ext_variable_pointer_features;
  VkJsonExtImage2DViewOf3DFeatures ext_image_2d_view_of_3d_features;
  VkJsonExtShaderFloat16Int8Features ext_shader_float16_int8_features;
  VkPhysicalDeviceMemoryProperties memory;
  VkPhysicalDeviceMemoryProperties memory;
  std::vector<VkQueueFamilyProperties> queues;
  std::vector<VkExtensionProperties> extensions;
  std::vector<VkLayerProperties> layers;
  std::map<VkFormat, VkFormatProperties> formats;
  VkPhysicalDeviceSubgroupProperties subgroup_properties;
  VkPhysicalDeviceSubgroupProperties subgroup_properties;
  VkPhysicalDevicePointClippingProperties point_clipping_properties;
  VkPhysicalDevicePointClippingProperties point_clipping_properties;
  VkPhysicalDeviceMultiviewProperties multiview_properties;
  VkPhysicalDeviceMultiviewProperties multiview_properties;
@@ -139,18 +347,19 @@ struct VkJsonDevice {
  VkPhysicalDeviceMaintenance3Properties maintenance3_properties;
  VkPhysicalDeviceMaintenance3Properties maintenance3_properties;
  VkPhysicalDevice16BitStorageFeatures bit16_storage_features;
  VkPhysicalDevice16BitStorageFeatures bit16_storage_features;
  VkPhysicalDeviceMultiviewFeatures multiview_features;
  VkPhysicalDeviceMultiviewFeatures multiview_features;
  VkPhysicalDeviceVariablePointerFeatures variable_pointer_features;
  VkPhysicalDeviceVariablePointersFeatures variable_pointers_features;
  VkPhysicalDeviceProtectedMemoryFeatures protected_memory_features;
  VkPhysicalDeviceProtectedMemoryFeatures protected_memory_features;
  VkPhysicalDeviceSamplerYcbcrConversionFeatures
  VkPhysicalDeviceSamplerYcbcrConversionFeatures
      sampler_ycbcr_conversion_features;
      sampler_ycbcr_conversion_features;
  VkPhysicalDeviceShaderDrawParameterFeatures shader_draw_parameter_features;
  VkPhysicalDeviceShaderDrawParameterFeatures shader_draw_parameter_features;
  std::vector<VkQueueFamilyProperties> queues;
  std::vector<VkExtensionProperties> extensions;
  std::vector<VkLayerProperties> layers;
  std::map<VkFormat, VkFormatProperties> formats;
  std::map<VkExternalFenceHandleTypeFlagBits, VkExternalFenceProperties>
  std::map<VkExternalFenceHandleTypeFlagBits, VkExternalFenceProperties>
      external_fence_properties;
      external_fence_properties;
  std::map<VkExternalSemaphoreHandleTypeFlagBits, VkExternalSemaphoreProperties>
  std::map<VkExternalSemaphoreHandleTypeFlagBits, VkExternalSemaphoreProperties>
      external_semaphore_properties;
      external_semaphore_properties;
  VkJsonCore12 core12;
  VkJsonCore13 core13;
  VkJsonCore14 core14;
};
};


struct VkJsonDeviceGroup {
struct VkJsonDeviceGroup {
+237 −34

File changed.

Preview size limit exceeded, changes collapsed.