Files
DP44/Common/DTS.CommonCore/.svn/pristine/32/3281fc449e88cbb5ebe28f31057dd34dcd04a868.svn-base

97 lines
4.2 KiB
Plaintext
Raw Permalink Normal View History

2026-04-17 14:55:32 -04:00
using System;
using System.Collections.Generic;
namespace DTS.Common.Interface.DASFactory.Config
{
public interface IInfoResult
{
string MACAddress { get; set; }
/// <summary>
/// An array of the modules in this DAS.
/// </summary>
IInfoResultModule[] Modules { get; set; }
List<Common.Classes.Hardware.ExternalTilt> ActiveExternalTilts { get; set; }
//public IDASCommunication OwningDAS { get; set; }
uint MaxNumberOfModules { get; set; }
/// <summary>
/// How many bytes of sample storage is available in this DAS? This is null if
/// it's specified per module instead.
/// </summary>
ulong? MaxEventStorageSpaceInBytes { get; set; }
/// <summary>
/// How many bytes are stored for all channels at each sample interval? This is
/// null if it's specified per module instead.
/// </summary>
uint? NumberOfBytesPerSampleClock { get; set; }
/// <summary>
/// FB15353 Is this device hardware configured for streaming only?
/// null if device doesn't support a streaming-only configuration
/// </summary>
bool? DeviceStreamingOnly { get; set; }
// temporary constant
int NumberOfBridgeChannels { get; set; }
IEID BatteryID { get; set; }
/// <summary>
/// TRUE if a battery is present in the hardware unit.
/// </summary>
bool HasBattery{ get; }
byte MapDASChannelNumber2RealtimeChannelNumber(int channelNumber);
/// <summary>
/// Convert a DASChannel number (0..29) to a module array index (0..9).
/// A DASChannel number is a channel's identifier global within this DAS.
/// A Module array index is a Module identifier as it would be indexed in an array.
/// </summary>
/// <param name="channelNumber">The DAS channel number to convert</param>
/// <returns>The module array index</returns>
byte MapDASChannelNumber2ModuleArrayIndex(int channelNumber);
/// <summary>
/// Convert a DAS channel number (0..29) to a module device id (1..10)
/// A DASChannel number is a channel's identifier global within this DAS.
/// A Module deviceID is an identifier for the corresponding channel that starts at 1 for the first Module.
/// </summary>
/// <param name="channelNumber">The DAS channel number to convert</param>
/// <returns>The module device id</returns>
byte MapDASChannelNumber2ModuleDeviceID(int channelNumber);
/// <summary>
/// Convert a DAS channel number (0..29) to a module channel number (0..2)
/// A DASChannel number is a channel's identifier global within this DAS.
/// A moduleChannel number is the channel's identifier relative only to it's parent Module.
/// </summary>
/// <param name="channelNumber">The DAS channel number to convert</param>
/// <returns>The channel number within the module</returns>
byte MapDASChannelNumber2ModuleChannelNumber(int channelNumber);
/// <summary>
/// Convert a module array index (0..9) and a module channel number (0..2) to a DAS channel number (0..29)
/// A Module array index is a Module identifier as it would be indexed in an array.
/// A moduleChannel number is the channel's identifier relative only to it's parent Module.
/// A DASChannel number is a channel's identifier global within this DAS.
/// </summary>
/// <param name="moduleArrayIdx">The module array index (0..9)</param>
/// <param name="channelNumber">The module channel number (0..2)</param>
/// <returns>The DAS channel number within the DAS (0..29)</returns>
byte MapModuleArrayIndexAndChannelNum2DASChannel(int moduleArrayIdx, int channelNumber);
/// <summary>
/// The <see cref="System.DateTime"/> returns the datetime of the DAS (or the oldest module's calibration)
/// returns 1970-01-01 is considering invalid/NA
/// </summary>
DateTime? CalibrationDate{ get; set; }
}
}