namespace Ryujinx.Graphics.Gpu.Image
{
///
/// Sampler pool cache.
/// This can keep multiple sampler pools, and return the current one as needed.
/// It is useful for applications that uses multiple sampler pools.
///
class SamplerPoolCache : PoolCache
{
///
/// Constructs a new instance of the texture pool.
///
/// GPU context that the texture pool belongs to
public SamplerPoolCache(GpuContext context) : base(context)
{
}
///
/// Creates a new instance of the sampler pool.
///
/// GPU context that the sampler pool belongs to
/// GPU channel that the texture pool belongs to
/// Address of the sampler pool in guest memory
/// Maximum sampler ID of the sampler pool (equal to maximum samplers minus one)
protected override SamplerPool CreatePool(GpuContext context, GpuChannel channel, ulong address, int maximumId)
{
return new SamplerPool(context, channel.MemoryManager.Physical, address, maximumId);
}
}
}