|
|
|
@ -65,6 +65,8 @@ enum class Interpolation { |
|
|
|
struct ConstantBufferDescriptor { |
|
|
|
u32 index; |
|
|
|
u32 count; |
|
|
|
|
|
|
|
auto operator<=>(const ConstantBufferDescriptor&) const = default; |
|
|
|
}; |
|
|
|
|
|
|
|
struct StorageBufferDescriptor { |
|
|
|
@ -72,6 +74,8 @@ struct StorageBufferDescriptor { |
|
|
|
u32 cbuf_offset; |
|
|
|
u32 count; |
|
|
|
bool is_written; |
|
|
|
|
|
|
|
auto operator<=>(const StorageBufferDescriptor&) const = default; |
|
|
|
}; |
|
|
|
|
|
|
|
struct TextureBufferDescriptor { |
|
|
|
@ -84,6 +88,8 @@ struct TextureBufferDescriptor { |
|
|
|
u32 secondary_shift_left; |
|
|
|
u32 count; |
|
|
|
u32 size_shift; |
|
|
|
|
|
|
|
auto operator<=>(const TextureBufferDescriptor&) const = default; |
|
|
|
}; |
|
|
|
using TextureBufferDescriptors = boost::container::small_vector<TextureBufferDescriptor, 6>; |
|
|
|
|
|
|
|
@ -95,6 +101,8 @@ struct ImageBufferDescriptor { |
|
|
|
u32 cbuf_offset; |
|
|
|
u32 count; |
|
|
|
u32 size_shift; |
|
|
|
|
|
|
|
auto operator<=>(const ImageBufferDescriptor&) const = default; |
|
|
|
}; |
|
|
|
using ImageBufferDescriptors = boost::container::small_vector<ImageBufferDescriptor, 2>; |
|
|
|
|
|
|
|
@ -110,6 +118,8 @@ struct TextureDescriptor { |
|
|
|
u32 secondary_shift_left; |
|
|
|
u32 count; |
|
|
|
u32 size_shift; |
|
|
|
|
|
|
|
auto operator<=>(const TextureDescriptor&) const = default; |
|
|
|
}; |
|
|
|
using TextureDescriptors = boost::container::small_vector<TextureDescriptor, 12>; |
|
|
|
|
|
|
|
@ -122,6 +132,8 @@ struct ImageDescriptor { |
|
|
|
u32 cbuf_offset; |
|
|
|
u32 count; |
|
|
|
u32 size_shift; |
|
|
|
|
|
|
|
auto operator<=>(const ImageDescriptor&) const = default; |
|
|
|
}; |
|
|
|
using ImageDescriptors = boost::container::small_vector<ImageDescriptor, 4>; |
|
|
|
|
|
|
|
|