CatStation/Content.Server/SurveillanceCamera/Components/SurveillanceCameraRouterComponent.cs
deltanedas cf7fde3d62
Big prototype and datafield cleanup (#45202)
* giant protoid cleanup

* yml changes

* !

---------

Co-authored-by: deltanedas <@deltanedas:goida.zip>
2026-08-12 02:07:22 +00:00

30 lines
1.1 KiB
C#

using Content.Shared.DeviceNetwork;
using Robust.Shared.Prototypes;
namespace Content.Server.SurveillanceCamera;
[RegisterComponent]
public sealed partial class SurveillanceCameraRouterComponent : Component
{
[ViewVariables] public bool Active { get; set; }
// The name of the subnet connected to this router.
[DataField("subnetName")]
public string SubnetName { get; set; } = string.Empty;
[ViewVariables]
// The monitors to route to. This raises an issue related to
// camera monitors disappearing before sending a D/C packet,
// this could probably be refreshed every time a new monitor
// is added or removed from active routing.
public HashSet<string> MonitorRoutes { get; } = new();
[ViewVariables]
// The frequency that talks to this router's subnet.
public uint SubnetFrequency;
[DataField("subnetFrequency")]
public ProtoId<DeviceFrequencyPrototype>? SubnetFrequencyId { get; set; }
[DataField("setupAvailableNetworks")]
public List<ProtoId<DeviceFrequencyPrototype>> AvailableNetworks { get; private set; } = new();
}