12 KiB
source_files, generated_at, model, schema_version, sha256
| source_files | generated_at | model | schema_version | sha256 | ||||
|---|---|---|---|---|---|---|---|---|
|
2026-04-16T12:21:21.272442+00:00 | zai-org/GLM-5-FP8 | 1 | bca3af738f7131f7 |
Documentation: DTS.Common.Interface.DataRecorders
1. Purpose
This module defines the core interfaces for Data Acquisition System (DAS) hardware abstraction within the DTS system. It provides contracts for representing hardware channels (IHardwareChannel), DAS devices (IDASHardware), and their corresponding database persistence records (IDASDBRecord, IDASChannelDBRecord). These interfaces enable the system to interact with various types of data recording hardware—ranging from individual channels to complete rack systems—in a uniform, decoupled manner, supporting capabilities queries, hardware identification, and configuration persistence.
2. Public Interface
IHardwareChannel
Represents an individual hardware channel on a DAS device.
| Member | Signature | Description |
|---|---|---|
Diagnostics |
IDiagnosticResult { get; } |
Diagnostic results for this channel; returns null if unavailable. |
IsSupportedBridgeType |
bool IsSupportedBridgeType(SensorConstants.BridgeType bridgeType) |
Returns whether the channel supports the specified bridge type. |
ChannelNumber |
int { get; } |
The channel number. |
GetId |
string GetId() |
Returns the channel identifier. |
IsAnalog |
bool { get; } |
Returns true if the channel supports analog sensors. |
IsSquib |
bool { get; } |
Returns true if the channel supports squibs. |
IsDigitalOut |
bool { get; } |
Returns true if the channel supports digital outputs. |
IsDigitalIn |
bool { get; } |
Returns true if the channel supports digital inputs. |
IsUart |
bool { get; } |
Returns true if the channel supports UART I/O. |
IsStreamIn |
bool { get; } |
Returns true if the channel supports stream input. |
IsStreamOut |
bool { get; } |
Returns true if the channel supports stream output. |
IsClock |
bool { get; } |
Returns true if the channel supports clocks. |
IsTSRAIR |
bool { get; } |
(Undocumented in XML comments.) |
IsTSRAIRModule |
bool { get; } |
(Undocumented in XML comments.) |
GetParentDAS |
IDASHardware GetParentDAS() |
Returns the DAS this channel belongs to. |
ModuleSerialNumber |
string { get; set; } |
The module serial number this channel belongs to. |
IsSupportedExcitation |
bool IsSupportedExcitation(ExcitationVoltageOptions.ExcitationVoltageOption excitation) |
Returns whether a given excitation voltage is supported. |
IsG5 |
bool IsG5() |
Returns true if the serial number starts with "5M". |
ToString |
string ToString(IDASHardware[] hardwares) |
Returns a string representation given an array of hardware. |
IDASHardware
Represents a DAS hardware device (e.g., a rack, module, or standalone unit).
| Member | Signature | Description |
|---|---|---|
IsStandIn |
bool IsStandIn() |
Returns true if this is a stand-in for real hardware, not physical hardware itself. |
IsFirstUseValid |
bool { get; } |
Whether hardware supports and is using first use date (ref: 15524). |
FirstUseDate |
DateTime? { get; } |
First date of use after calibration; only valid if IsFirstUseValid is true. null indicates not used since calibration. |
IsPseudoRack |
bool IsPseudoRack() |
(Undocumented in XML comments.) |
DASId |
int { get; } |
The DAS identifier. |
SerialNumber |
string { get; set; } |
Serial number of the hardware. |
SerialNumberFamily |
string { get; set; } |
Serial number family. |
EIDFound |
string { get; set; } |
(Undocumented in XML comments.) |
BatteryVoltageStatus |
string { get; set; } |
Battery voltage status string. |
BatteryVoltageColor |
System.Windows.Media.SolidColorBrush { get; set; } |
Color for battery voltage display. |
InputVoltageStatus |
string { get; set; } |
Input voltage status string. |
InputVoltageColor |
System.Windows.Media.SolidColorBrush { get; set; } |
Color for input voltage display. |
ParentDAS |
string { get; set; } |
Used to display DAS connectivity in Hardware Scan. |
Connection |
string { get; set; } |
Used to determine DAS connectivity for Hardware Scan. |
GetIHardwareChannels |
IHardwareChannel[] GetIHardwareChannels() |
Returns all hardware channels on this DAS. |
IsSLICEEthernetController |
bool { get; } |
Returns whether DAS is a SLICE Ethernet Controller. |
IsTDASRack |
bool IsTDASRack() |
Returns true if the DAS is a TDAS rack. |
IsG5 |
bool IsG5() |
(Undocumented in XML comments.) |
IsTSRAIR |
bool IsTSRAIR() |
(Undocumented in XML comments.) |
IsTSRAIRModule |
bool IsTSRAIRModule() |
(Undocumented in XML comments.) |
GetMinSampleRateDouble |
double GetMinSampleRateDouble() |
Returns the minimum sample rate allowed on this DAS. |
GetMaxSampleRateDouble |
double GetMaxSampleRateDouble() |
Returns the maximum sample rate allowed on this DAS. |
IsModule |
bool IsModule() |
Returns true for modules which should not be displayed in Hardware Scan (SLICE bridges); false for modules which should be displayed (TDAS rack modules). |
LastModifiedBy |
string { get; set; } |
User who last modified this record. |
LastModified |
DateTime { get; set; } |
Timestamp of last modification. |
DASTypeEnum |
HardwareTypes { get; set; } |
The hardware type enumeration value. |
IDASDBRecord
Encapsulates a DAS record for database persistence.
| Member | Signature | Description |
|---|---|---|
DASId |
int { get; set; } |
Database ID of the DAS record. |
SerialNumber |
string { get; set; } |
Serial number. |
DASType |
int { get; set; } |
DAS type as integer. |
MaxModules |
int { get; set; } |
Maximum number of modules supported. |
MaxMemory |
long { get; set; } |
Maximum memory in bytes. |
MaxSampleRate |
double { get; set; } |
Maximum sample rate. |
MinSampleRate |
double { get; set; } |
Minimum sample rate. |
FirmwareVersion |
string { get; set; } |
Firmware version string. |
CalDate |
DateTime { get; set; } |
Calibration date. |
ProtocolVersion |
int { get; set; } |
Protocol version. |
LastModified |
DateTime { get; set; } |
Last modification timestamp. |
LastModifiedBy |
string { get; set; } |
User who last modified. |
Version |
int { get; set; } |
Record version. |
LocalOnly |
bool { get; set; } |
Whether record is local-only. |
LastUsed |
DateTime { get; set; } |
Last used timestamp. |
LastUsedBy |
string { get; set; } |
User who last used. |
Connection |
string { get; set; } |
Used to determine DAS connectivity for Hardware Scan. |
Channels |
int { get; set; } |
Number of channels. |
Position |
string { get; set; } |
Position identifier. |
ChannelTypes |
int[] { get; set; } |
Array of channel types. |
IsProgrammable |
bool { get; set; } |
Whether hardware is programmable. |
IsReconfigurable |
bool { get; set; } |
Whether hardware is reconfigurable. |
IsModule |
bool { get; set; } |
Whether hardware operates as a rack module (true) or standalone (false). |
PositionOnDistributor |
int { get; set; } |
Position on distributor. |
PositionOnChain |
int { get; set; } |
Position on chain. |
Port |
int { get; set; } |
Port number. |
ParentDAS |
string { get; set; } |
Parent DAS identifier. |
FirstUseDate |
DateTime? { get; set; } |
First use date after calibration; only valid if IsFirstUseValid is true. null indicates not used since calibration. (Ref: 15524) |
TestId |
int? { get; set; } |
Test ID for stand-in hardware existing in a test only. (Ref: 15727) |
GroupId |
int? { get; set; } |
Group ID for stand-in hardware existing in a group only. |
StandIn |
bool { get; set; } |
Whether this is stand-in/dummy hardware, not physical hardware. |
MaxAAFRate |
double { get; set; } |
Maximum AAF rate. |
IsFirstUseValid |
bool { get; set; } |
Whether hardware supports and is using first use date. (Ref: 15524) |
IDASChannelDBRecord
Describes a DAS channel database record with detailed bitmask configuration.
| Member | Signature | Description |
|---|---|---|
HardwareId |
string { get; set; } |
String ID for the hardware (format: serialnumber_dastype). |
DaschannelId |
int { get; set; } |
Primary key of the DAS channel record. Annotated with [Key] and [Column("DASChannelId")]. |
Dasid |
int? { get; set; } |
DAS database ID of the parent hardware. Annotated with [Column("DASId")]. |
ChannelIdx |
int { get; set; } |
Physical channel index among channels on the DAS. |
SupportedBridges |
int { get; set; } |
Bitmask for supported bridges (see Invariants for bit meanings). |
SupportedExcitations |
int { get; set; } |
Bitmask for supported excitation options (see Invariants for bit meanings). |
DASDisplayOrder |
int { get; set; } |
Display order among channels; may differ from physical order. Annotated with [Column("DASDisplayOrder")]. |
LocalOnly |
bool { get; set; } |
Indicates local-only storage (deprecated per XML comment). |
SupportedDigitalInputModes |
int { get; set; } |
Bitmask for digital input modes (see Invariants for bit meanings). |
SupportedSquibFireModes |
int { get; set; } |
Bitmask for squib fire modes (see Invariants for bit meanings). |
SupportedDigitalOutputModes |
int { get; set; } |
Bitmask for digital output modes (see Invariants for bit meanings). |
ModuleSerialNumber |
string { get; set; } |
Module serial number. |
SettingId |
int { get; set; } |
Setting ID. |
ModuleArrayIndex |
int { get; set; } |
Array index of the module among modules on the DAS. |
3. Invariants
First Use Date Validity
FirstUseDate(on bothIDASHardwareandIDASDBRecord) is only valid whenIsFirstUseValidistrue.- A
nullvalue forFirstUseDateindicates the hardware has not been used since calibration (only meaningful whenIsFirstUseValidistrue).
Hardware ID Format
IDASChannelDBRecord.HardwareIdfollows the format:"serialnumber_dastype".
Channel Ordering
- Physical channel order (
ChannelIdx) and display order (DASDisplayOrder) may not match for some hardware types.
SupportedBridges Bitmask (IDASChannelDBRecord)
| Bit | Meaning |
|---|---|
| 0 | IEPE |
| 1 | Quarter bridge |
| 2 | Half bridge |
| 3 | Full bridge |
| 4 | Digital input |
| 5 | Squib fire |
| 6 | Digital output |
| 7 | Half bridge signal plus (G5 signal plus) |
| 8 | RealTime Clock |
| 9 | UART |
SupportedExcitations Bitmask (IDASChannelDBRecord)
| Bit | Meaning |
|---|---|
| 0 | Invalid excitation (undefined) |
| 1 | 2V |
| 2 | 2.5V |
| 3 | 3V |
| 4 | 5V |
| 5 | 10V |
| 6 | 1V |
SupportedDigitalInputModes Bitmask (IDASChannelDBRecord)
| Bit | Meaning |
|---|---|
| 0 | Invalid mode |
| 1 | Transition low to high (TLH) |
| 2 | Transition high to low (THL) |
| 3 | Contact closure normally open (CCNO) |
| 4 | Contact closure normally closed (CCNC) |
SupportedSquibFireModes Bitmask (IDASChannelDBRecord)
| Bit | Meaning |
|---|---|
| 0 | Invalid mode (fire mode not set) |
| 1 | Capacitor discharge |
| 2 | Constant current |
| 3 | AC discharge |
SupportedDigitalOutputModes Bitmask (IDASChannelDBRecord)
| Bit | Meaning |
|---|---|
| 0 |