Files
DP44/Common/DTS.CommonCore/Enums/RecordingModes.cs
2026-04-17 14:55:32 -04:00

98 lines
3.7 KiB
C#

using System.ComponentModel;
using DTS.Common.Converters;
using DTS.Common.Enums.DASFactory;
using DTS.Common.Utils;
using Xceed.Wpf.Toolkit.PropertyGrid.Attributes;
namespace DTS.Common.Enums
{
[TypeConverter(typeof(EnumDescriptionTypeConverter))]
public enum RecordingModes
{
[Description("RecordingModes_CircularBuffer")]
CircularBuffer,
[Description("RecordingModes_Recorder")]
Recorder,
[Description("RecordingModes_HybridRecorder")]
HybridRecorder,
[Description("RecordingModes_S6A_DeviceStreamingOnly")]
S6A_DeviceStreamingOnly,
[Description("RecordingModes_CircularBufferPlusUART")]
CircularBufferPlusUART,
[Description("RecordingModes_RecorderPlusUART")]
RecorderPlusUART,
[Description("RecordingModes_MultipleEventCircularBuffer")]
MultipleEventCircularBuffer,
[Description("RecordingModes_MultipleEventRecorder")]
MultipleEventRecorder,
[Description("RecordingModes_ContinuousRecorder")]
ContinuousRecorder,
[Description("RecordingModes_RecorderAndStreamSubSample")]
RecorderAndStreamSubSample,
[Description("RecordingModes_CircularBufferAndStreamSubSample")]
CircularBufferAndStreamSubSample,
[Description("RecordingModes_Active")]
Active,
[Description("RecordingModes_MultipleEventActive")]
MultipleEventActive,
[Description("RecordingModes_MultipleEventHybridRecorder")]
MultipleEventHybridRecorder,
[Description("RecordingModes_Streaming")]
Streaming,
[Description("RecordingModes_Scheduled")]
Scheduled,
[Description("RecordingModes_Interval")]
Interval,
[Description("RecordingModes_MultipleEventCircularBufferPlusUART")]
MultipleEventCircularBufferPlusUART,
[Description("RecordingModes_MultipleEventRecorderPlusUART")]
MultipleEventRecorderPlusUART,
[Description("RecordingModes_ContinuousRecorderPlusUART")]
ContinuousRecorderPlusUART,
[Description("RecordingModes_RAMActive")]
RAMActive,
[Description("RecordingModes_MultipleEventRAMActive")]
MultipleEventRAMActive,
[Description("RecordingModes_RecordOnBoot")]
RecordOnBoot,
[Description("RecordingModes_RecordOnBootPlusUART")]
RecordOnBootPlusUART,
[Description("RecordingModes_MultipleEventHybridAndStream")]
MultipleEventHybridAndStream,
[Description("RecordingModes_HybridAndStream")]
HybridAndStream,
[Description("RecordingModes_MultipleEventCircularBufferAndStream")]
MultipleEventCircularBufferAndStream,
[Description("RecordingModes_MultipleEventRecorderAndStream")]
MultipleEventRecorderAndStream
}
// FB15520 Restrict Recording Mode Test Setup Default selections to non-streaming
public class NonStreamingRecordingModeItemsSource : RecordingModeItemsSource
{
public override ItemCollection GetValues()
{
return FromModes(Constants.NonStreamingRecordingModes);
}
}
public abstract class RecordingModeItemsSource : IItemsSource
{
protected ItemCollection FromModes(RecordingModes[] modes)
{
var values = new ItemCollection();
foreach (var mode in modes)
{
values.Add(mode, Strings.Strings.ResourceManager.GetString(mode.GetEnumDescription()));
}
return values;
}
public virtual ItemCollection GetValues()
{
return FromModes(new RecordingModes[] { });
}
}
}