From f1a64590d7780068e54de50e367e959e5ed0cc4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn?= Date: Sat, 25 Oct 2025 11:59:39 +0200 Subject: [PATCH] chore(models): adds RootCollection --- .../Models/Collections/RootCollection.cs | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 src/Speckle.Sdk/Models/Collections/RootCollection.cs diff --git a/src/Speckle.Sdk/Models/Collections/RootCollection.cs b/src/Speckle.Sdk/Models/Collections/RootCollection.cs new file mode 100644 index 00000000..6c9d05d8 --- /dev/null +++ b/src/Speckle.Sdk/Models/Collections/RootCollection.cs @@ -0,0 +1,27 @@ +namespace Speckle.Sdk.Models.Collections; + +/// +/// Root collection that represents the top-level commit object. +/// Extends Collection to include model-wide properties that apply to the entire model. +/// +[SpeckleType("Speckle.Core.Models.Collections.RootCollection")] +public class RootCollection : Collection +{ + /// + /// Constructor for a root collection. + /// + /// The human-readable name of this root collection + public RootCollection(string name) : base(name) { } + + /// + /// Model-wide properties that apply to the entire model. + /// + /// + /// These are intended for model-level metadata such as total area, project information, or analysis results. + /// + public Dictionary? properties + { + get => this["properties"] as Dictionary; + set => this["properties"] = value; + } +}