public static object Load(string filePath, AssetLoader loader) { // object alreadyLoaded = null; // if (loadedAssets.TryGetValue(filePath, out alreadyLoaded)) // { // return alreadyLoaded; // } if (!System.IO.File.Exists(filePath)) { throw new System.IO.FileNotFoundException("The file \"" + filePath + "\" does not exist!"); } loader.ResetLoader(); Stream stream = new FileStream(filePath, FileMode.Open); LoadedAsset asset = new LoadedAsset(stream, filePath); object loaded = loader.Load(asset); stream.Close(); // loadedAssets.Add(filePath, loaded); return(loaded); }
public static object Load(string filePath) { foreach (string str in loaders.Keys) { if (filePath.EndsWith(str, StringComparison.OrdinalIgnoreCase)) { AssetLoader loader = loaders[str]; loader.ResetLoader(); return(Load(filePath, loader)); } } throw new KeyNotFoundException("Could not find a registered asset loader for the filetype! File: " + filePath); }
public static object Load(string filePath, AssetLoader loader) { // object alreadyLoaded = null; // if (loadedAssets.TryGetValue(filePath, out alreadyLoaded)) // { // return alreadyLoaded; // } if (!System.IO.File.Exists(filePath)) throw new System.IO.FileNotFoundException("The file \"" + filePath + "\" does not exist!"); loader.ResetLoader(); Stream stream = new FileStream(filePath, FileMode.Open); LoadedAsset asset = new LoadedAsset(stream, filePath); object loaded = loader.Load(asset); stream.Close(); // loadedAssets.Add(filePath, loaded); return loaded; }