58 lines
2.0 KiB
Plaintext
58 lines
2.0 KiB
Plaintext
|
|
using DTS.Common.Base;
|
||
|
|
using DTS.Common.Interface.TestSetups;
|
||
|
|
using System.Data;
|
||
|
|
|
||
|
|
namespace DTS.Common.Classes.TestSetups
|
||
|
|
{
|
||
|
|
/// <summary>
|
||
|
|
/// Describes a record in the ROIPeriodChannels table
|
||
|
|
/// </summary>
|
||
|
|
public class ROIPeriodChannelRecord : BasePropertyChanged, IROIPeriodChannelRecord
|
||
|
|
{
|
||
|
|
/// <summary>
|
||
|
|
/// The field that matches the same field in the TestSetupROIs table
|
||
|
|
/// </summary>
|
||
|
|
private int _testSetupROIId;
|
||
|
|
public int TestSetupROIId
|
||
|
|
{
|
||
|
|
get => _testSetupROIId;
|
||
|
|
set => SetProperty(ref _testSetupROIId, value, "TestSetupROIId");
|
||
|
|
}
|
||
|
|
/// <summary>
|
||
|
|
/// The name of a channel in a ROI period.
|
||
|
|
/// </summary>
|
||
|
|
private string _channelName;
|
||
|
|
public string ChannelName
|
||
|
|
{
|
||
|
|
get => _channelName;
|
||
|
|
set => SetProperty(ref _channelName, value, "ChannelName");
|
||
|
|
}
|
||
|
|
/// <summary>
|
||
|
|
/// The id of a channel in a ROI period.
|
||
|
|
/// </summary>
|
||
|
|
private long _channelId;
|
||
|
|
public long ChannelId
|
||
|
|
{
|
||
|
|
get => _channelId;
|
||
|
|
set => SetProperty(ref _channelId, value, "ChannelId");
|
||
|
|
}
|
||
|
|
/// <summary>
|
||
|
|
/// Builds a ROIPeriodChannel record after a call to sp_ROIPeriodChannelsGet
|
||
|
|
/// </summary>
|
||
|
|
/// <param name="reader"></param>
|
||
|
|
public ROIPeriodChannelRecord(IDataReader reader, int storedProcedureVersionToUse)
|
||
|
|
{
|
||
|
|
TestSetupROIId = Utility.GetInt(reader, "TestSetupROIId");
|
||
|
|
ChannelName = Utility.GetString(reader, "ChannelName", "");
|
||
|
|
if (storedProcedureVersionToUse >= Constants.ROIPERIODCHANNELS_CHANNELID_DB_VERSION)
|
||
|
|
{
|
||
|
|
ChannelId = Utility.GetLong(reader, "ChannelId");
|
||
|
|
}
|
||
|
|
else
|
||
|
|
{
|
||
|
|
ChannelId = -1; //So we know the database doesn't have a ChannelId field in the ROIPeriodChannels table
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|