/// <summary>
 /// Get a texture from the cache, you need to dispose the TextureCacheHandle that is
 /// returned through the image out variable.
 /// </summary>
 /// <param name="textureName"></param>
 /// <param name="image"></param>
 /// <returns></returns>
 private bool TryGetValue(string textureName, out TextureCacheHandle image)
 {
     lock (syncObject)
     {
         bool ret = loadedImages.TryGetValue(textureName, out image);
         if (ret)
         {
             lastAccessedOrder.Remove(textureName);
             lastAccessedOrder.AddFirst(textureName);
             image.checkout();
         }
         return(ret);
     }
 }
 public TexturePageHandle(PixelBox pixelBox, TextureCacheHandle cacheHandle, IDisposable additionalDisposable = null)
 {
     this.pixelBox             = pixelBox;
     this.cacheHandle          = cacheHandle;
     this.additionalDisposable = additionalDisposable;
 }