Files

67 lines
2.7 KiB
Markdown
Raw Permalink Normal View History

2026-04-17 14:55:32 -04:00
---
source_files:
- Common/DTS.Common/Interface/Networking/INetworkingView.cs
- Common/DTS.Common/Interface/Networking/INetworkAdapterView.cs
- Common/DTS.Common/Interface/Networking/INetworkAdapterViewModel.cs
- Common/DTS.Common/Interface/Networking/INetworkingViewModel.cs
generated_at: "2026-04-17T16:34:44.833274+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "d25c28bf58e6a8e1"
---
# Documentation: Networking Interfaces
## 1. Purpose
This module defines the core interfaces for the networking subsystem within the DTS application, following the Model-View-ViewModel (MVVM) pattern. It establishes contracts for views and view models responsible for network configuration and adapter selection. The interfaces support configuration of SLICE6 multicast communication (address and ports) and provide a mechanism for reporting operational status. These abstractions decouple the UI layer from networking logic, enabling testability and separation of concerns.
---
## 2. Public Interface
### `INetworkingView`
**Namespace:** `DTS.Common.Interface`
**Inherits:** `IBaseView`
A marker interface with no members. Serves as a type contract for networking-related views in the MVVM architecture.
---
### `INetworkAdapterView`
**Namespace:** `DTS.Common.Interface`
**Inherits:** `IBaseView`
A marker interface with no members. Serves as a type contract for network adapter selection views.
---
### `INetworkAdapterViewModel`
**Namespace:** `DTS.Common.Interface`
**Inherits:** `IBaseViewModel`
| Member | Type | Access | Description |
|--------|------|--------|-------------|
| `SelectedNetworkInterface` | `NetworkInterface` | get/set | Gets or sets the currently selected network interface from `System.Net.NetworkInformation`. |
---
### `INetworkingViewModel`
**Namespace:** `DTS.Common.Interface`
**Inherits:** `IBaseViewModel`
**Properties:**
| Member | Type | Access | Description |
|--------|------|--------|-------------|
| `View` | `INetworkingView` | get/set | Reference to the associated view instance. |
| `SLICE6MulticastAddress` | `string` | get/set | The multicast address used for SLICE6 communication. |
| `SLICE6MulticastAddressHasError` | `bool` | get | Indicates whether the multicast address has a validation error. |
| `SLICE6MulticastCommandPort` | `int` | get/set | The port number for SLICE6 multicast commands. |
| `SLICE6MulticastResponsePort` | `int` | get/set | The port number for SLICE6 multicast responses. |
**Methods:**
| Signature | Description |
|-----------|-------------|
| `void SetStatus(StatusInfo.StatusState status, string message = "", decimal percentage = -1, int processId = 0)` | Updates the operational status with optional message, progress