Files
DP44/docs/ai/Common/DTS.Common/Interface/Hardware.md

64 lines
3.1 KiB
Markdown
Raw Normal View History

2026-04-17 14:55:32 -04:00
---
source_files:
- Common/DTS.Common/Interface/Hardware/IDASMonitorInfo.cs
- Common/DTS.Common/Interface/Hardware/IISOHardware.cs
- Common/DTS.Common/Interface/Hardware/IATDArmStatus.cs
- Common/DTS.Common/Interface/Hardware/IDiagnosticResult.cs
generated_at: "2026-04-17T15:37:39.437341+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "2331d3a38d60b064"
---
# Hardware Interfaces Documentation
## 1. Purpose
This module defines the core hardware abstraction interfaces for a Data Acquisition System (DAS). It provides contracts for monitoring hardware status (`IDASMonitorInfo`), managing arm states across distributed test devices (`IATDArmStatus`, `IDistributorArmStatus`, `IDeviceArmStatus`), persisting hardware configuration to a database (`IISOHardware`), and capturing diagnostic calibration results (`IDiagnosticResult`). These interfaces enable decoupled communication between hardware layers, diagnostic services, and data recording subsystems.
---
## 2. Public Interface
### IDASMonitorInfo
Defines monitor information for a DAS unit, including tilt sensor calibration and channel configuration.
**Properties:**
- `string SerialNumber { get; }` — Hardware serial number.
- `double[] TiltSensorCals { get; }` — Tilt sensor calibration values.
- `short[] TiltSensorDataPre { get; }` — Pre-capture tilt sensor data.
- `DFConstantsAndEnums.TiltAxes TiltAxes { get; }` — Configured tilt axes.
- `int AxisIgnored { get; }` — Index of any ignored axis.
- `double MountOffsetAxisOne { get; }` — Mount offset for axis one.
- `double MountOffsetAxisTwo { get; }` — Mount offset for axis two.
**Methods:**
- `string GetChannelName(int index)` — Retrieves channel name at the specified index.
- `double GetOffsetTolerancemVLow(int index)` — Retrieves low offset tolerance in millivolts.
- `double GetOffsetTolerancemVHigh(int index)` — Retrieves high offset tolerance in millivolts.
- `void ReadFromFile(string path)` — Reads monitor configuration from file.
- `void WriteToFile(string path)` — Writes monitor configuration to file.
---
### IISOHardware
Defines ISO hardware that can be persisted to a database. Extends `IDASDBRecord`.
**Properties:**
- `HardwareTypes DASTypeEnum { get; set; }` — Hardware type enumeration.
- `string IPAddress { get; set; }` — Network IP address.
**Methods:**
- `void GetChannelsString(out int analog, out int digitalIn, out int digitalOut, out int squib, out int uart, out int streamOut, out int streamIn, out int can)` — Retrieves channel counts by type.
- `bool IsPseudoRackModule()` — Indicates if hardware is capable of being a pseudo-rack module (e.g., SLICE slabs, SLICE6 with S6DB).
- `bool IsTSRAIR()` — Indicates if hardware is TSRAIR type.
- `bool ValidateSerialNumber(ref List<string> errors)` — Validates serial number; populates errors list on failure.
- `bool ValidateIPAddress(ref List<string> errors)` — Validates IP address; populates errors list on failure.
- `void Insert()` — Inserts hardware record into database.
- `void Update()` — Updates hardware record in database.
- `void Delete()` — Removes hardware record from database.
---
### IAllATDStatus
Aggregates