2021-02-02 05:20:24 -06:00
|
|
|
using System;
|
2021-07-04 18:11:52 +02:00
|
|
|
using JetBrains.Annotations;
|
2020-06-28 09:23:26 -06:00
|
|
|
|
2021-06-09 22:19:39 +02:00
|
|
|
namespace Content.Server.NodeContainer.NodeGroups
|
2020-06-28 09:23:26 -06:00
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Associates a <see cref="INodeGroup"/> implementation with a <see cref="NodeGroupID"/>.
|
2021-09-26 15:18:45 +02:00
|
|
|
/// This is used to gurantee all <see cref="INode"/>s of the same <see cref="NodeGroupID"/>
|
2020-06-28 09:23:26 -06:00
|
|
|
/// have the same type of <see cref="INodeGroup"/>. Used by <see cref="INodeGroupFactory"/>.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)]
|
2021-07-04 18:11:52 +02:00
|
|
|
[MeansImplicitUse]
|
2022-02-16 00:23:23 -07:00
|
|
|
public sealed class NodeGroupAttribute : Attribute
|
2020-06-28 09:23:26 -06:00
|
|
|
{
|
|
|
|
|
public NodeGroupID[] NodeGroupIDs { get; }
|
|
|
|
|
|
|
|
|
|
public NodeGroupAttribute(params NodeGroupID[] nodeGroupTypes)
|
|
|
|
|
{
|
|
|
|
|
NodeGroupIDs = nodeGroupTypes;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|