@@ -22,7 +22,7 @@ namespace nbl::video
22
22
size_t size = 0ull ;
23
23
core::bitflag<IDeviceMemoryAllocation::E_MEMORY_PROPERTY_FLAGS> memoryFlags = IDeviceMemoryAllocation::E_MEMORY_PROPERTY_FLAGS::EMPF_NONE;
24
24
};
25
- MemoryRequirement* memoryRequirements = nullptr ;
25
+ const MemoryRequirement* memoryRequirements = nullptr ;
26
26
uint32_t memoryRequirementsCount = 0u ;
27
27
28
28
struct QueueRequirement
@@ -33,7 +33,7 @@ namespace nbl::video
33
33
// family's transfer granularity needs to be <=
34
34
asset::VkExtent3D maxImageTransferGranularity = {0x80000000u ,0x80000000u ,0x80000000u };
35
35
};
36
- QueueRequirement* queueRequirements = nullptr ;
36
+ const QueueRequirement* queueRequirements = nullptr ;
37
37
uint32_t queueRequirementsCount = 0u ;
38
38
39
39
// To determine whether a queue family of a physical device supports presentation to a given surface
@@ -49,9 +49,9 @@ namespace nbl::video
49
49
50
50
51
51
// sift through multiple devices
52
- core::set<const IPhysicalDevice*> operator ()(core::SRange<const IPhysicalDevice* const > physicalDevices) const
52
+ core::set<IPhysicalDevice*> operator ()(const core::SRange<IPhysicalDevice* const >& physicalDevices) const
53
53
{
54
- core::set<const IPhysicalDevice*> ret;
54
+ core::set<IPhysicalDevice*> ret;
55
55
for (auto & physDev : physicalDevices)
56
56
if (meetsRequirements (physDev))
57
57
ret.insert (physDev);
@@ -168,9 +168,9 @@ namespace nbl::video
168
168
if ((queueFamilyProps.queueFlags & queueReqs.disallowedFlags ).value == 0 )
169
169
{
170
170
// imageTransferGranularity
171
- if (queueReqs.maxImageTransferGranularity .width > queueFamilyProps.minImageTransferGranularity .width &&
172
- queueReqs.maxImageTransferGranularity .height > queueFamilyProps.minImageTransferGranularity .height &&
173
- queueReqs.maxImageTransferGranularity .depth > queueFamilyProps.minImageTransferGranularity .depth )
171
+ if (queueReqs.maxImageTransferGranularity .width >= queueFamilyProps.minImageTransferGranularity .width &&
172
+ queueReqs.maxImageTransferGranularity .height >= queueFamilyProps.minImageTransferGranularity .height &&
173
+ queueReqs.maxImageTransferGranularity .depth >= queueFamilyProps.minImageTransferGranularity .depth )
174
174
{
175
175
queueCount = (queueFamilyProps.queueCount > queueCount) ? 0ull : queueCount - queueFamilyProps.queueCount ;
176
176
}
0 commit comments