Stride

OPEN / CLOSE
  • Features
  • Blog
  • Documentation
  • Community
(icon) Download

  • Discord
  • Facebook
  • Twitter
  • YouTube

LANGUAGE

OPEN / CLOSE
  • English
  • 日本語
    Show / Hide Table of Contents

    AssetItem Class

    Namespace: Stride.Core.Assets
    Assembly: Stride.Core.Assets.dll

    An asset item part of a Package accessible through Assets.

    System.Object → AssetItem
    Derived from AssetItem:

    [DataContract("AssetItem")]
    public sealed class AssetItem : IFileSynchronizable
    Name Description
    Constructors
    AssetItem(UFile, Asset)

    Initializes a new instance of the AssetItem class.

    Fields
    DefaultComparerById

    The default comparer use only the id of an assetitem to match assets.

    Properties
    AlternativePath

    Gets or sets the real location of this asset if it is overriden (similar to Link in C# project files).

    Asset

    Gets or sets the asset.

    FullPath

    Gets the full absolute path of this asset on the disk, taking into account the SourceFolder, and the RootDirectory. See remarks.

    Id

    Gets the unique identifier of this asset.

    IsDeleted
    IsDirty

    Gets or sets a value indicating whether this instance is dirty. See remarks.

    Location

    Gets the location of this asset.

    ModifiedTime

    Gets the modified time. See remarks.

    Package

    Gets the package where this asset is stored.

    SourceFolder

    Gets the directory where the assets will be stored on the disk relative to the Package. The directory will update the list found in AssetFolders

    Version

    Gets the asset version incremental counter, increased everytime the asset is edited.

    YamlMetadata

    Gets the attached metadata for YAML serialization.

    Methods
    Clone(UFile, Asset, AssetClonerFlags)

    Clones this instance without the attached package.

    Clone(Boolean, UFile, Asset, AssetClonerFlags)

    Clones this instance without the attached package.

    CreateDerivedAsset()

    Creates a child asset that is inheriting the values of this asset.

    FindBase()

    Finds the base item referenced by this item from the current session (using the Package setup on this instance)

    RetrieveCompilationInputFiles()
    ToReference()

    Converts this item to a reference.

    ToString()
    UpdateSourceFolders()

    In case SourceFolder was null, generates it.

    | Improve this Doc View Source

    Constructors


    AssetItem(UFile, Asset)

    Initializes a new instance of the AssetItem class.

    public AssetItem(UFile location, Asset asset)
    Parameters
    Type Name Description
    Stride.Core.IO.UFile location

    The location inside the package.

    Asset asset

    The asset.

    Exceptions
    Type Condition
    System.ArgumentNullException

    location

    System.ArgumentNullException

    asset

    | Improve this Doc View Source

    Fields


    DefaultComparerById

    The default comparer use only the id of an assetitem to match assets.

    public static readonly IEqualityComparer<AssetItem> DefaultComparerById
    Field Value
    Type Description
    System.Collections.Generic.IEqualityComparer<AssetItem>
    | Improve this Doc View Source

    Properties


    AlternativePath

    Gets or sets the real location of this asset if it is overriden (similar to Link in C# project files).

    public UFile AlternativePath { get; set; }
    Property Value
    Type Description
    Stride.Core.IO.UFile

    Asset

    Gets or sets the asset.

    public Asset Asset { get; }
    Property Value
    Type Description
    Asset

    The asset.


    FullPath

    Gets the full absolute path of this asset on the disk, taking into account the SourceFolder, and the RootDirectory. See remarks.

    public UFile FullPath { get; }
    Property Value
    Type Description
    Stride.Core.IO.UFile

    The full absolute path of this asset on the disk.

    Remarks

    This value is only valid if this instance is attached to a Package, and that the package has a non null RootDirectory.


    Id

    Gets the unique identifier of this asset.

    public AssetId Id { get; }
    Property Value
    Type Description
    AssetId

    The unique identifier.


    IsDeleted

    public bool IsDeleted { get; set; }
    Property Value
    Type Description
    System.Boolean

    IsDirty

    Gets or sets a value indicating whether this instance is dirty. See remarks.

    public bool IsDirty { get; set; }
    Property Value
    Type Description
    System.Boolean

    true if this instance is dirty; otherwise, false.

    Remarks

    When an asset is modified, this property must be set to true in order to track assets changes.


    Location

    Gets the location of this asset.

    public UFile Location { get; }
    Property Value
    Type Description
    Stride.Core.IO.UFile

    The location.


    ModifiedTime

    Gets the modified time. See remarks.

    public DateTime ModifiedTime { get; }
    Property Value
    Type Description
    System.DateTime

    The modified time.

    Remarks

    By default, contains the last modified time of the asset from the disk. If IsDirty is also updated from false to true , this time will get current time of modification.


    Package

    Gets the package where this asset is stored.

    public Package Package { get; }
    Property Value
    Type Description
    Package

    The package.


    SourceFolder

    Gets the directory where the assets will be stored on the disk relative to the Package. The directory will update the list found in AssetFolders

    public UDirectory SourceFolder { get; set; }
    Property Value
    Type Description
    Stride.Core.IO.UDirectory

    The directory.


    Version

    Gets the asset version incremental counter, increased everytime the asset is edited.

    public long Version { get; }
    Property Value
    Type Description
    System.Int64

    YamlMetadata

    Gets the attached metadata for YAML serialization.

    public AttachedYamlAssetMetadata YamlMetadata { get; }
    Property Value
    Type Description
    AttachedYamlAssetMetadata
    | Improve this Doc View Source

    Methods


    Clone(UFile, Asset, AssetClonerFlags)

    Clones this instance without the attached package.

    public AssetItem Clone(UFile newLocation = null, Asset newAsset = null, AssetClonerFlags flags = AssetClonerFlags.None)
    Parameters
    Type Name Description
    Stride.Core.IO.UFile newLocation

    The new location that will be used in the cloned AssetItem. If this parameter is null, it keeps the original location of the asset.

    Asset newAsset

    The new asset that will be used in the cloned AssetItem. If this parameter is null, it clones the original asset. otherwise, the specified asset is used as-is in the new AssetItem (no clone on newAsset is performed)

    AssetClonerFlags flags

    Flags used with Stride.Core.Assets.AssetCloner.Clone(System.Collections.Generic.Dictionary{System.Guid,System.Guid}@).

    Returns
    Type Description
    AssetItem

    A clone of this instance.


    Clone(Boolean, UFile, Asset, AssetClonerFlags)

    Clones this instance without the attached package.

    public AssetItem Clone(bool keepPackage, UFile newLocation = null, Asset newAsset = null, AssetClonerFlags flags = AssetClonerFlags.None)
    Parameters
    Type Name Description
    System.Boolean keepPackage

    if set to true copy package information, only used by the AssetDependencyManager.

    Stride.Core.IO.UFile newLocation

    The new location that will be used in the cloned AssetItem. If this parameter is null, it keeps the original location of the asset.

    Asset newAsset

    The new asset that will be used in the cloned AssetItem. If this parameter is null, it clones the original asset. otherwise, the specified asset is used as-is in the new AssetItem (no clone on newAsset is performed)

    AssetClonerFlags flags

    Flags used with Stride.Core.Assets.AssetCloner.Clone(System.Collections.Generic.Dictionary{System.Guid,System.Guid}@).

    Returns
    Type Description
    AssetItem

    A clone of this instance.


    CreateDerivedAsset()

    Creates a child asset that is inheriting the values of this asset.

    public Asset CreateDerivedAsset()
    Returns
    Type Description
    Asset

    A new asset inheriting the values of this asset.


    FindBase()

    Finds the base item referenced by this item from the current session (using the Package setup on this instance)

    public AssetItem FindBase()
    Returns
    Type Description
    AssetItem

    The base item or null if not found.


    RetrieveCompilationInputFiles()

    public ISet<UFile> RetrieveCompilationInputFiles()
    Returns
    Type Description
    System.Collections.Generic.ISet<Stride.Core.IO.UFile>

    ToReference()

    Converts this item to a reference.

    public AssetReference ToReference()
    Returns
    Type Description
    AssetReference

    AssetReference.


    ToString()

    public override string ToString()
    Returns
    Type Description
    System.String
    Overrides
    System.Object.ToString()

    UpdateSourceFolders()

    In case SourceFolder was null, generates it.

    public void UpdateSourceFolders()

    Extension Methods

    ComponentBaseExtensions.DisposeBy<T>(T, ICollectorHolder)
    ComponentBaseExtensions.RemoveDisposeBy<T>(T, ICollectorHolder)
    AssetItemExtensions.GetProjectInclude(AssetItem)
    AssetItemExtensions.GetGeneratedAbsolutePath(AssetItem)
    AssetItemExtensions.GetGeneratedInclude(AssetItem)
    • Improve this Doc
    • View Source
    In This Article

    Back to top

    Copyright © 2019-2021 .NET Foundation and Contributors
    Supported by the .NET Foundation