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.
///
[ViewVariables]
public string SubnetName = string.Empty;
///
/// 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.
///
[ViewVariables]
public HashSet MonitorRoutes { get; } = new();
///
/// The frequency that talks to this router's subnet.
///
[ViewVariables]
public uint SubnetFrequency;
[DataField("subnetFrequency")]
public ProtoId? SubnetFrequencyId { get; set; }
[DataField("setupAvailableNetworks")]
public List> AvailableNetworks { get; private set; } = new();
}