logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class ShippedSystemAssetCatalog

    Every shipped package asset that belongs to one installable system, per IsMemberOf(string, IReadOnlyCollection<string>, string, IReadOnlyList<string>, IReadOnlyList<(string PathContains, string Label)>). Scans every asset under Serenity.Global.Infrastructure.Editor.SerenityEditorPaths.PackageRoots once (AssetDatabase.FindAssets(string.Empty, ...)), and decides each one's labels the same way a real Retag All would need to: the union of Serenity.Global.Infrastructure.Editor.Utils.UnityAddressablesLabeler.DecideLabels(System.String) (path/type folder rules) and Serenity.Global.Infrastructure.Editor.Utils.SerenityAddressablesAutoLabeler.ResolveLabelsForType(System.Type) (the import-time auto-labeler's type decision) — a path-only view misses both a composite view under Media/GeneratedViews and a namespace-fallback ScriptableObject, which only carry a label through the second. Memoizes the result behind Invalidate() so asking for several systems' member lists in the same wizard pass costs one scan, not one per system.

    Inheritance
    object
    ShippedSystemAssetCatalog
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    Namespace: Serenity.CreateGame.Infrastructure.Editor.Systems
    Assembly: Serenity.UnityCreateGame.Infrastructure.Editor.dll
    Syntax
    public static class ShippedSystemAssetCatalog

    Properties

    ScanCountForTests

    Declaration
    public static int ScanCountForTests { get; }
    Property Value
    Type Description
    int

    Test seam: how many full package scans have actually run since the domain loaded (or since the last Invalidate()).

    Methods

    Invalidate()

    Forces the next MemberPaths(SerenityInstallableSystem)/RemainingMemberPaths(SerenityInstallableSystem, string) call to rescan the package instead of returning the memoized scan.

    Declaration
    public static void Invalidate()

    MemberPaths(SerenityInstallableSystem)

    Every shipped asset that belongs to system.

    Declaration
    public static IReadOnlyList<string> MemberPaths(SerenityInstallableSystem system)
    Parameters
    Type Name Description
    SerenityInstallableSystem system
    Returns
    Type Description
    IReadOnlyList<string>

    RemainingMemberPaths(SerenityInstallableSystem, string)

    The subset of MemberPaths(SerenityInstallableSystem) that adopting system into outputRoot has not already mirrored onto disk.

    Declaration
    public static IReadOnlyList<string> RemainingMemberPaths(SerenityInstallableSystem system, string outputRoot)
    Parameters
    Type Name Description
    SerenityInstallableSystem system
    string outputRoot
    Returns
    Type Description
    IReadOnlyList<string>
    In this article
    © 2026 Serenity. All Rights Reserved