using System;
namespace DTS.Common.Interface.DataRecorders
{
///
/// interface encapsulating a DAS record in the DB
///
public interface IDASDBRecord
{
int DASId { get; set; }
string SerialNumber { get; set; }
int DASType { get; set; }
int MaxModules { get; set; }
long MaxMemory { get; set; }
double MaxSampleRate { get; set; }
double MinSampleRate { get; set; }
string FirmwareVersion { get; set; }
DateTime CalDate { get; set; }
int ProtocolVersion { get; set; }
DateTime LastModified { get; set; }
string LastModifiedBy { get; set; }
int Version { get; set; }
bool LocalOnly { get; set; }
DateTime LastUsed { get; set; }
string LastUsedBy { get; set; }
///
/// Used to determine DAS connectivity for Hardware Scan
///
string Connection { get; set; }
int Channels { get; set; }
string Position { get; set; }
int[] ChannelTypes { get; set; }
bool IsProgrammable { get; set; }
bool IsReconfigurable { get; set; }
///
/// the module flag is whether this hardware is operating by itself or as part
/// of a collection (a rack module)
///
bool IsModule { get; set; }
int PositionOnDistributor { get; set; }
int PositionOnChain { get; set; }
int Port { get; set; }
string ParentDAS { get; set; }
///
/// first date of use after calibration
/// only valid if IsFirstUseValid is true
/// null value indicates hardware has not been used since calibration
/// (once again, only if IsFirstUseValid is true)
/// 15524 DAS "First Use Date"
///
DateTime? FirstUseDate { get; set; }
///
/// The test id this hardware is associated with if it's a
/// standin hardware existing in a test only
/// 15727 Building and Replacing Racks/Mods
///
int? TestId { get; set; }
///
/// The group id this hardware is associated with if it's a
/// standin hardware existing in a group only
///
int? GroupId { get; set; }
///
/// whether this hardware is standin/dummy hardware and not actually
/// physical hardware that data can be collected on
///
bool StandIn { get; set; }
double MaxAAFRate { get; set; }
///
/// whether hardware supports and is using first use date
/// 15524 DAS "First Use Date"
///
bool IsFirstUseValid { get; set; }
}
}