﻿using System.Collections.Generic;

namespace JLGames.RocketDriver.Games.PanelManager
{
    public interface IPanelLoaderAdapter
    {
        /// <summary>
        /// Load sprite
        /// 下载图片精灵
        /// </summary>
        /// <param name="bundleName"></param>
        /// <param name="assetPath"></param>
        /// <param name="onSpriteLoaded"></param>
        void LoadSprite(string bundleName, string assetPath, PanelLoaderDelegate.OnSpriteLoaded onSpriteLoaded);

        /// <summary>
        /// Load panel asset
        /// 下载面板资源
        /// </summary>
        /// <param name="assetInfo"></param>
        /// <param name="onPanelLoaded"></param>
        void LoadPanelAsset(IPanelAssetSettings assetInfo, PanelLoaderDelegate.OnPanelLoaded onPanelLoaded);

        /// <summary>
        /// Load multi panel assets
        /// 批量下载面板资源
        /// </summary>
        /// <param name="assetInfos"></param>
        /// <param name="onPanelsLoaded"></param>
        void LoadPanelsAssets(IEnumerable<IPanelAssetSettings> assetInfos, PanelLoaderDelegate.OnPanelsLoaded onPanelsLoaded);
    }
}