57 lines
2.8 KiB
Markdown
57 lines
2.8 KiB
Markdown
|
|
---
|
||
|
|
source_files:
|
||
|
|
- Common/DTS.CommonCore/Interface/Communication/ICommunicationReport.cs
|
||
|
|
- Common/DTS.CommonCore/Interface/Communication/IDASConnectedDevice.cs
|
||
|
|
- Common/DTS.CommonCore/Interface/Communication/ICommunication_DASInfo.cs
|
||
|
|
generated_at: "2026-04-17T16:35:08.973224+00:00"
|
||
|
|
model: "zai-org/GLM-5-FP8"
|
||
|
|
schema_version: 1
|
||
|
|
sha256: "2d2df26efcd514a6"
|
||
|
|
---
|
||
|
|
|
||
|
|
# Documentation: DTS.Common.Interface.Communication
|
||
|
|
|
||
|
|
## 1. Purpose
|
||
|
|
|
||
|
|
This module defines three interfaces for communication-related data structures within the DTS system. `ICommunicationReport` provides a standard contract for communication operation results, encapsulating status, result codes, and payload data. `IDASConnectedDevice` describes hardware devices connected to a Data Acquisition System (DAS), capturing physical and logical identification properties. `ICommunication_DASInfo` aggregates information about a DAS unit itself, including its connected devices, serial numbers, firmware versions, and feature support flags. These interfaces support the auto-discovery and monitoring of DAS hardware status.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 2. Public Interface
|
||
|
|
|
||
|
|
### `ICommunicationReport`
|
||
|
|
|
||
|
|
A data transfer interface for reporting communication operation outcomes.
|
||
|
|
|
||
|
|
| Member | Signature | Description |
|
||
|
|
|--------|-----------|-------------|
|
||
|
|
| `UserState` | `object { get; set; }` | Arbitrary user state associated with the communication operation. |
|
||
|
|
| `Result` | `CommunicationConstantsAndEnums.CommunicationResult { get; set; }` | The result status of the communication operation. |
|
||
|
|
| `Data` | `byte[] { get; set; }` | Raw byte payload from the communication operation. |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### `IDASConnectedDevice`
|
||
|
|
|
||
|
|
Describes a device physically connected to a DAS unit (e.g., an S6 connected to an S6DB).
|
||
|
|
|
||
|
|
| Member | Signature | Description |
|
||
|
|
|--------|-----------|-------------|
|
||
|
|
| `DeviceType` | `HardwareTypes { get; }` | The hardware type classification of the connected device. |
|
||
|
|
| `Port` | `int { get; }` | The port index on the DAS where the device is connected (0-based). |
|
||
|
|
| `SpotOnPort` | `int { get; }` | The position in the daisy chain on the given port (0-based). |
|
||
|
|
| `PhysicalAddress` | `PhysicalAddress { get; }` | The MAC address or physical address of the device. |
|
||
|
|
| `IPAddress` | `string { get; }` | The IP address of the device. |
|
||
|
|
| `SerialNumber` | `string { get; }` | The serial number of the device. |
|
||
|
|
| `Location` | `string { get; }` | The physical location descriptor of the device. |
|
||
|
|
| `Version` | `string { get; }` | The firmware/hardware version string of the device. |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### `ICommunication_DASInfo`
|
||
|
|
|
||
|
|
Aggregates metadata and connected device information for a DAS unit.
|
||
|
|
|
||
|
|
| Member | Signature | Description |
|
||
|
|
|--------|-----------|-------------|
|
||
|
|
| `ConnectedDevices` | `IDASConnectedDevice[] { get; }` | Array of devices currently connected to this D
|