This commit is contained in:
2026-04-17 14:55:32 -04:00
commit bc3ac1d4c9
18017 changed files with 4371742 additions and 0 deletions

View File

@@ -0,0 +1,106 @@
---
source_files:
- Common/DTS.Common/Interface/DTS.Viewer/TestDefinition/ITestMetadata.cs
- Common/DTS.Common/Interface/DTS.Viewer/TestDefinition/ITestGraphs.cs
- Common/DTS.Common/Interface/DTS.Viewer/TestDefinition/ITestSetupMetadata.cs
- Common/DTS.Common/Interface/DTS.Viewer/TestDefinition/ITestEvent.cs
- Common/DTS.Common/Interface/DTS.Viewer/TestDefinition/ITestSummary.cs
- Common/DTS.Common/Interface/DTS.Viewer/TestDefinition/ITestRunMetadata.cs
- Common/DTS.Common/Interface/DTS.Viewer/TestDefinition/ITestModule.cs
- Common/DTS.Common/Interface/DTS.Viewer/TestDefinition/ITestCalculatedChannel.cs
- Common/DTS.Common/Interface/DTS.Viewer/TestDefinition/ITestChannel.cs
generated_at: "2026-04-17T15:32:19.198752+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "91e6a7da71bfb107"
---
# Test Definition Interfaces Documentation
## 1. Purpose
This module defines the core data contracts for the DTS (Data Test System) test definition hierarchy. It provides interfaces that model the complete structure of a test run: from high-level metadata containers (`ITestMetadata`) down to individual data channels (`ITestChannel`, `ITestCalculatedChannel`). These interfaces represent test setups, hardware modules, channel configurations, calibration parameters, and statistical measurements, enabling the system to serialize, deserialize, and manipulate test data across the application. The interfaces serve as the abstraction layer between data persistence and the application logic.
---
## 2. Public Interface
### `ITestMetadata`
**Namespace:** `DTS.Common.Interface.TestDefinition`
Root container interface aggregating test run and setup metadata.
| Property | Type | Access |
|----------|------|--------|
| `TestRun` | `ITestRunMetadata` | get/set |
| `TestSetup` | `ITestSetupMetadata` | get/set |
---
### `ITestRunMetadata`
**Namespace:** `DTS.Common.Interface`
Defines runtime metadata for a test execution. Implements `INotifyPropertyChanged`.
| Property | Type | Access |
|----------|------|--------|
| `Name` | `string` | get/set |
| `Id` | `string` | get/set |
| `Description` | `string` | get/set |
| `InlineSerializedData` | `bool` | get/set |
| `TestGuid` | `string` | get/set |
| `FaultFlags` | `int` | get/set |
| `Software` | `string` | get/set |
| `SoftwareVersion` | `string` | get/set |
| `DataType` | `string` | get/set |
| `FileDate` | `DateTime` | get/set |
| `FilePath` | `string` | get/set |
| `Modules` | `List<ITestModule>` | get/set |
| `Channels` | `List<ITestChannel>` | get/set |
| `CalculatedChannels` | `List<ITestChannel>` | get/set |
---
### `ITestSetupMetadata`
**Namespace:** `DTS.Common.Interface`
Defines configuration metadata for a test setup.
| Property | Type | Access |
|----------|------|--------|
| `SetupName` | `string` | get/set |
| `TimeStamp` | `DateTime` | get/set |
| `TestGraphs` | `List<ITestGraphs>` | get/set |
| `CalibrationBehavior` | `CalibrationBehaviors` | get/set |
---
### `ITestModule`
**Namespace:** `DTS.Common.Interface`
Represents a hardware module used during test recording. Implements `INotifyPropertyChanged`.
| Property | Type | Access |
|----------|------|--------|
| `SerialNumber` | `string` | get/set |
| `BaseSerialNumber` | `string` | get/set |
| `AaFilterRateHz` | `int` | get/set |
| `Number` | `int` | get/set |
| `NumberOfSamples` | `int` | get/set |
| `UnsubsampledNumberOfSamples` | `int` | get/set |
| `RequestedPostTriggerSeconds` | `double` | get/set |
| `RequestedPreTriggerSeconds` | `double` | get/set |
| `PostTriggerSeconds` | `double` | get/set |
| `PreTriggerSeconds` | `double` | get/set |
| `RecordingMode` | `string` | get/set |
| `SampleRateHz` | `int` | get/set |
| `StartRecordSampleNumber` | `int` | get/set |
| `NumberOfChannels` | `int` | get/set |
| `InlineSerializedData` | `bool` | get/set |
| `StartRecordTimestampSec` | `int` | get/set |
| `StartRecordTimestampNanoSec` | `int` | get/set |
| `TriggerTimestampSec` | `int` | get/set |
| `TriggerTimestampNanoSec` | `int` | get/set |
| `TriggerSampleNumbers` | `List<ulong>` | get/set |
| `PTPMasterSync` | `bool` | get/set |
| `TiltSensorAxisXDegreesPre`