97 lines
4.2 KiB
C#
97 lines
4.2 KiB
C#
//------------------------------------------------------------
|
|
// Game Framework
|
|
// Copyright © 2013-2021 Jiang Yin. All rights reserved.
|
|
// Homepage: https://gameframework.cn/
|
|
// Feedback: mailto:ellan@gameframework.cn
|
|
//------------------------------------------------------------
|
|
|
|
using GameFramework.FileSystem;
|
|
using GameFramework.Resource;
|
|
using System;
|
|
using UnityEngine;
|
|
|
|
namespace UnityGameFramework.Runtime
|
|
{
|
|
/// <summary>
|
|
/// 加载资源代理辅助器基类。
|
|
/// </summary>
|
|
public abstract class LoadResourceAgentHelperBase : MonoBehaviour, ILoadResourceAgentHelper
|
|
{
|
|
/// <summary>
|
|
/// 加载资源代理辅助器异步加载资源更新事件。
|
|
/// </summary>
|
|
public abstract event EventHandler<LoadResourceAgentHelperUpdateEventArgs> LoadResourceAgentHelperUpdate;
|
|
|
|
/// <summary>
|
|
/// 加载资源代理辅助器异步读取资源文件完成事件。
|
|
/// </summary>
|
|
public abstract event EventHandler<LoadResourceAgentHelperReadFileCompleteEventArgs> LoadResourceAgentHelperReadFileComplete;
|
|
|
|
/// <summary>
|
|
/// 加载资源代理辅助器异步读取资源二进制流完成事件。
|
|
/// </summary>
|
|
public abstract event EventHandler<LoadResourceAgentHelperReadBytesCompleteEventArgs> LoadResourceAgentHelperReadBytesComplete;
|
|
|
|
/// <summary>
|
|
/// 加载资源代理辅助器异步将资源二进制流转换为加载对象完成事件。
|
|
/// </summary>
|
|
public abstract event EventHandler<LoadResourceAgentHelperParseBytesCompleteEventArgs> LoadResourceAgentHelperParseBytesComplete;
|
|
|
|
/// <summary>
|
|
/// 加载资源代理辅助器异步加载资源完成事件。
|
|
/// </summary>
|
|
public abstract event EventHandler<LoadResourceAgentHelperLoadCompleteEventArgs> LoadResourceAgentHelperLoadComplete;
|
|
|
|
/// <summary>
|
|
/// 加载资源代理辅助器错误事件。
|
|
/// </summary>
|
|
public abstract event EventHandler<LoadResourceAgentHelperErrorEventArgs> LoadResourceAgentHelperError;
|
|
|
|
/// <summary>
|
|
/// 通过加载资源代理辅助器开始异步读取资源文件。
|
|
/// </summary>
|
|
/// <param name="fullPath">要加载资源的完整路径名。</param>
|
|
public abstract void ReadFile(string fullPath);
|
|
|
|
/// <summary>
|
|
/// 通过加载资源代理辅助器开始异步读取资源文件。
|
|
/// </summary>
|
|
/// <param name="fileSystem">要加载资源的文件系统。</param>
|
|
/// <param name="name">要加载资源的名称。</param>
|
|
public abstract void ReadFile(IFileSystem fileSystem, string name);
|
|
|
|
/// <summary>
|
|
/// 通过加载资源代理辅助器开始异步读取资源二进制流。
|
|
/// </summary>
|
|
/// <param name="fullPath">要加载资源的完整路径名。</param>
|
|
public abstract void ReadBytes(string fullPath);
|
|
|
|
/// <summary>
|
|
/// 通过加载资源代理辅助器开始异步读取资源二进制流。
|
|
/// </summary>
|
|
/// <param name="fileSystem">要加载资源的文件系统。</param>
|
|
/// <param name="name">要加载资源的名称。</param>
|
|
public abstract void ReadBytes(IFileSystem fileSystem, string name);
|
|
|
|
/// <summary>
|
|
/// 通过加载资源代理辅助器开始异步将资源二进制流转换为加载对象。
|
|
/// </summary>
|
|
/// <param name="bytes">要加载资源的二进制流。</param>
|
|
public abstract void ParseBytes(byte[] bytes);
|
|
|
|
/// <summary>
|
|
/// 通过加载资源代理辅助器开始异步加载资源。
|
|
/// </summary>
|
|
/// <param name="resource">资源。</param>
|
|
/// <param name="assetName">要加载的资源名称。</param>
|
|
/// <param name="assetType">要加载资源的类型。</param>
|
|
/// <param name="isScene">要加载的资源是否是场景。</param>
|
|
public abstract void LoadAsset(object resource, string assetName, Type assetType, bool isScene);
|
|
|
|
/// <summary>
|
|
/// 重置加载资源代理辅助器。
|
|
/// </summary>
|
|
public abstract void Reset();
|
|
}
|
|
}
|