示例#1
0
        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);
        }
示例#2
0
        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);
        }
示例#3
0
        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;
        }