HumanoidRetargeter/Core/Target/StockGraphReplacement.cs

A small immutable record type that represents a rewritten entry graph and its owned copies of referenced subgraphs. It stores the entry graph asset path, a mapping of subgraph asset paths to their copied paths, and a reference count.

#nullable enable annotations

using System;
using System.Collections.Generic;
using System.Linq;

namespace HumanoidRetargeter.Core.Target;

/// <summary>The rewritten entry graph plus every subgraph it now references by a project-owned
/// copy, keyed by that copy's asset path.</summary>
public sealed record StockGraphReplacement(string Graph, IReadOnlyDictionary<string, string> Subgraphs, int References);