using System; using System.Collections.Generic; namespace UnityEngine.ResourceManagement.ResourceLocations { /// /// Contains enough information to load an asset (what/where/how/dependencies) /// public interface IResourceLocation { /// /// Internal name used by the provider to load this location /// /// The identifier. string InternalId { get; } /// /// Matches the provider used to provide/load this location /// /// The provider id. string ProviderId { get; } /// /// Gets the dependencies to other IResourceLocations /// /// The dependencies. IList Dependencies { get; } /// /// The hash of this location combined with the specified type. /// /// The type of the result. /// The combined hash of the location and the type. int Hash(Type resultType); /// /// The precomputed hash code of the dependencies. /// int DependencyHashCode { get; } /// /// Gets the dependencies to other IResourceLocations /// /// The dependencies. bool HasDependencies { get; } /// /// Gets any data object associated with this locations /// /// The object. object Data { get; } /// /// Primary address for this location. /// string PrimaryKey { get; } /// /// The type of the resource for th location. /// Type ResourceType { get; } } }