//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 loyalsoft. All rights reserved.
// Homepage: http://www.game7000.com/
// Feedback: http://www.game7000.com/
//------------------------------------------------------------
namespace GameFramework.Resource
{
///
/// 加载资源回调函数集。
///
public sealed class LoadAssetCallbacks
{
private readonly LoadAssetSuccessCallback m_LoadAssetSuccessCallback;
private readonly LoadAssetFailureCallback m_LoadAssetFailureCallback;
private readonly LoadAssetUpdateCallback m_LoadAssetUpdateCallback;
private readonly LoadAssetDependencyAssetCallback m_LoadAssetDependencyAssetCallback;
///
/// 初始化加载资源回调函数集的新实例。
///
/// 加载资源成功回调函数。
public LoadAssetCallbacks(LoadAssetSuccessCallback loadAssetSuccessCallback)
: this(loadAssetSuccessCallback, null, null, null)
{
}
///
/// 初始化加载资源回调函数集的新实例。
///
/// 加载资源成功回调函数。
/// 加载资源失败回调函数。
public LoadAssetCallbacks(LoadAssetSuccessCallback loadAssetSuccessCallback, LoadAssetFailureCallback loadAssetFailureCallback)
: this(loadAssetSuccessCallback, loadAssetFailureCallback, null, null)
{
}
///
/// 初始化加载资源回调函数集的新实例。
///
/// 加载资源成功回调函数。
/// 加载资源更新回调函数。
public LoadAssetCallbacks(LoadAssetSuccessCallback loadAssetSuccessCallback, LoadAssetUpdateCallback loadAssetUpdateCallback)
: this(loadAssetSuccessCallback, null, loadAssetUpdateCallback, null)
{
}
///
/// 初始化加载资源回调函数集的新实例。
///
/// 加载资源成功回调函数。
/// 加载资源时加载依赖资源回调函数。
public LoadAssetCallbacks(LoadAssetSuccessCallback loadAssetSuccessCallback, LoadAssetDependencyAssetCallback loadAssetDependencyAssetCallback)
: this(loadAssetSuccessCallback, null, null, loadAssetDependencyAssetCallback)
{
}
///
/// 初始化加载资源回调函数集的新实例。
///
/// 加载资源成功回调函数。
/// 加载资源失败回调函数。
/// 加载资源更新回调函数。
public LoadAssetCallbacks(LoadAssetSuccessCallback loadAssetSuccessCallback, LoadAssetFailureCallback loadAssetFailureCallback, LoadAssetUpdateCallback loadAssetUpdateCallback)
: this(loadAssetSuccessCallback, loadAssetFailureCallback, loadAssetUpdateCallback, null)
{
}
///
/// 初始化加载资源回调函数集的新实例。
///
/// 加载资源成功回调函数。
/// 加载资源失败回调函数。
/// 加载资源时加载依赖资源回调函数。
public LoadAssetCallbacks(LoadAssetSuccessCallback loadAssetSuccessCallback, LoadAssetFailureCallback loadAssetFailureCallback, LoadAssetDependencyAssetCallback loadAssetDependencyAssetCallback)
: this(loadAssetSuccessCallback, loadAssetFailureCallback, null, loadAssetDependencyAssetCallback)
{
}
///
/// 初始化加载资源回调函数集的新实例。
///
/// 加载资源成功回调函数。
/// 加载资源失败回调函数。
/// 加载资源更新回调函数。
/// 加载资源时加载依赖资源回调函数。
public LoadAssetCallbacks(LoadAssetSuccessCallback loadAssetSuccessCallback, LoadAssetFailureCallback loadAssetFailureCallback, LoadAssetUpdateCallback loadAssetUpdateCallback, LoadAssetDependencyAssetCallback loadAssetDependencyAssetCallback)
{
if (loadAssetSuccessCallback == null)
{
throw new GameFrameworkException("Load asset success callback is invalid.");
}
m_LoadAssetSuccessCallback = loadAssetSuccessCallback;
m_LoadAssetFailureCallback = loadAssetFailureCallback;
m_LoadAssetUpdateCallback = loadAssetUpdateCallback;
m_LoadAssetDependencyAssetCallback = loadAssetDependencyAssetCallback;
}
///
/// 获取加载资源成功回调函数。
///
public LoadAssetSuccessCallback LoadAssetSuccessCallback
{
get
{
return m_LoadAssetSuccessCallback;
}
}
///
/// 获取加载资源失败回调函数。
///
public LoadAssetFailureCallback LoadAssetFailureCallback
{
get
{
return m_LoadAssetFailureCallback;
}
}
///
/// 获取加载资源更新回调函数。
///
public LoadAssetUpdateCallback LoadAssetUpdateCallback
{
get
{
return m_LoadAssetUpdateCallback;
}
}
///
/// 获取加载资源时加载依赖资源回调函数。
///
public LoadAssetDependencyAssetCallback LoadAssetDependencyAssetCallback
{
get
{
return m_LoadAssetDependencyAssetCallback;
}
}
}
}