using System;
using System.Collections.Generic;
using UnityEngine.ResourceManagement.AsyncOperations;
using UnityEngine.ResourceManagement.ResourceLocations;
using UnityEngine.ResourceManagement.Util;
using UnityEngine.SceneManagement;
namespace UnityEngine.ResourceManagement.ResourceProviders
{
///
/// Options for resource provider behavior.
///
public enum ProviderBehaviourFlags
{
///
/// Indicates that the provider does not have extra specified behavior.
///
None = 0,
///
/// Indicates that the provider will still fulfill requests even with failed dependencies.
///
CanProvideWithFailedDependencies = 1
}
///
/// Container for all data need by providers to fulfill requests.
///
public struct ProvideHandle
{
int m_Version;
IGenericProviderOperation m_InternalOp;
ResourceManager m_ResourceManager;
internal ProvideHandle(ResourceManager rm, IGenericProviderOperation op)
{
m_ResourceManager = rm;
m_InternalOp = op;
m_Version = op.ProvideHandleVersion;
}
IGenericProviderOperation InternalOp
{
get
{
if (m_InternalOp.ProvideHandleVersion != m_Version)
{
throw new Exception(ProviderOperation