using DTS.Common.Enums.DASFactory;
using System;
using System.Collections.Generic;
namespace DTS.Common.Interface.DASFactory.Config
{
public interface IInfoResultModule
{
///
/// Serial number of this module
///
string SerialNumber { get; set; }
///
/// Firmware version in this module
///
string FirmwareVersion { get; set; }
///
/// who does this module belong to?
///
//public InfoResult OwningInfoResult { get; set; }
///
/// The number of this Module as it would be indexed in an array of Modules.
///
int ModuleArrayIndex { get; set; }
///
/// How many channels are connected to this Module.
///
uint NumberOfChannels { get; set; }
///
/// What sample rates does it support (in samples per second).
///
uint[] SupportedSampleRates { get; set; }
///
/// An associative list (Dictionary) of sample rates and corresponding
/// Anti-Aliasing filter frequencies.
///
Dictionary SampleRate2AAFrequency { get; set; }
///
/// How many bytes of sample storage is available in this module? This is null
/// if it's specified per DAS instead.
///
ulong? MaxEventStorageSpaceInBytes { get; set; }
///
/// How many bytes are stored for all channels at each sample interval? This is
/// null if it's specified per DAS instead.
///
uint? NumberOfBytesPerSampleClock { get; set; }
///
/// How many samples can you record in this module?
///
double MaxRecordingSamples { get; set; }
///
/// The of this module's last calibration.
///
DateTime? CalibrationDate { get; set; }
///
/// True if a TDAS rack is armed and doesn't respond to some queries.
///
bool RackIsUnreadable { get; set; }
///
/// What type of module is this?
///
DFConstantsAndEnums.ModuleType TypeOfModule { get; set; }
///
/// What recording modes does this Module support.
///
DFConstantsAndEnums.RecordingMode[] SupportedModes { get; set; }
bool IsProgrammable { get; set; }
}
}