using System; namespace BF { public abstract class LoaderBase { protected ResourceManager resMgr; public LoaderBase() { resMgr = BFMain.Instance.ResMgr; } public virtual void LoadAssetAsync(AssetObject assetObject) { } public abstract AssetObject LoadAssetAsync(string assetPath, Type type, Action complete); public abstract void LoadAssetSync(AssetObject assetObject); public abstract AssetObject LoadAssetSync(string assetPath, Type type); public virtual void Tick() { } public abstract void Unload(AssetObject asset, bool immediately); public abstract void UnloadAllDelayAssets(); public abstract string GetSceneLoadPath(string assetBundlePath); public abstract void LoadSceneAsync(string assetBundlePath, Action complete); public abstract void UnloadScene(string assetBundlePath); public abstract void Clear(); public abstract bool ContainsAsset(string assetPath); } }