public Result Free(IMgDescriptorPool descriptorPool, IMgDescriptorSet[] pDescriptorSets) { if (descriptorPool == null) { throw new ArgumentNullException(nameof(descriptorPool)); } if (pDescriptorSets == null) { throw new ArgumentNullException(nameof(pDescriptorSets)); } var parentPool = (IGLNextDescriptorPool)descriptorPool; foreach (var descSet in pDescriptorSets) { var bDescSet = (IGLDescriptorSet)descSet; if (bDescSet != null && ReferenceEquals(parentPool, bDescSet.Parent)) { if (bDescSet.IsValidDescriptorSet) { foreach (var resource in bDescSet.Resources) { parentPool.ResetResource(resource); } bDescSet.Invalidate(); parentPool.AllocatedSets.Remove(bDescSet.Key); } } } return(Result.SUCCESS); }
public MgThreadPartition( IMgPhysicalDevice physicalDevice, IMgDevice device, IMgQueue queue, IMgCommandPool commandPool, IMgDescriptorPool descPool, MgPhysicalDeviceMemoryProperties deviceMemoryProperties) { mPhysicalDevice = physicalDevice; mDevice = device; this.Queue = queue; this.CommandPool = commandPool; this.DescriptorPool = descPool; mDeviceMemoryProperties = deviceMemoryProperties; }
public Result FreeDescriptorSets(IMgDescriptorPool descriptorPool, IMgDescriptorSet[] pDescriptorSets) { throw new NotImplementedException(); }
public Result CreateDescriptorPool(MgDescriptorPoolCreateInfo pCreateInfo, IMgAllocationCallbacks allocator, out IMgDescriptorPool pDescriptorPool) { pDescriptorPool = new AmtDescriptorPool(pCreateInfo); return(Result.SUCCESS); }
public Result FreeDescriptorSets(IMgDescriptorPool descriptorPool, IMgDescriptorSet[] pDescriptorSets) { return(mEntrypoint.DescriptorSet.Free(descriptorPool, pDescriptorSets)); }
public Result ResetDescriptorPool(IMgDescriptorPool descriptorPool, uint flags) { throw new NotImplementedException(); }
public Result CreateDescriptorPool(MgDescriptorPoolCreateInfo pCreateInfo, IMgAllocationCallbacks allocator, out IMgDescriptorPool pDescriptorPool) { throw new NotImplementedException(); }