getFrame method
Implementation
Future<ui.Image?> getFrame(String framePath) async {
// Si ya está en caché, devolverlo
if (_cache.containsKey(framePath)) {
return _cache[framePath];
}
// Si ya se está cargando, esperar el resultado
if (_loadingCache.containsKey(framePath)) {
return await _loadingCache[framePath];
}
// Iniciar carga
final loadingFuture = _loadFrameFromDisk(framePath);
_loadingCache[framePath] = loadingFuture;
final image = await loadingFuture;
_loadingCache.remove(framePath);
if (image != null) {
_cache[framePath] = image;
}
return image;
}