63 lines
2.1 KiB
C#
63 lines
2.1 KiB
C#
namespace Sick.SafetyScanners.DataStructures;
|
|
|
|
/// <summary>
|
|
/// Contains application inputs from a UDP data packet
|
|
/// </summary>
|
|
public sealed class ApplicationInputs
|
|
{
|
|
/// <summary>
|
|
/// Gets or sets the unsafe input sources (bits represent current state of static input sources)
|
|
/// </summary>
|
|
public IReadOnlyList<bool> UnsafeInputsInputSources { get; init; } = Array.Empty<bool>();
|
|
|
|
/// <summary>
|
|
/// Gets or sets the flags for unsafe input sources (one flag per static input source)
|
|
/// </summary>
|
|
public IReadOnlyList<bool> UnsafeInputsFlags { get; init; } = Array.Empty<bool>();
|
|
|
|
/// <summary>
|
|
/// Gets or sets the monitoring case numbers
|
|
/// </summary>
|
|
public IReadOnlyList<ushort> MonitoringCases { get; init; } = Array.Empty<ushort>();
|
|
|
|
/// <summary>
|
|
/// Gets or sets the monitoring case flags
|
|
/// </summary>
|
|
public IReadOnlyList<bool> MonitoringCaseFlags { get; init; } = Array.Empty<bool>();
|
|
|
|
/// <summary>
|
|
/// Gets or sets the first linear velocity input
|
|
/// </summary>
|
|
public short Velocity0 { get; init; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the second linear velocity input
|
|
/// </summary>
|
|
public short Velocity1 { get; init; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets whether first linear velocity input is valid
|
|
/// </summary>
|
|
public bool IsVelocity0Valid { get; init; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets whether second linear velocity input is valid
|
|
/// </summary>
|
|
public bool IsVelocity1Valid { get; init; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets whether first linear velocity input is transmitted safely
|
|
/// </summary>
|
|
public bool IsVelocity0TransmittedSafely { get; init; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets whether second linear velocity input is transmitted safely
|
|
/// </summary>
|
|
public bool IsVelocity1TransmittedSafely { get; init; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the state of the sleep mode input
|
|
/// </summary>
|
|
public sbyte SleepModeInput { get; init; }
|
|
}
|