init
This commit is contained in:
63
docs/ai/Common/DTS.CommonCore/Enums/Channels.md
Normal file
63
docs/ai/Common/DTS.CommonCore/Enums/Channels.md
Normal file
@@ -0,0 +1,63 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/Channels/ChannelCodeType.cs
|
||||
generated_at: "2026-04-17T16:38:59.797080+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "d62e91265181d499"
|
||||
---
|
||||
|
||||
# Documentation: ChannelCodeType.cs
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
This module defines the enumeration and constants for channel code types within the DTS system. It establishes a standardized distinction between ISO 13499-compliant channel codes and user-defined channel codes, providing both type identification (via the `ChannelCodeType` enum) and validation constraints (via length constants) for each code type.
|
||||
|
||||
---
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### Class: `ChannelEnumsAndConstants`
|
||||
|
||||
**Namespace:** `DTS.Common.Enums.Channels`
|
||||
|
||||
#### Constants
|
||||
|
||||
| Name | Type | Value | Description |
|
||||
|------|------|-------|-------------|
|
||||
| `IsoCodeTypeString` | `string` | `"ISO 13499"` | String identifier for ISO-type channel codes |
|
||||
| `UserCodeTypeString` | `string` | `"User"` | String identifier for user-defined channel codes |
|
||||
| `ISO_CODE_LENGTH` | `int` | `16` | Fixed length for ISO channel codes |
|
||||
| `USER_CODE_LENGTH` | `int` | `50` | Maximum length for user-defined channel codes |
|
||||
|
||||
#### Enum: `ChannelCodeType`
|
||||
|
||||
| Value | Description |
|
||||
|-------|-------------|
|
||||
| `ISO` | Represents ISO 13499-compliant channel codes |
|
||||
| `User` | Represents user-defined channel codes |
|
||||
|
||||
---
|
||||
|
||||
## 3. Invariants
|
||||
|
||||
- ISO channel codes must have a fixed length of exactly **16 characters** (`ISO_CODE_LENGTH`).
|
||||
- User-defined channel codes must not exceed **50 characters** (`USER_CODE_LENGTH`).
|
||||
- A channel code type must be either `ISO` or `User`—no other values are defined in the enumeration.
|
||||
- The string representation of ISO type is always `"ISO 13499"`; the string representation of User type is always `"User"`.
|
||||
|
||||
---
|
||||
|
||||
## 4. Dependencies
|
||||
|
||||
**This module depends on:**
|
||||
- None (no imports or external references in source)
|
||||
|
||||
**What depends on this module:**
|
||||
- Cannot be determined from source alone. The namespace `DTS.Common.Enums.Channels` suggests this is part of a core utilities library likely consumed by channel-related components throughout the system.
|
||||
|
||||
---
|
||||
|
||||
## 5. Gotchas
|
||||
|
||||
1. **Inconsistent naming convention:** Constants use mixed naming styles—`IsoCodeTypeString` uses PascalCase with "Iso" capitalized, while `ISO_CODE_LENGTH` uses SCREAMING_SNAKE_CASE. This may
|
||||
50
docs/ai/Common/DTS.CommonCore/Enums/Communication.md
Normal file
50
docs/ai/Common/DTS.CommonCore/Enums/Communication.md
Normal file
@@ -0,0 +1,50 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/Communication/CommunicationConstantsAndEnums.cs
|
||||
generated_at: "2026-04-17T16:09:21.372435+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "d613cb9c5eb24602"
|
||||
---
|
||||
|
||||
# Communication
|
||||
|
||||
### Purpose
|
||||
This module defines communication operation outcomes and a callback contract for reporting communication status. It provides a standardized enumeration for tracking the success, failure, or timeout states of connect, disconnect, send, and receive operations, enabling consistent error handling and status reporting across the communication layer.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`CommunicationConstantsAndEnums`** (static class)
|
||||
- Contains all communication-related enums and delegates.
|
||||
|
||||
**`CommunicationResult`** (enum)
|
||||
- `ConnectOK` - Connection succeeded
|
||||
- `ConnectFailed` - Connection attempt failed
|
||||
- `ConnectTimeout` - Connection attempt timed out
|
||||
- `DisconnectOK` - Disconnection succeeded
|
||||
- `DisconnectFailed` - Disconnection attempt failed
|
||||
- `DisconnectTimeout` - Disconnection attempt timed out
|
||||
- `SendOK` - Send operation succeeded
|
||||
- `SendFailed` - Send operation failed
|
||||
- `SendTimeout` - Send operation timed out
|
||||
- `ReceiveOK` - Receive operation succeeded
|
||||
- `ReceiveFailed` - Receive operation failed
|
||||
- `ReceiveTimeout` - Receive operation timed out
|
||||
- `Canceled` - Operation was canceled
|
||||
|
||||
**`CommunicationCallback`** (delegate)
|
||||
- Signature: `delegate bool CommunicationCallback(ICommunicationReport report)`
|
||||
- Accepts an `ICommunicationReport` instance and returns a boolean result.
|
||||
|
||||
### Invariants
|
||||
- The `CommunicationResult` enum values are implicitly ordered as defined; no explicit integer values are assigned.
|
||||
- Each operation type (Connect, Disconnect, Send, Receive) has exactly three outcome variants: OK, Failed, and Timeout, plus a global `Canceled` state.
|
||||
|
||||
### Dependencies
|
||||
- **Depends on**: `DTS.Common.Interface.Communication.ICommunicationReport` (used in delegate signature)
|
||||
- **Depended on by**: Not determinable from source alone
|
||||
|
||||
### Gotchas
|
||||
- None identified from source alone.
|
||||
|
||||
---
|
||||
473
docs/ai/Common/DTS.CommonCore/Enums/DASFactory.md
Normal file
473
docs/ai/Common/DTS.CommonCore/Enums/DASFactory.md
Normal file
@@ -0,0 +1,473 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/DASFactory/WakeupTriggers.cs
|
||||
- Common/DTS.CommonCore/Enums/DASFactory/UseCasesTSRAIR.cs
|
||||
- Common/DTS.CommonCore/Enums/DASFactory/S6DBDiagnosticChannelList.cs
|
||||
- Common/DTS.CommonCore/Enums/DASFactory/ConstantsAndEnums.cs
|
||||
- Common/DTS.CommonCore/Enums/DASFactory/DFConstantsAndEnums.cs
|
||||
generated_at: "2026-04-17T15:37:22.946695+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "ef8ddd30e450a408"
|
||||
---
|
||||
|
||||
# Documentation: DTS.Common.Enums.DASFactory
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
This module provides the core enumerations, constants, and utility extension methods for the DASFactory (Data Acquisition System Factory) component of the DTS system. It defines hardware device identifiers (`DASType`), recording modes, module types, diagnostic channel mappings, command status codes, fault flags, and various operational constants used throughout the data acquisition pipeline. The module serves as a central contract for hardware-specific identifiers and operational parameters, enabling consistent communication between the host software and DTS recording hardware.
|
||||
|
||||
---
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### Enumerations
|
||||
|
||||
#### `WakeupTriggers`
|
||||
**File:** `WakeupTriggers.cs`
|
||||
```csharp
|
||||
[TypeConverter(typeof(EnumDescriptionTypeConverter))]
|
||||
public enum WakeupTriggers
|
||||
{
|
||||
[Description("WakeupTriggers_MotionDetect")]
|
||||
MotionDetect,
|
||||
}
|
||||
```
|
||||
Defines wakeup trigger types for device power management. Currently supports only `MotionDetect`.
|
||||
|
||||
---
|
||||
|
||||
#### `UseCasesTSRAIR : byte`
|
||||
**File:** `UseCasesTSRAIR.cs`
|
||||
```csharp
|
||||
[TypeConverter(typeof(EnumDescriptionTypeConverter))]
|
||||
public enum UseCasesTSRAIR : byte
|
||||
{
|
||||
AEROSPACE,
|
||||
AEROSPACE_with_motion,
|
||||
VIBRATION,
|
||||
SCHEDULED,
|
||||
INTERVAL,
|
||||
STREAMING,
|
||||
PRETRIGGER_TEST,
|
||||
}
|
||||
```
|
||||
Defines TSR AIR device use case configurations.
|
||||
|
||||
---
|
||||
|
||||
#### `S6DBDiagnosticChannelList`
|
||||
**File:** `S6DBDiagnosticChannelList.cs`
|
||||
```csharp
|
||||
public enum S6DBDiagnosticChannelList
|
||||
{
|
||||
InputVoltage = 0,
|
||||
BackupVoltage = 1,
|
||||
TemperatureC = 2,
|
||||
BatterySoc = 3,
|
||||
DiagInputVoltage = 100,
|
||||
DiagMcuTemperature = 101,
|
||||
DiagChargerPower = 102,
|
||||
DiagChargerInputCurrent = 103,
|
||||
DiagEnv_1_Temperature = 104,
|
||||
DiagEnv_1_Humidity = 105,
|
||||
// ... (continues through DiagBatteryThermistor2Temperature = 119)
|
||||
}
|
||||
```
|
||||
Maps diagnostic channel identifiers for SLICE6DB hardware. Values 0-3 match legacy Base channels; values 100+ are DB-specific diagnostic channels.
|
||||
|
||||
---
|
||||
|
||||
#### `DASType`
|
||||
**File:** `ConstantsAndEnums.cs` and `DFConstantsAndEnums.cs` (defined in both)
|
||||
```csharp
|
||||
public enum DASType
|
||||
{
|
||||
NONE,
|
||||
HID_SLICE,
|
||||
WINUSB_SLICE,
|
||||
G5,
|
||||
SIM,
|
||||
TOM,
|
||||
DIM,
|
||||
TSR,
|
||||
HEADS,
|
||||
MINIDAU,
|
||||
ETHERNET_SLICE,
|
||||
ETHERNET_RIBEYE,
|
||||
SLICE_DB,
|
||||
TSR2,
|
||||
ETHERNET_TDAS,
|
||||
CDCUSB_SLICE,
|
||||
ETHERNET_SLICE2,
|
||||
WINUSB_SLICE1_5,
|
||||
ETHERNET_SLICE1_5,
|
||||
ETHERNET_SLICE6,
|
||||
ETHERNET_SLICE6AIR,
|
||||
WINUSB_SLICE6,
|
||||
WINUSB_SLICE6AIR,
|
||||
ETHERNET_SLICE6DB,
|
||||
SERIAL_TDAS,
|
||||
// Additional values in DFConstantsAndEnums.cs:
|
||||
ETHERNET_POWERPRO,
|
||||
ETHERNET_TSR_AIR,
|
||||
ETHERNET_SLICE6DB3,
|
||||
WINUSB_TSR_AIR,
|
||||
ETHERNET_SLICEPRODB,
|
||||
WINUSB_SLICE6AIR_BR,
|
||||
ETHERNET_SLICE6AIR_BR,
|
||||
}
|
||||
```
|
||||
Identifies DAS device types. **Note:** This enum is defined in both `ConstantsAndEnums.cs` and `DFConstantsAndEnums.cs` with the latter containing additional values.
|
||||
|
||||
---
|
||||
|
||||
#### `VoltageStatusColor`
|
||||
**File:** `ConstantsAndEnums.cs` and `DFConstantsAndEnums.cs` (defined in both)
|
||||
```csharp
|
||||
public enum VoltageStatusColor
|
||||
{
|
||||
Green,
|
||||
Red,
|
||||
Yellow,
|
||||
Off
|
||||
}
|
||||
```
|
||||
Represents voltage status indicator colors.
|
||||
|
||||
---
|
||||
|
||||
#### `RecordingMode`
|
||||
**File:** `DFConstantsAndEnums.cs`
|
||||
```csharp
|
||||
public enum RecordingMode
|
||||
{
|
||||
InvalidArmMode = 0,
|
||||
CircularBuffer = 1,
|
||||
RecorderMode = 2,
|
||||
AutoCircularBufferMode = 4,
|
||||
AutoRecorderMode = 5,
|
||||
ImmediateMode = 0x06,
|
||||
HighPowerRecorderMode = 0x07,
|
||||
LowPowerRecorderMode = 0x08,
|
||||
ContinuousRecorderMode = 0x09,
|
||||
HybridRecorderMode = 0x0A,
|
||||
MultiHybridRecorderMode = 0x0B,
|
||||
RAMActive = 0x0C,
|
||||
MultipleEventRAMActive = 0x0D,
|
||||
a14_NormalRecorderAndStreamSubSampleMode = 0x0E,
|
||||
// ... (many additional modes through 0x28)
|
||||
}
|
||||
```
|
||||
Defines all available recording modes for DAS units. Values are protocol-level identifiers sent to firmware.
|
||||
|
||||
---
|
||||
|
||||
#### `ModuleType`
|
||||
**File:** `DFConstantsAndEnums.cs`
|
||||
```csharp
|
||||
public enum ModuleType
|
||||
{
|
||||
SliceBridge,
|
||||
SliceARS,
|
||||
G5Analog,
|
||||
G5Digital,
|
||||
ProSIM,
|
||||
ProTOM,
|
||||
ProDIM,
|
||||
RibeyeLED,
|
||||
SLICEIEPE,
|
||||
// ... (many additional module types)
|
||||
StreamIn
|
||||
}
|
||||
```
|
||||
Identifies different hardware module types that can be connected to a DAS unit.
|
||||
|
||||
---
|
||||
|
||||
#### `ConfigMode`
|
||||
**File:** `DFConstantsAndEnums.cs`
|
||||
```csharp
|
||||
public enum ConfigMode
|
||||
{
|
||||
Disabled,
|
||||
Normal,
|
||||
DummyArm,
|
||||
Clock,
|
||||
UART,
|
||||
StreamOut,
|
||||
StreamIn,
|
||||
}
|
||||
```
|
||||
Determines how each channel is handled when the DAS unit arms.
|
||||
|
||||
---
|
||||
|
||||
#### `CommandStatus`
|
||||
**File:** `DFConstantsAndEnums.cs`
|
||||
```csharp
|
||||
public enum CommandStatus
|
||||
{
|
||||
StatusNoError = 0x00,
|
||||
StatusInvalidParameter,
|
||||
// ... (many status codes organized by category)
|
||||
StatusArmInvalidSampleRate = 0x30,
|
||||
StatusFlashEraseError = 0x10,
|
||||
// ... through StatusNoResponse
|
||||
}
|
||||
```
|
||||
Defines command execution status codes returned from firmware.
|
||||
|
||||
---
|
||||
|
||||
#### `FaultFlags` (Flags enum)
|
||||
**File:** `DFConstantsAndEnums.cs`
|
||||
```csharp
|
||||
[Flags]
|
||||
public enum FaultFlags
|
||||
{
|
||||
IncomingStatusLineDropped = 1 << 0,
|
||||
ADCBufferOverrun = 1 << 1,
|
||||
FlashCRCError = 1 << 2,
|
||||
// ... (through NO_DATA = 1 << 13)
|
||||
}
|
||||
```
|
||||
Legacy SLICE 1 ARM status fault flags.
|
||||
|
||||
---
|
||||
|
||||
#### `QATSExtendedFault` (Flags enum)
|
||||
**File:** `DFConstantsAndEnums.cs`
|
||||
Extended fault flags for S6DB, S6DB-3, TSAIR, and SPDB hardware.
|
||||
|
||||
---
|
||||
|
||||
#### `MultiCastDeviceClasses` (Flags enum)
|
||||
**File:** `DFConstantsAndEnums.cs`
|
||||
Bitwise device class identifiers used in UDP broadcast responses from devices.
|
||||
|
||||
---
|
||||
|
||||
#### `ProtocolLimitedCommands`
|
||||
**File:** `DFConstantsAndEnums.cs`
|
||||
Enumerates commands that may be protocol-limited (not supported on all firmware versions).
|
||||
|
||||
---
|
||||
|
||||
#### `TiltAxes`
|
||||
**File:** `DFConstantsAndEnums.cs`
|
||||
48 possible 3-axis assignments for SLICE6 bubble level tilt feature.
|
||||
|
||||
---
|
||||
|
||||
#### `TMAT_TEMPLATES`
|
||||
**File:** `DFConstantsAndEnums.cs`
|
||||
TMAT template identifiers with associated file name metadata attributes.
|
||||
|
||||
---
|
||||
|
||||
### Constants
|
||||
|
||||
#### `ConstantsAndEnums.cs`
|
||||
```csharp
|
||||
public const int EVENT_NUMBER_PRETEST_DIAG = -1;
|
||||
public const int EVENT_NUMBER_POSTTEST_DIAG = -2;
|
||||
public const int EVENT_NUMBER_MEASURE_BRIDGE = -3;
|
||||
```
|
||||
|
||||
#### `DFConstantsAndEnums.cs` (selected constants)
|
||||
```csharp
|
||||
public const int TSR_AIR_HIGH_G_CUTOFF_RATE_SPS = 500;
|
||||
public const byte ArmStateIdle = 0;
|
||||
public const string MADEUPEVENT_TESTID = "__MadeUp__";
|
||||
public const string NO_CONFIGURATION = "NO_CONFIGURATION";
|
||||
public const string TOMSWITCH_ARMED = "TOMSAFETY_ARMED";
|
||||
public const string SAFETYSWITCH_EXCEPTION = "SAFETYSWITCH_EXCEPTION";
|
||||
public const string CHANNEL_SEPARATOR = "_";
|
||||
public const string SERIAL_SEPARATOR = "-";
|
||||
public const int CHANNEL_X = 0;
|
||||
public const int CHANNEL_Y = 1;
|
||||
public const int CHANNEL_Z = 2;
|
||||
public const int CHANNEL_TEMPERATURE = 0;
|
||||
public const int CHANNEL_HUMIDITY = 1;
|
||||
public const int CHANNEL_PRESSURE = 2;
|
||||
public const int SCHEDULE_AHEAD_IN_MINUTES = 2;
|
||||
public const int High_g_Linear_1_Index = 3;
|
||||
public const int High_g_Linear_2_Index = 4;
|
||||
public const int High_g_Linear_3_Index = 5;
|
||||
public const int WSAEISCONN = 0X2748;
|
||||
public static readonly DateTime FIRST_USE_DATE_NOT_SET = (DateTime)System.Data.SqlTypes.SqlDateTime.MinValue;
|
||||
public static readonly int[] TSRAIR_ValidSampleRates = { 100, 500, 1000, 5000, 10000, 15000, 20000 };
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Static Properties
|
||||
|
||||
**File:** `DFConstantsAndEnums.cs`
|
||||
```csharp
|
||||
public static bool AlwaysShowUnsignedADC = false;
|
||||
public static int OneShotWaitTimeMs = 3000;
|
||||
public static string TemperatureLogTimeFormat { get; set; } = "MM-dd-yyyy HH:mm:ss";
|
||||
public static string TemperatureLogValueFormat { get; set; } = "N2";
|
||||
public static bool UseDropDownForTestObjectAndPosition { get; set; } = false;
|
||||
public static bool AllowEnableFaultCheckingOnS6DB { get; set; } = true;
|
||||
public static double TDASRemoveOffsetWeighting { get; set; } = 1D;
|
||||
public static double TDASShuntEmulationWeighting { get; set; } = .5D;
|
||||
public static int ExpectedMaxTDASDiagnosticRunTimePerChannelMS { get; set; } = 8000;
|
||||
public static bool UseUDPForAutoArmATDMonitor { get; set; } = false;
|
||||
public static bool ExtraCommunicationLogging { get; set; } = false;
|
||||
public static int ReceiveBufferSizeBytes { get; set; } = 65536;
|
||||
public static int SendBufferSizeBytes { get; set; } = 65536;
|
||||
public static uint RemoteKeepAliveSeconds { get; set; } = 60;
|
||||
public static uint RemoteKeepAliveRetryIntervalSeconds { get; set; } = 5;
|
||||
public static uint LocalKeepAliveTimeOutMS { get; set; } = 5000;
|
||||
public static uint LocalKeepAliveRetryIntervalMS = 1000;
|
||||
public static int HeartbeatAsyncConnectTimeoutMS = 10000;
|
||||
public static int WaitTimeBetweenUnitConnects = 100;
|
||||
public static bool DontDoSDL { get; set; } = false;
|
||||
public static string RealtimeUDPAddress { get; set; } = "UDP://239.1.2.10:8400";
|
||||
public static int UDP_RECEIVE_TIMEOUT = 10000;
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Methods
|
||||
|
||||
#### `IsSLICE6ERFirmware(string firmwareVersion)`
|
||||
**File:** `DFConstantsAndEnums.cs`
|
||||
```csharp
|
||||
public static bool IsSLICE6ERFirmware(string firmwareVersion)
|
||||
```
|
||||
Returns `true` if the firmware version string indicates an Ethernet Digital Recorder (EDR). Parses firmware version tokens and checks for "G1" or "G3" prefixes per the SLICE Base Types specification.
|
||||
|
||||
---
|
||||
|
||||
### Extension Methods (`RecordingModeExtensions`)
|
||||
|
||||
**File:** `DFConstantsAndEnums.cs`
|
||||
|
||||
```csharp
|
||||
public static bool UsesTestLength(RecordingModes mode)
|
||||
```
|
||||
Returns `true` if the recording mode uses test length for timing.
|
||||
|
||||
```csharp
|
||||
public static bool IsTSRAIROnlyRecordingMode(RecordingModes mode)
|
||||
```
|
||||
Returns `true` for modes exclusive to TSR AIR: `Active`, `MultipleEventActive`, `Scheduled`, `Interval`.
|
||||
|
||||
```csharp
|
||||
public static bool IsTSRAirRecordingMode(RecordingModes mode)
|
||||
```
|
||||
Returns `true` for modes allowed on TSR AIR devices.
|
||||
|
||||
```csharp
|
||||
public static bool SupportsT0Correction(DFConstantsAndEnums.RecordingMode recordingMode)
|
||||
```
|
||||
Returns `true` for circular buffer and hybrid recorder modes.
|
||||
|
||||
```csharp
|
||||
public static RecordingModes ToRecordingModes(DFConstantsAndEnums.RecordingMode recordingMode)
|
||||
public static RecordingModes ToRecordingModesAlt(DFConstantsAndEnums.RecordingMode mode)
|
||||
public static DFConstantsAndEnums.RecordingMode FromRecordingModes(this RecordingModes recordingMode)
|
||||
```
|
||||
Converts between `DFConstantsAndEnums.RecordingMode` and `RecordingModes` enum types.
|
||||
|
||||
```csharp
|
||||
public static bool IsACircularBufferMode(DFConstantsAndEnums.RecordingMode mode)
|
||||
public static bool IsACircularBufferMode(RecordingModes mode)
|
||||
```
|
||||
Returns `true` for circular buffer variants.
|
||||
|
||||
```csharp
|
||||
public static bool IsARecorderMode(DFConstantsAndEnums.RecordingMode mode)
|
||||
public static bool IsARecorderMode(RecordingModes mode)
|
||||
```
|
||||
Returns `true` for recorder mode variants.
|
||||
|
||||
```csharp
|
||||
public static bool IsAHybridRecorderMode(DFConstantsAndEnums.RecordingMode mode)
|
||||
public static bool IsAHybridRecorderMode(RecordingModes mode)
|
||||
```
|
||||
Returns `true` for hybrid recorder modes.
|
||||
|
||||
```csharp
|
||||
public static bool DoesModeSupportAutoArm(RecordingModes mode)
|
||||
```
|
||||
Returns `true` if the mode supports auto-arm functionality.
|
||||
|
||||
```csharp
|
||||
public static bool IsAMultipleEvent(RecordingModes mode)
|
||||
public static bool CanBeAMultipleEvent(RecordingModes mode)
|
||||
```
|
||||
Returns `true` for multiple-event recording modes.
|
||||
|
||||
```csharp
|
||||
public static bool IsAStreamMode(RecordingModes mode)
|
||||
public static bool IsAStreamMode(DFConstantsAndEnums.RecordingMode mode)
|
||||
```
|
||||
Returns `true` for streaming modes.
|
||||
|
||||
```csharp
|
||||
public static bool TestWillBeStreaming(RecordingModes recordingMode, bool streaming)
|
||||
```
|
||||
Returns `true` if the test will be streaming (checks both mode and streaming flag).
|
||||
|
||||
```csharp
|
||||
public static bool IsAUartMode(RecordingModes mode)
|
||||
public static bool IsAUartMode(DFConstantsAndEnums.RecordingMode mode)
|
||||
```
|
||||
Returns `true` for UART-enabled recording modes.
|
||||
|
||||
```csharp
|
||||
public static bool IsAnOpenEndedRecordingMode(RecordingModes mode)
|
||||
public static bool IsAnOpenEndedRecordingMode(DFConstantsAndEnums.RecordingMode mode)
|
||||
```
|
||||
Returns `true` for modes with no set recording time or post-trigger time.
|
||||
|
||||
---
|
||||
|
||||
## 3. Invariants
|
||||
|
||||
- **Event number ranges:** Diagnostic event numbers are negative integers (`EVENT_NUMBER_PRETEST_DIAG = -1`, `EVENT_NUMBER_POSTTEST_DIAG = -2`, `EVENT_NUMBER_MEASURE_BRIDGE = -3`).
|
||||
- **Channel indices:** Axis channels are 0-indexed (`CHANNEL_X = 0`, `CHANNEL_Y = 1`, `CHANNEL_Z = 2`).
|
||||
- **Diagnostic channel numbering:** Legacy Base channels use values 0-3; DB-specific diagnostic channels start at 100.
|
||||
- **RecordingMode values:** Enum values are protocol-level identifiers with specific hex values that must match firmware expectations.
|
||||
- **Flags enums:** `TempLogChannelBits`, `FaultFlags`, `MultiCastDeviceClasses`, and `QATSExtendedFault` are bitfield enums intended for bitwise operations.
|
||||
- **TSR AIR sample rates:** Valid sample rates are constrained to the values in `TSRAIR_ValidSampleRates` array: 100, 500, 1000, 5000, 10000, 15000, 20000 SPS.
|
||||
- **RecordingMode equivalence:** `RecordingMode.AutoActiveMode` and `RecordingMode.Aerospace` share the same value (0x1D) by design.
|
||||
|
||||
---
|
||||
|
||||
## 4. Dependencies
|
||||
|
||||
### This module depends on:
|
||||
- `DTS.Common.Base.Classes` - Base class infrastructure
|
||||
- `DTS.Common.Converters` - `EnumDescriptionTypeConverter` for enum description handling
|
||||
- `DTS.Common.Behaviors` - `StringMetaDataAttr` attribute used in `TMAT_TEMPLATES`
|
||||
- `System.ComponentModel` - `DescriptionAttribute`, `TypeConverterAttribute`
|
||||
- `System.Collections.Generic` - `HashSet`, `Dictionary`, `IReadOnlyDictionary`
|
||||
- `System.Linq` - LINQ extension methods
|
||||
- `System.Data.SqlTypes` - `SqlDateTime.MinValue` for `FIRST_USE_DATE_NOT_SET`
|
||||
|
||||
### What depends on this module:
|
||||
Cannot be determined from source alone. This module appears to be a foundational types library that would be referenced by DASFactory implementation classes, hardware communication layers, and UI components that need to display or configure device parameters.
|
||||
|
||||
---
|
||||
|
||||
## 5. Gotchas
|
||||
|
||||
1. **Duplicate enum definitions:** `DASType` and `VoltageStatusColor` are defined in both `ConstantsAndEnums.cs` and `DFConstantsAndEnums.cs`. The version in `DFConstantsAndEnums.cs` contains additional values. Consumers should verify which version they are referencing.
|
||||
|
||||
2. **RecordingMode value collision:** `RecordingMode.AutoActiveMode` and `RecordingMode.Aerospace` both equal `0x1D`. The source comment states: "not sure why this is duplicated here [AutoActiveMode = AeroSpace] but both have the same value. I'll just preserve it for now since I want to avoid any side effects."
|
||||
|
||||
3. **Static field state management:** The comment on `AlwaysShowUnsignedADC` states: "this property only holds the value of the attribute and does not store or retrieve it." Similarly, `UseDropDownForTestObjectAndPosition` "does not query database, so property must be set and maintained separately." These static properties require external lifecycle management.
|
||||
|
||||
4. **Incomplete documentation:** Several `RecordingMode` values have comments of "???" indicating unclear purpose: `ImmediateMode`, `HighPowerRecorderMode`, `LowPowerRecorderMode`, `ContinuousRecorderMode`, `HybridRecorderMode`, `MultiHybridRecorderMode`.
|
||||
|
||||
5. **Internal display modes:** Some `RecordingMode` values (0x17-0x1C) are marked as "internal to the OBR-DDR" and "don't show up in the UI."
|
||||
|
||||
6. **Firmware version parsing assumption:** `IsSLICE6ERFirmware` assumes firmware version strings follow a specific tokenized format with a 4-character final token. Behavior is undefined for malformed inputs.
|
||||
|
||||
7. **External reference tracking:** Multiple constants reference external bug/feature tracking numbers (e.g., "17567", "29796", "18090", "15575") that may provide context but are not accessible from source alone.
|
||||
30
docs/ai/Common/DTS.CommonCore/Enums/DBExport.md
Normal file
30
docs/ai/Common/DTS.CommonCore/Enums/DBExport.md
Normal file
@@ -0,0 +1,30 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/DBExport/TestObjectFields.cs
|
||||
- Common/DTS.CommonCore/Enums/DBExport/CustomDirectionFields.cs
|
||||
- Common/DTS.CommonCore/Enums/DBExport/CustomFinLoc2Fields.cs
|
||||
- Common/DTS.CommonCore/Enums/DBExport/CustomFinLoc1Fields.cs
|
||||
- Common/DTS.CommonCore/Enums/DBExport/CustomFinLoc3Fields.cs
|
||||
- Common/DTS.CommonCore/Enums/DBExport/CustomFilterFields.cs
|
||||
- Common/DTS.CommonCore/Enums/DBExport/PositionFields.cs
|
||||
- Common/DTS.CommonCore/Enums/DBExport/MainLocationFields.cs
|
||||
- Common/DTS.CommonCore/Enums/DBExport/PhysicalDimensionFields.cs
|
||||
- Common/DTS.CommonCore/Enums/DBExport/TopLevelFields.cs
|
||||
generated_at: "2026-04-17T16:03:09.382231+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "b6ddcd5a7a148c81"
|
||||
---
|
||||
|
||||
# DBExport
|
||||
|
||||
### 1. Purpose
|
||||
This module defines a set of public enumerations that serve as schemas for database export and import operations. It maps database fields for various domain entities—such as Test Objects, Locations (Fine and Main), Directions, Positions, and Physical Dimensions—to strongly typed constants. These enums likely facilitate serialization, XML tagging, or DataRow-to-Object mapping within the DTS system, ensuring consistent field naming when interacting with the underlying data store or external ISO-compatible components.
|
||||
|
||||
### 2. Public Interface
|
||||
The module exposes the following enumerations:
|
||||
|
||||
* **`enum TestObjectFields`**: Defines fields for test objects.
|
||||
* Values: `s_GUID`, `TEST_OBJECT`, `TEXT_L1`, `TEXT_L2`, `VERSION`, `DATE`, `REMARKS`, `EXPIRED`, `SORTKEY`, `LAST_CHANGE`, `LAST_CHANGE_TEXT`, `HISTORY`.
|
||||
* **`enum CustomDirectionFields`**: Defines fields for `ISODll.MMEDirection`.
|
||||
* Values: `Direction`, `Expired`, `History
|
||||
@@ -0,0 +1,86 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/ChartOptions/TimeUnitType.cs
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/ChartOptions/FilterOption.cs
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/ChartOptions/YRangeScale.cs
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/ChartOptions/WakeMethodType.cs
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/ChartOptions/ChartUnitType.cs
|
||||
generated_at: "2026-04-17T16:34:18.274852+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "17f23c64b5cf1df1"
|
||||
---
|
||||
|
||||
# Documentation: Chart Options Enums
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
This module defines a set of enumeration types used for configuring chart display options in the DTS Viewer component. These enums control time unit representation, data filtering, Y-axis scaling, device wake methods, and chart unit types. They are designed for integration with the Xceed WPF Toolkit PropertyGrid, providing both programmatic enum values and user-facing display strings via `Description` attributes.
|
||||
|
||||
---
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### TimeUnitTypeEnum
|
||||
**Namespace:** `DTS.Common.Enums.Viewer`
|
||||
|
||||
```csharp
|
||||
[TypeConverter(typeof(EnumDescriptionTypeConverter))]
|
||||
public enum TimeUnitTypeEnum
|
||||
```
|
||||
|
||||
| Member | Value | Description |
|
||||
|--------|-------|-------------|
|
||||
| `MS` | 0 | "ms" - Milliseconds |
|
||||
| `Seconds` | 1 | "Seconds" |
|
||||
|
||||
---
|
||||
|
||||
### TimeUnitTypeItemSource
|
||||
**Namespace:** `DTS.Common.Enums.Viewer`
|
||||
|
||||
```csharp
|
||||
public class TimeUnitTypeItemSource : IItemsSource
|
||||
```
|
||||
|
||||
| Method | Return Type | Description |
|
||||
|--------|-------------|-------------|
|
||||
| `GetValues()` | `ItemCollection` | Returns a list of `TimeUnitTypeEnum` values for PropertyGrid dropdowns via `EnumUtil.GetValuesList<TimeUnitTypeEnum>()` |
|
||||
|
||||
---
|
||||
|
||||
### FilterOptionEnum
|
||||
**Namespace:** `DTS.Common.Enums.Viewer`
|
||||
|
||||
```csharp
|
||||
[TypeConverter(typeof(EnumDescriptionTypeConverter))]
|
||||
public enum FilterOptionEnum
|
||||
```
|
||||
|
||||
| Member | Value | Description |
|
||||
|--------|-------|-------------|
|
||||
| `Unfiltered` | 0 | "Unfiltered" |
|
||||
| `TestSetupDefault` | 1 | "Test Setup Default" |
|
||||
| `Custom` | 2 | "Custom" |
|
||||
|
||||
---
|
||||
|
||||
### FilterOptionEnumItemSource
|
||||
**Namespace:** `DTS.Common.Enums.Viewer`
|
||||
|
||||
```csharp
|
||||
public class FilterOptionEnumItemSource : IItemsSource
|
||||
```
|
||||
|
||||
| Method | Return Type | Description |
|
||||
|--------|-------------|-------------|
|
||||
| `GetValues()` | `ItemCollection` | Returns a list of `FilterOptionEnum` values via `EnumUtil.GetValuesList<FilterOptionEnum>()` |
|
||||
|
||||
---
|
||||
|
||||
### YRangeScaleEnum
|
||||
**Namespace:** `DTS.Common.Enums.Viewer`
|
||||
|
||||
```csharp
|
||||
[TypeConverter(typeof(EnumDescriptionTypeConverter))]
|
||||
public enum YRangeScale
|
||||
17
docs/ai/Common/DTS.CommonCore/Enums/DTS.Viewer/Filter.md
Normal file
17
docs/ai/Common/DTS.CommonCore/Enums/DTS.Viewer/Filter.md
Normal file
@@ -0,0 +1,17 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/Filter/SearchEnum.cs
|
||||
generated_at: "2026-04-17T16:08:31.229189+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "c1355309c7e0a5e8"
|
||||
---
|
||||
|
||||
# Filter
|
||||
|
||||
### Purpose
|
||||
This module defines the `FilterEnum` enumeration, which distinguishes between filter contexts within the DTS Viewer component. It provides a simple categorization for filtering operations, differentiating between Test and Graph filter types.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`enum
|
||||
@@ -0,0 +1,84 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/Reports/PowerSpectralDensity/WindowAveragingType.cs
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/Reports/PowerSpectralDensity/PassFilterType.cs
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/Reports/PowerSpectralDensity/WindowWidth.cs
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/Reports/PowerSpectralDensity/WindowType.cs
|
||||
generated_at: "2026-04-17T16:34:44.658125+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "693ffc5f875269f1"
|
||||
---
|
||||
|
||||
# Power Spectral Density Enumerations Documentation
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
This module defines four enumeration types used for configuring Power Spectral Density (PSD) report generation within the DTS Viewer system. These enums provide strongly-typed configuration options for FFT (Fast Fourier Transform) windowing parameters, including window function type, window size, averaging method, and filter type. All enums are decorated with `TypeConverter` and `Description` attributes to support user-friendly display in UI components.
|
||||
|
||||
---
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### `WindowAveragingType`
|
||||
**Namespace:** `DTS.Common.Enums.Viewer.Reports`
|
||||
|
||||
Defines the spectral averaging method applied during PSD analysis.
|
||||
|
||||
| Member | Description Attribute | Implicit Value |
|
||||
|--------|----------------------|----------------|
|
||||
| `Averaging` | "Averaging" | 0 |
|
||||
| `PeakHoldMax` | "Peak Hold MAX" | 1 |
|
||||
| `PeakHoldMin` | "Peak Hold MIN" | 2 |
|
||||
|
||||
---
|
||||
|
||||
### `PassFilterType`
|
||||
**Namespace:** `DTS.Common.Enums.Viewer.Reports`
|
||||
|
||||
Defines the analog filter approximation type used in signal processing.
|
||||
|
||||
| Member | Description Attribute | Implicit Value |
|
||||
|--------|----------------------|----------------|
|
||||
| `Bessel` | "Bessel" | 0 |
|
||||
| `Butterworth` | "Butterworth" | 1 |
|
||||
| `Chebyshev` | "Chebyshev" | 2 |
|
||||
|
||||
---
|
||||
|
||||
### `WindowWidth`
|
||||
**Namespace:** `DTS.Common.Enums.Viewer.Reports`
|
||||
|
||||
Defines the FFT window size (number of samples). Values are explicitly assigned to match their numeric representation.
|
||||
|
||||
| Member | Description Attribute | Explicit Value |
|
||||
|--------|----------------------|----------------|
|
||||
| `FiveTwelve` | "512" | 512 |
|
||||
| `TenTwentyFour` | "1024" | 1024 |
|
||||
| `TwentyFortyEight` | "2048" | 2048 |
|
||||
| `FortyNinetySix` | "4096" | 4096 |
|
||||
| `EightyOneNinetyTwo` | "8192" | 8192 |
|
||||
|
||||
---
|
||||
|
||||
### `WindowType`
|
||||
**Namespace:** `DTS.Common.Enums.Viewer.Reports`
|
||||
|
||||
Defines the window function applied to the signal before FFT transformation.
|
||||
|
||||
| Member | Description Attribute | Implicit Value |
|
||||
|--------|----------------------|----------------|
|
||||
| `Rectangle` | "Rectangle" | 0 |
|
||||
| `Hamming` | "Hamming" | 1 |
|
||||
| `Hanning` | "Hanning" | 2 |
|
||||
| `Blackman` | "Blackman" | 3 |
|
||||
| `BlackmanHarris` | "Blackman-Harris" | 4 |
|
||||
| `FlatTop` | "Flat Top" | 5 |
|
||||
|
||||
---
|
||||
|
||||
## 3. Invariants
|
||||
|
||||
- All four enums are decorated with `[TypeConverter(typeof(EnumDescriptionTypeConverter))]`, indicating they are intended for UI binding where the `Description` attribute value should be displayed rather than the enum member name.
|
||||
- `WindowWidth` members have explicit integer values that are always powers of 2 (512, 1024, 2048, 4096, 8192), suitable for FFT algorithms.
|
||||
- `WindowWidth` values are strictly increasing
|
||||
@@ -0,0 +1,18 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/TestMetadata/ChannelGroups.cs
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/TestMetadata/TestGraphsFields.cs
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/TestMetadata/TestSetupFields.cs
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/TestMetadata/TestRunMetadataFields.cs
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/TestMetadata/TestModuleFields.cs
|
||||
- Common/DTS.CommonCore/Enums/DTS.Viewer/TestMetadata/TestChannelFields.cs
|
||||
generated_at: "2026-04-17T16:22:17.505152+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "9fe8117654f84538"
|
||||
---
|
||||
|
||||
# TestMetadata
|
||||
|
||||
### Purpose
|
||||
This module defines strongly-typed enumerations that serve as field identifiers for parsing,
|
||||
13
docs/ai/Common/DTS.CommonCore/Enums/Database.md
Normal file
13
docs/ai/Common/DTS.CommonCore/Enums/Database.md
Normal file
@@ -0,0 +1,13 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/Database/DbType.cs
|
||||
generated_at: "2026-04-17T16:39:03.755353+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "9ce7aa6428961cfb"
|
||||
---
|
||||
|
||||
# Documentation: `DTS.Common.Enums.Database.DbType`
|
||||
|
||||
## 1. Purpose
|
||||
This module defines the `DbType` enumeration, which specifies the database
|
||||
74
docs/ai/Common/DTS.CommonCore/Enums/GroupTemplates.md
Normal file
74
docs/ai/Common/DTS.CommonCore/Enums/GroupTemplates.md
Normal file
@@ -0,0 +1,74 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/GroupTemplates/GroupTemplateChannelFields.cs
|
||||
- Common/DTS.CommonCore/Enums/GroupTemplates/GroupTemplateFields.cs
|
||||
generated_at: "2026-04-17T16:37:01.677534+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "8d4381d6f54274f5"
|
||||
---
|
||||
|
||||
# Documentation: Group Template Field Enums
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
This module defines two enumeration types within the `DTS.Common.Enums.GroupTemplates` namespace that serve as field identifiers for group template entities and their associated channels. These enums provide strongly-typed constants for referencing specific fields, likely used in data mapping, validation, serialization, or UI binding scenarios where field names need to be referenced programmatically rather than via magic strings.
|
||||
|
||||
---
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### `GroupTemplateChannelFields`
|
||||
**Namespace:** `DTS.Common.Enums.GroupTemplates`
|
||||
|
||||
Defines field identifiers for channel objects within group templates.
|
||||
|
||||
| Member | Implicit Value |
|
||||
|--------|----------------|
|
||||
| `Required` | 0 |
|
||||
| `Name` | 1 |
|
||||
| `ISOCode` | 2 |
|
||||
| `Custom` | 3 |
|
||||
| `DisplayOrder` | 4 |
|
||||
|
||||
---
|
||||
|
||||
### `GroupTemplateFields`
|
||||
**Namespace:** `DTS.Common.Enums.GroupTemplates`
|
||||
|
||||
Defines field identifiers for group template entities.
|
||||
|
||||
| Member | Implicit Value |
|
||||
|--------|----------------|
|
||||
| `Name` | 0 |
|
||||
| `Description` | 1 |
|
||||
| `Channels` | 2 |
|
||||
| `LastModifiedBy` | 3 |
|
||||
| `LastModified` | 4 |
|
||||
| `AssociatedGroups` | 5 |
|
||||
|
||||
---
|
||||
|
||||
## 3. Invariants
|
||||
|
||||
- Both enums use implicit integer backing values starting at 0, incrementing by 1 for each subsequent member.
|
||||
- The `Name` member exists in both enums but represents different entities and has different implicit values (`1` in `GroupTemplateChannelFields`, `0` in `GroupTemplateFields`).
|
||||
- All enum members are `public` by default (standard C# enum member visibility).
|
||||
|
||||
---
|
||||
|
||||
## 4. Dependencies
|
||||
|
||||
**Dependencies (what this module imports):**
|
||||
- None. These are self-contained enum definitions with no external references.
|
||||
|
||||
**Dependents (what depends on this module):**
|
||||
- Unknown from source alone. Consumers would reference the `DTS.Common.Enums.GroupTemplates` namespace to use these field identifiers.
|
||||
|
||||
---
|
||||
|
||||
## 5. Gotchas
|
||||
|
||||
- **Member name collision:** `Name` exists in both enums. Code referencing these values must use the fully-qualified type or disambiguate via the enum type to avoid confusion.
|
||||
- **Implicit value ordering:** The implicit integer values differ for semantically similar fields. For example, `Name` is value `1` in `GroupTemplateChannelFields` but `0` in `GroupTemplateFields`. Any serialization or persistence logic relying on these integer values should account for this.
|
||||
- **No explicit values defined:** Neither enum explicitly assigns values to members. Refactoring (adding, removing, or reordering members) could break any code or stored data that depends on the implicit integer values.
|
||||
13
docs/ai/Common/DTS.CommonCore/Enums/Groups.md
Normal file
13
docs/ai/Common/DTS.CommonCore/Enums/Groups.md
Normal file
@@ -0,0 +1,13 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/Groups/GroupImport.cs
|
||||
generated_at: "2026-04-17T16:39:22.780687+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "06d8fd51cf37a800"
|
||||
---
|
||||
|
||||
# Documentation: GroupImportEnums
|
||||
|
||||
## 1. Purpose
|
||||
This module defines the `Steps` enumeration used to track the progression of a group import workflow. It encapsulates the stages of the import process within the `GroupImportEnums` abstract container class, providing strongly-typed state management for
|
||||
40
docs/ai/Common/DTS.CommonCore/Enums/Groups/GroupList.md
Normal file
40
docs/ai/Common/DTS.CommonCore/Enums/Groups/GroupList.md
Normal file
@@ -0,0 +1,40 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/Groups/GroupList/GroupFields.cs
|
||||
generated_at: "2026-04-17T16:08:31.227396+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "7fad27458f4f959c"
|
||||
---
|
||||
|
||||
# GroupList
|
||||
|
||||
### Purpose
|
||||
This module defines the `GroupFields` enumeration, which specifies the standard field names for Group entities within the DTS system. It provides a type-safe way to reference group properties, likely used for data binding, sorting, filtering, or display column configuration in group listing views. The enum supports localized display names via `Description` attributes.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`enum GroupFields`**
|
||||
- A public enum decorated with `[TypeConverter(typeof(EnumDescriptionTypeConverter))]` to enable conversion between enum values and their string descriptions.
|
||||
- **Values:**
|
||||
- `Name` — Description key: "GroupField_Name"
|
||||
- `DisplayName` — Description key: "GroupField_DisplayName"
|
||||
- `Description` — Description key: "GroupField_Description"
|
||||
- `ChannelCount` — Description key: "GroupField_ChannelCount"
|
||||
- `LastModified` — Description key: "GroupField_LastModified"
|
||||
- `LastModifiedBy` — Description key: "GroupField_LastModifiedBy"
|
||||
- `AssociatedTestSetups` — Description key: "GroupField_AssociatedTestSetups"
|
||||
|
||||
### Invariants
|
||||
- Each enum value has an associated `[Description]` attribute containing a localization resource key (not a display string directly).
|
||||
- The underlying integer values follow default C# enum behavior (starting at 0, incrementing by 1).
|
||||
|
||||
### Dependencies
|
||||
- **Depends on:** `DTS.Common.Converters.EnumDescriptionTypeConverter` (for type conversion), `System.ComponentModel` (for `TypeConverter` and `Description` attributes).
|
||||
- **Depended on by:** Not determinable from source alone; likely consumed by Group listing/view components.
|
||||
|
||||
### Gotchas
|
||||
- The `Description` attribute values (e.g., "GroupField_Name") appear to be localization keys, not human-readable strings. Consumers must resolve these via a localization mechanism.
|
||||
- Unlike `TestSetupFields`, this enum uses `Description` attributes and a custom `TypeConverter`, suggesting different display handling patterns across the codebase.
|
||||
|
||||
---
|
||||
153
docs/ai/Common/DTS.CommonCore/Enums/Hardware.md
Normal file
153
docs/ai/Common/DTS.CommonCore/Enums/Hardware.md
Normal file
@@ -0,0 +1,153 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/Hardware/HardwareListTags.cs
|
||||
- Common/DTS.CommonCore/Enums/Hardware/SLICEConfigurations.cs
|
||||
- Common/DTS.CommonCore/Enums/Hardware/HardwareTypes.cs
|
||||
generated_at: "2026-04-17T15:39:37.643124+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "b97b7d2daf9e6693"
|
||||
---
|
||||
|
||||
# Documentation: DTS.Common.Enums.Hardware
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
This module defines the core hardware enumeration types and utility functions for the DTS (Data Acquisition System) hardware platform. It provides a centralized definition of hardware device types (`HardwareTypes`), SLICE configurations, hardware list metadata tags, and an abstract `HardwareConstants` class containing static helper methods for querying hardware capabilities such as recording mode support, streaming profiles, clock synchronization, trigger inversion support, and embedded sensor detection. This module serves as the canonical reference for hardware type identification and capability resolution across the system.
|
||||
|
||||
---
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### Enums
|
||||
|
||||
#### `HardwareListTags`
|
||||
Defines metadata tags used to identify hardware list properties.
|
||||
|
||||
```csharp
|
||||
public enum HardwareListTags
|
||||
{
|
||||
Included,
|
||||
SerialNumber,
|
||||
HardwareType,
|
||||
ChannelCount,
|
||||
Firmware,
|
||||
MaxSampleRate,
|
||||
TestSampleRate,
|
||||
CalDate,
|
||||
CalDueDate,
|
||||
IPAddress,
|
||||
FirstUseDate
|
||||
}
|
||||
```
|
||||
|
||||
#### `SLICEConfigurations`
|
||||
Defines SLICE hardware sample rate configurations. Decorated with `[TypeConverter(typeof(EnumDescriptionTypeConverter))]`.
|
||||
|
||||
```csharp
|
||||
public enum SLICEConfigurations
|
||||
{
|
||||
[Description("SLICE_CONFIGURATION_MEGA")]
|
||||
MEGA,
|
||||
[Description("SLICE_CONFIGURATION_800K")]
|
||||
EIGHT_HUNDRED,
|
||||
[Description("SLICE_CONFIGURATION_700K")]
|
||||
SEVEN_HUNDRED,
|
||||
[Description("SLICE_CONFIGURATION_600K")]
|
||||
SIX_HUNDRED
|
||||
}
|
||||
```
|
||||
|
||||
#### `HardwareTypes`
|
||||
Defines all supported hardware device types with explicit integer values. Decorated with `[TypeConverter(typeof(EnumDescriptionTypeConverter))]`. Contains 59 defined values (0-58, with gaps at 22 and 35).
|
||||
|
||||
Key values include:
|
||||
- `SLICE_Base = 0` through `SLICE6_AIR_BR = 58`
|
||||
- `UNDEFINED = 38` - Represents unknown/empty hardware type
|
||||
- Various SLICE variants, TDAS equipment, embedded sensor modules, and specialty hardware
|
||||
|
||||
#### `SLICEBridgeTypes`
|
||||
Defines bridge module types. Decorated with `[TypeConverter(typeof(EnumDescriptionTypeConverter))]`.
|
||||
|
||||
```csharp
|
||||
public enum SLICEBridgeTypes
|
||||
{
|
||||
[Description("BRIDGETYPE_BRIDGE_DESCRIPTION")]
|
||||
Bridge,
|
||||
[Description("BRIDGETYPE_IEPE_DESCRIPTION")]
|
||||
IEPE,
|
||||
[Description("BRIDGETYPE_ARS_DESCRIPTION")]
|
||||
ARS,
|
||||
[Description("BRIDGETYPE_ACC_DESCRIPTION")]
|
||||
ACC,
|
||||
[Description("BRIDGETYPE_RTC_DESCRIPTION")]
|
||||
RTC,
|
||||
[Description("BRIDGETYPE_UART_DESCRIPTION")]
|
||||
UART,
|
||||
[Description("BRIDGETYPE_STREAM_OUT_DESCRIPTION")]
|
||||
StreamOut
|
||||
}
|
||||
```
|
||||
|
||||
#### `RackSizes`
|
||||
Defines rack size configurations. Decorated with `[TypeConverter(typeof(EnumDescriptionTypeConverter))]`.
|
||||
|
||||
```csharp
|
||||
public enum RackSizes
|
||||
{
|
||||
[Description("RACK_SIZE_4M")]
|
||||
FOUR,
|
||||
[Description("RACK_SIZE_8M")]
|
||||
EIGHT
|
||||
}
|
||||
```
|
||||
|
||||
### HardwareConstants Class
|
||||
|
||||
Abstract class providing static utility methods and constants for hardware capability queries.
|
||||
|
||||
#### Constants
|
||||
```csharp
|
||||
public const int INVALID_IDASCOMMUNICATION_RECORD_ID = -1;
|
||||
public const int DEFAULTMEMORYSIZE_PRO = 16000000;
|
||||
public const int DEFAULTMEMORYSIZE_DIM = 2000000;
|
||||
public const int DEFAULTMEMORYSIZE_TOM = 2000000;
|
||||
```
|
||||
|
||||
#### Properties
|
||||
```csharp
|
||||
public static bool AllowSoftDisconnects { get; set; } = false;
|
||||
```
|
||||
Global configuration for allowing soft disconnects; must be set by the application.
|
||||
|
||||
#### Methods
|
||||
|
||||
```csharp
|
||||
public static SolidColorBrush GetBrushForVoltageStatus(DFConstantsAndEnums.VoltageStatusColor status)
|
||||
```
|
||||
Returns a `SolidColorBrush` corresponding to the voltage status color (Green, Red, Yellow, Off).
|
||||
|
||||
```csharp
|
||||
public static bool SupportsTriggerInversion(HardwareTypes type, int protocolVersion)
|
||||
```
|
||||
Returns `true` if the hardware type supports trigger inversion. Supports SLICE, SLICE1.5, SLICE2 variants.
|
||||
|
||||
```csharp
|
||||
public static bool SupportsStartInversion(HardwareTypes type, int protocolVersion)
|
||||
```
|
||||
Returns `true` if the hardware type supports start inversion. Supports SLICE, SLICE1.5, SLICE2 variants, and `SLICE6_AIR`.
|
||||
|
||||
```csharp
|
||||
public static bool IsEthernetRecorder(HardwareTypes type)
|
||||
```
|
||||
Returns `true` if the hardware type is `S6A_EthernetRecorder`.
|
||||
|
||||
```csharp
|
||||
public static bool HasEmbeddedSensors(HardwareTypes hardware)
|
||||
```
|
||||
Returns `true` for embedded sensor hardware types (`EMB_*` series, `TSR_AIR`, `TSR_AIR_RevB`, `DIR`, `DKR`).
|
||||
|
||||
```csharp
|
||||
public static bool HasEmbeddedChannelType(HardwareTypes hardware, string channelType)
|
||||
```
|
||||
Determin
|
||||
25
docs/ai/Common/DTS.CommonCore/Enums/Reports.md
Normal file
25
docs/ai/Common/DTS.CommonCore/Enums/Reports.md
Normal file
@@ -0,0 +1,25 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/Reports/ReportConstantsAndEnums.cs
|
||||
generated_at: "2026-04-17T16:38:59.428727+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "0ce66b15a5017737"
|
||||
---
|
||||
|
||||
# Documentation for ReportConstantsAndEnums.cs
|
||||
|
||||
## 1. Purpose
|
||||
This file defines the namespace `DTS.Common.Enums.Reports` and is intended to serve as a central location for constants and enumerations related to the reporting subsystem. However, the source code currently contains no types or members; the namespace block is empty.
|
||||
|
||||
## 2. Public Interface
|
||||
**None.**
|
||||
The namespace `DTS.Common.Enums.Reports` is currently empty. There are no public classes, structs, enums, or functions defined in this file.
|
||||
|
||||
## 3. Invariants
|
||||
None identified from source alone. The file contains no logic or data structures to enforce constraints.
|
||||
|
||||
## 4. Dependencies
|
||||
* **Imports:** The file imports `System`, `System.Collections.Generic`, `System.Linq`, `System.Text`, and `System.Threading.Tasks`.
|
||||
* *Note:* Because the namespace is empty, all imported namespaces are currently unused.
|
||||
* **Consumers:** Cannot
|
||||
314
docs/ai/Common/DTS.CommonCore/Enums/Sensors.md
Normal file
314
docs/ai/Common/DTS.CommonCore/Enums/Sensors.md
Normal file
@@ -0,0 +1,314 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/Sensors/SensorChangeTypes.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/SensorStatus.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/PossibleFilters.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/LinearizationFormula.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/CalibrationEnforcement.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/CalibrationBehaviors.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/InitialOffsetTypes.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/FilterClassType.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/ZeroMethodType.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/CSVImportTags.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/SensorConstants.cs
|
||||
generated_at: "2026-04-17T15:32:07.953285+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "dc5ee5fbfa705d3b"
|
||||
---
|
||||
|
||||
# DTS.Common.Enums.Sensors Module Documentation
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
This module provides the core enumerations, constants, and utility methods for sensor configuration and management within the DTS system. It defines sensor lifecycle states, calibration behaviors and enforcement policies, filter class types (CFC standards), zero calculation methods, CSV import/export field definitions with versioning support, and various sensor-related constants including default values, bridge types, and sensitivity units. The module serves as the foundational type system for sensor-related operations across the application.
|
||||
|
||||
---
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### Enums
|
||||
|
||||
#### `SensorChangeTypes`
|
||||
```csharp
|
||||
public enum SensorChangeTypes { OffsetTolerance }
|
||||
```
|
||||
Defines types of sensor changes. Currently only `OffsetTolerance` is defined.
|
||||
|
||||
#### `SensorStatus`
|
||||
```csharp
|
||||
public enum SensorStatus { Available, InUse, OutForService, OutForCalibration, Retired }
|
||||
```
|
||||
Defines the lifecycle states of a sensor.
|
||||
|
||||
#### `PossibleFilters`
|
||||
```csharp
|
||||
public enum PossibleFilters { All, Analog, Squib, DigitalIn, DigitalOut, UART, StreamOut, StreamIn }
|
||||
```
|
||||
Describes different ways of filtering channels and sensors by type.
|
||||
|
||||
#### `NonLinearStyles`
|
||||
```csharp
|
||||
public enum NonLinearStyles { IRTraccManual, IRTraccDiagnosticsZero, IRTraccZeroMMmV, IRTraccAverageOverTime, Polynomial, IRTraccCalFactor }
|
||||
```
|
||||
Defines non-linear calibration styles.
|
||||
|
||||
#### `NonLinearSLICEWareStyles`
|
||||
```csharp
|
||||
public enum NonLinearSLICEWareStyles { Manual, DiagnosticZeroMMmV, ZeroMMmV, AverageOverTime, Polynomial }
|
||||
```
|
||||
Defines non-linear calibration styles specific to SLICEWare.
|
||||
|
||||
#### `CalibrationEnforcement`
|
||||
```csharp
|
||||
[TypeConverter(typeof(EnumDescriptionTypeConverter))]
|
||||
public enum CalibrationEnforcement { None, NonLinear, Linear }
|
||||
```
|
||||
Defines calibration enforcement policies. Uses `EnumDescriptionTypeConverter` for display string conversion.
|
||||
|
||||
#### `CalibrationBehaviors`
|
||||
```csharp
|
||||
[TypeConverter(typeof(EnumDescriptionTypeConverter))]
|
||||
public enum CalibrationBehaviors { LinearIfAvailable, NonLinearIfAvailable, UseBothIfAvailable }
|
||||
```
|
||||
Defines how calibration data should be applied.
|
||||
|
||||
#### `InitialOffsetTypes`
|
||||
```csharp
|
||||
[TypeConverter(typeof(EnumDescriptionTypeConverter))]
|
||||
public enum InitialOffsetTypes { None = 0, EU = 1, EUAtMV = 2, LHS = 3, RHS = 4, FRONTAL = 5 }
|
||||
```
|
||||
Defines the format of initial offset values.
|
||||
|
||||
#### `FilterClassType`
|
||||
```csharp
|
||||
[TypeConverter(typeof(EnumDescriptionTypeConverter))]
|
||||
public enum FilterClassType
|
||||
```
|
||||
Defines SAE filter class types with associated frequencies:
|
||||
| Member | Value | Notes |
|
||||
|--------|-------|-------|
|
||||
| `None` | 0 | Code = P unless `UseZeroForUnfiltered` is True, then Code = 0 |
|
||||
| `AdHoc` | -1 | |
|
||||
| `Unfiltered` | -2 | Code = 0 |
|
||||
| `CFC10` | 17 | 17 Hz |
|
||||
| `CFC60` | 100 | 100 Hz; Code = D |
|
||||
| `CFC180` | 300 | 300 Hz; Code = C |
|
||||
| `CFC600` | 1000 | 1000 Hz; Code = B |
|
||||
| `CFC1000` | 1650 | 1650 Hz; Code = A |
|
||||
|
||||
#### `ZeroMethodType`
|
||||
```csharp
|
||||
[TypeConverter(typeof(EnumDescriptionTypeConverter))]
|
||||
public enum ZeroMethodType { AverageOverTime = 0, UsePreEventDiagnosticsZero = 1, None = 2 }
|
||||
```
|
||||
Defines methods for calculating electrical zero.
|
||||
|
||||
#### `OriginalZeroMethodType`
|
||||
```csharp
|
||||
public enum OriginalZeroMethodType { AverageOverTime, UsePreCalZero, None }
|
||||
```
|
||||
Original version of zero method types for legacy compatibility.
|
||||
|
||||
#### `SensorConstants.SensorSettings`
|
||||
```csharp
|
||||
public enum SensorSettings
|
||||
```
|
||||
Defines sensor setting identifiers including `Range`, `CFC`, `Polarity`, `Position`, `OutputMode`, `SQMode`, `DIMode`, `ZeroMethod`, `FilterClass`, `UartBaudRate`, `StreamOutUDPProfile`, `ACCouplingEnabled`, `BridgeType`, and others.
|
||||
|
||||
#### `SensorConstants.SensorType`
|
||||
```csharp
|
||||
public enum SensorType { Analog, DigitalIn, DigitalOut, Squib, Clock, UART, StreamOut, StreamIn }
|
||||
```
|
||||
|
||||
#### `SensorConstants.SensUnits`
|
||||
```csharp
|
||||
public enum SensUnits { NONE = 0, mV = 1, mVperV = 2, mVperVperEU = 3, mVperEU = 4 }
|
||||
```
|
||||
Defines sensitivity unit types.
|
||||
|
||||
#### `SensorConstants.BridgeType`
|
||||
```csharp
|
||||
public enum BridgeType
|
||||
```
|
||||
Defines bridge/sensor setup types as bit flags: `IEPE`, `QuarterBridge`, `HalfBridge`, `FullBridge`, `DigitalInput`, `SQUIB`, `TOMDigital`, `HalfBridge_SigPlus`, `RTC`, `UART`, `StreamOut`, `StreamIn`.
|
||||
|
||||
#### `SensorConstants.SensorCalPolicy`
|
||||
```csharp
|
||||
[TypeConverter(typeof(EnumDescriptionTypeConverter))]
|
||||
public enum SensorCalPolicy { AllowAlways, DONT_ALLOW }
|
||||
```
|
||||
Defines how to handle sensors with out-of-date calibrations.
|
||||
|
||||
#### `SensorConstants.CouplingModes`
|
||||
```csharp
|
||||
public enum CouplingModes { AC = 0, DC }
|
||||
```
|
||||
|
||||
#### `SensorConstants.AvailableRangesLowG` / `AvailableRangesARS`
|
||||
Enums defining valid ranges for TSR AIR LowG and ARS channels.
|
||||
|
||||
---
|
||||
|
||||
### CSVImportTags Class
|
||||
|
||||
```csharp
|
||||
public abstract class CSVImportTags
|
||||
```
|
||||
|
||||
#### Constants
|
||||
```csharp
|
||||
public const int MIN_VALID_VERSION = 0;
|
||||
public const int MAX_VALID_VERSION = 6;
|
||||
```
|
||||
|
||||
#### Methods
|
||||
|
||||
```csharp
|
||||
public static bool IsSensorTag(int version)
|
||||
```
|
||||
Returns `true` if the version is in the sensor tags versions set (0, 2, 3, 4).
|
||||
|
||||
```csharp
|
||||
public static Tags[] GetVersionTags(int version)
|
||||
```
|
||||
Returns all tags for a given CSV import version. Returns empty array if version not found.
|
||||
|
||||
```csharp
|
||||
public static string GetStringForTag(Tags tag)
|
||||
```
|
||||
Returns the display string for a given tag.
|
||||
|
||||
```csharp
|
||||
public static Tags GetTagForString(string s)
|
||||
```
|
||||
Returns the tag for a given display string. Returns `Tags.Unknown` if not found.
|
||||
|
||||
```csharp
|
||||
public static int GetVersionForTag(Tags t)
|
||||
```
|
||||
Returns the version a tag was introduced in. Returns `int.MaxValue` if not found.
|
||||
|
||||
#### Nested Enum: `Tags`
|
||||
Defines 100+ CSV import/export fields with `[Display(Name = "...")]` and `[Version(int)]` attributes indicating when each field was introduced.
|
||||
|
||||
---
|
||||
|
||||
### SensorConstants Class
|
||||
|
||||
```csharp
|
||||
public abstract class SensorConstants
|
||||
```
|
||||
|
||||
#### Constants
|
||||
- `VOLTAGE_INSERTION_UNIT`, `TSRAIR_ACCEL_UNIT`, `TSRAIR_ARS_UNIT`, `TSRAIR_TEMPERATURE_UNIT`, `TSRAIR_HUMIDITY_UNIT`, `TSRAIR_PRESSURE_UNIT` - Unit strings
|
||||
- `DEGREES`, `DEGREE_ANGLE` - Degree unit strings
|
||||
- `MIN_BRIDGE_RESISTANCE_OHMS` (1), `MAX_BRIDGE_RESISTANCE_OHMS` (32000)
|
||||
- `SENSOR_FIRST_USE_DEFAULT` (false)
|
||||
- `SQUIB_DELAY_CONSTANT`, `SQUIB_LIMIT_DURATION_CONSTANT`, `SQUIB_DURATION_CONSTANT`, `SQUIB_LOW_TOLERANCE_CONSTANT`, `SQUIB_HIGH_TOLERANCE_CONSTANT`, `SQUIB_FIREMODE_CONSTANT`, `SQUIB_CURRENT_CONSTANT`
|
||||
- `DIGITALOUT_MODE_CONSTANT`, `DIGITALOUT_DELAY_CONSTANT`, `DIGITALOUT_LIMITDURATION_CONSTANT`, `DIGITALOUT_DURATION_CONSTANT`
|
||||
- `UART_BAUDRATE_CONSTANT` (57600), `UART_DATABITS_CONSTANT` (8), `UART_STOPBITS_CONSTANT`, `UART_PARITY_CONSTANT`, `UART_FLOWCONTROL_CONSTANT`, `UART_DATAFORMAT_CONSTANT`
|
||||
- `STREAMIN_ADDRESS_CONSTANT`, `STREAMOUT_PROFILE_CONSTANT`, `STREAMOUT_ADDRESS_CONSTANT`, `STREAMOUT_TIME_CHID_CONSTANT`, `STREAMOUT_DATA_CHID_CONSTANT`, `STREAMOUT_TMNS_CONFIG_CONSTANT`, `STREAMOUT_IRIG_TDP_INTERVAL_CONSTANT`
|
||||
- `LinearValuesSeparator` ("||")
|
||||
- Test-specific prefixes: `TEST_SPECIFIC_DOUT`, `TEST_SPECIFIC_SQUIB`, `TEST_SPECIFIC_DIN`, `TEST_SPECIFIC_EMB`, `TEST_SPECIFIC_EMB_CLK`, `TEST_SPECIFIC_UART`, `TEST_SPECIFIC_STREAM_OUT`, `TEST_SPECIFIC_STREAM_IN`
|
||||
|
||||
#### Static Properties (Cached/Mutable)
|
||||
- `δThorax`, `δAbdomen`, `D0Thorax`, `D0Abdomen`, `δThoraxLower`, `D0ThoraxLower` - 3D IR-TRACC equation values
|
||||
- `UseSensorFirstUseDate`, `UseISOCodeFilterMapping`
|
||||
- `DefaultZeroMethodType`, `DefaultZeroMethodStart`, `DefaultZeroMethodEnd`
|
||||
- `DefaultRangeHiG`, `DefaultRangeLowG`, `DefaultRangeLowGDisplay`, `DefaultRangeARS`, `DefaultRangeTemperature`, `DefaultRangeHumidity`, `DefaultRangePressure`
|
||||
- `SensorCalOutOfDateWarningPeriodDays`, `SensorCalPolicyCurrent`
|
||||
- `DisableAutoSense`
|
||||
- `DefaultBridgeOffsetMVTolLow`, `DefaultBridgeOffsetMVTolHigh`, `DefaultIEPEOffsetMVTolLow`, `DefaultIEPEOffsetMVTolHigh`
|
||||
|
||||
#### Static Methods
|
||||
|
||||
```csharp
|
||||
public static bool IsTestSpecificDigitalOut(string sn)
|
||||
public static bool IsTestSpecificSquib(string sn)
|
||||
public static bool IsTestSpecificDigitalIn(string sn)
|
||||
public static bool IsTestSpecificEmbedded(string sn)
|
||||
public static bool IsTestSpecificEmbeddedClock(string sn)
|
||||
public static bool IsTestSpecificStreamOut(string sn)
|
||||
public static bool IsTestSpecificStreamIn(string sn)
|
||||
public static bool IsTestSpecificUart(string sn)
|
||||
```
|
||||
Check if a serial number belongs to a test-specific sensor type.
|
||||
|
||||
```csharp
|
||||
public static BridgeType ConvertIntToBridgeType(int bridge)
|
||||
public static int ConvertBridgeToInt(BridgeType bridge)
|
||||
```
|
||||
Convert between integer and `BridgeType` enum. Note: integer mapping is not the bitmask value.
|
||||
|
||||
```csharp
|
||||
public static bool IsTSRAirHighGChannel(string moduleSerialNumber)
|
||||
public static bool IsTSRAirLowGChannel(string moduleSerialNumber)
|
||||
public static bool IsTSRAirARSChannel(string moduleSerialNumber)
|
||||
public static bool IsTSRAirAtmChannel(string moduleSerialNumber)
|
||||
public static bool IsTSRAirHumidityChannel(string moduleSerialNumber, int channelNumber)
|
||||
```
|
||||
Identify TSR AIR channel types by module serial number suffix.
|
||||
|
||||
---
|
||||
|
||||
### SensUnitStringConverter (Nested Class)
|
||||
|
||||
```csharp
|
||||
public abstract class SensUnitStringConverter
|
||||
{
|
||||
public static SensUnits ConvertFromString(string s)
|
||||
}
|
||||
```
|
||||
Converts string representations to `SensUnits`. Accepts formats: "none", "mv", "mv/v", "mvperv", "mv/v/eu", "mvpervpereu", "mv/eu", "mvpereu". Throws `InvalidCastException` for unrecognized strings.
|
||||
|
||||
---
|
||||
|
||||
## 3. Invariants
|
||||
|
||||
- **CSV Version Range**: Valid CSV import versions are 0-6 (`MIN_VALID_VERSION` to `MAX_VALID_VERSION`).
|
||||
- **Sensor Tag Versions**: Only versions 0, 2, 3, 4 are considered sensor tag versions (checked by `IsSensorTag`).
|
||||
- **ZeroMethodType Values**: The order and explicit values of `ZeroMethodType` enum must be preserved for legacy compatibility (e.g., importing GM ISF).
|
||||
- **Bridge Resistance Range**: Valid bridge resistance is between `MIN_BRIDGE_RESISTANCE_OHMS` (1) and `MAX_BRIDGE_RESISTANCE_OHMS` (32000).
|
||||
- **ARS Range Limits**: `ARSMin` = 250, `ARSMax` = 2000.
|
||||
- **LowG Range Limits**: `LowGMin` = 8, `LowGMax` = 64.
|
||||
- **TSR AIR Channel Numbers**: Temperature = 9, Humidity = 10, Pressure = 11.
|
||||
- **Thread Safety**: `CSVImportTags` lookup methods use locking (`MY_LOCK`) for thread-safe lazy initialization.
|
||||
|
||||
---
|
||||
|
||||
## 4. Dependencies
|
||||
|
||||
### This module depends on:
|
||||
- `System` (core types, `Enum`, `InvalidCastException`)
|
||||
- `System.ComponentModel` (`TypeConverter`, `DescriptionAttribute`)
|
||||
- `System.ComponentModel.DataAnnotations` (`DisplayAttribute`)
|
||||
- `System.IO.Ports` (`StopBits`, `Parity`, `Handshake`)
|
||||
- `System.Collections.Generic` (`Dictionary`, `HashSet`, `List`)
|
||||
- `System.Linq` (`Enumerable` extensions)
|
||||
- `DTS.Common.Converters` (`EnumDescriptionTypeConverter`)
|
||||
- `DTS.Common.Attributes` (`VersionAttribute`, `DisplayAttribute` - inferred from usage pattern)
|
||||
- `DTS.Common.Base.Classes` (inferred from `DescriptionResourceAttribute` usage)
|
||||
|
||||
### What depends on this module:
|
||||
Cannot be determined from source alone. This is a foundational enums/constants module likely used throughout the DTS system.
|
||||
|
||||
---
|
||||
|
||||
## 5. Gotchas
|
||||
|
||||
1. **ZeroMethodType Enum Ordering**: The comment explicitly states: "Lots of legacy compatibility (e.g. importing GM ISF) depends on the order/value of this enum." Do not reorder or reassign values.
|
||||
|
||||
2. **"Original Defaults" vs Database Defaults**: Constants like `SQUIB_DELAY_CONSTANT`, `SQUIB_HIGH_TOLERANCE_CONSTANT`, etc. represent "original" defaults for restore functionality, NOT necessarily the current database defaults. The comments state: "represents the _original_ default... (not the default in the db)".
|
||||
|
||||
3. **Bridge Type Integer Conversion**: `ConvertBridgeToInt` and `ConvertIntToBridgeType` do NOT use the bitmask values for storage. The comment states: "this is apparently needed for historical reasons as the sensor db apparently doesn't use the bitmask value for storage?"
|
||||
|
||||
4. **Static Property Initialization**: Properties like `DefaultZeroMethodType`, `UseISOCodeFilterMapping`, `SensorCalPolicyCurrent` are cached values that must be set by the application on startup or when settings change. They do not serialize/deserialize automatically.
|
||||
|
||||
5. **FilterClassType.None Behavior**: The `None` value has special behavior: "Code = P unless UseZeroForUnfiltered is True, then Code = 0". The `UseZeroForUnfiltered` flag is not defined in this module.
|
||||
|
||||
6. **Squib High Tolerance Changed**: Per case 26826, `SQUIB_HIGH_TOLERANCE_CONSTANT` was raised from 8.0 to 10.0 ohms.
|
||||
|
||||
7. **Deprecated SensorSettings Values**: `LimitDuration`, `Duration`, `Delay` in `SensorSettings` enum are marked as "deprecated in 2.1".
|
||||
|
||||
8. **CSVImportTags Lookups**: The lookup dictionaries are lazily initialized on first access and protected by a lock. First call to any lookup method will trigger `PopulateLookups()`.
|
||||
30
docs/ai/Common/DTS.CommonCore/Enums/Sensors/SensorsList.md
Normal file
30
docs/ai/Common/DTS.CommonCore/Enums/Sensors/SensorsList.md
Normal file
@@ -0,0 +1,30 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/Sensors/SensorsList/DigitalInputFields.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/SensorsList/DigitalOutFields.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/SensorsList/SensorListTabs.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/SensorsList/UartSettingFields.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/SensorsList/SquibFields.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/SensorsList/StreamInSettingFields.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/SensorsList/StreamOutSettingFields.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/SensorsList/CACOption.cs
|
||||
- Common/DTS.CommonCore/Enums/Sensors/SensorsList/AnalogSensorFields.cs
|
||||
generated_at: "2026-04-17T16:02:00.657197+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "88a963f18588aa76"
|
||||
---
|
||||
|
||||
# SensorsList
|
||||
|
||||
1. **Purpose**
|
||||
This module defines a set of enumerations used to represent fields, settings, and configuration options for various sensor types within the DTS application. It provides strongly-typed identifiers for sensor attributes (e.g., `SerialNumber`, `Description`, `CalDate`) and tab indices for UI navigation, facilitating data binding, grid column mapping, and serialization logic for sensor lists including Analog, Squib, Digital I/O, UART, and Stream types.
|
||||
|
||||
2. **Public Interface**
|
||||
* `enum DigitalInputFields`: Represents fields for digital input sensors. Values: `Included`, `SerialNumber`, `Description`, `Mode`, `ModifiedBy`, `LastModified`.
|
||||
* `enum CanSettingFields`: Represents CAN bus configuration fields. Values: `CanIsFD`, `CanArbBaseBitrate`, `CanArbBaseSJW`, `CanDataBitrate`, `CanDataSJW`, `CanFileType`.
|
||||
* `enum DigitalOutFields`: Represents fields for digital output sensors. Values: `Included`, `SerialNumber`, `Description`, `Delay`, `Duration`, `ModifiedBy`, `LastModified`.
|
||||
* `enum SensorListTabs`: Represents the index of tabs in a sensor list UI. Values: `ANALOG` (0), `SQUIB` (1), `DIGITAL_IN` (2), `DIGITAL_OUT` (3), `UART` (4), `STREAM_IN` (5), `STREAM_OUT` (6).
|
||||
* `enum UartSettingFields`: Represents UART configuration fields. Values: `Included`, `SerialNumber`, `BaudRate`, `DataBits`, `StopBits`, `Parity`, `FlowControl`, `DataFormat`, `LastModifiedBy`, `LastModified`.
|
||||
* `enum SquibFields`: Represents fields for squib sensors. Values: `Included`, `SerialNumber`, `Description`, `ResistanceLow`, `ResistanceHigh`, `Id`, `Mode`, `Delay`, `Current`, `Duration`, `ModifiedBy`, `LastModified`.
|
||||
* `enum Stream
|
||||
15
docs/ai/Common/DTS.CommonCore/Enums/SettingsExport.md
Normal file
15
docs/ai/Common/DTS.CommonCore/Enums/SettingsExport.md
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/SettingsExport/TopLevelFields.cs
|
||||
generated_at: "2026-04-17T16:38:51.048562+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "1828e96646beb944"
|
||||
---
|
||||
|
||||
# SettingsExport
|
||||
|
||||
## Documentation: `TopLevelFields.cs`
|
||||
|
||||
### 1. Purpose
|
||||
This module defines the `TopLevelFields` enumeration within the `DTS.Common.Enums.SettingsExport` namespace. It provides a strongly-typed definition of valid root-level XML tags used during settings export operations. The enumeration constrains the top-level structure of the configuration XML to four specific categories: `GlobalSettings`, `TestSetupDefaultSettings`, `SensorSettings`, and `Test
|
||||
20
docs/ai/Common/DTS.CommonCore/Enums/SliceSimpleArm.md
Normal file
20
docs/ai/Common/DTS.CommonCore/Enums/SliceSimpleArm.md
Normal file
@@ -0,0 +1,20 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/SliceSimpleArm/SSACommands.cs
|
||||
generated_at: "2026-04-17T16:38:55.388061+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "9955e959b81580a0"
|
||||
---
|
||||
|
||||
# Documentation: SSACommands.cs
|
||||
|
||||
## 1. Purpose
|
||||
This module defines the communication protocol vocabulary for the "SliceSimpleArm" subsystem within the `DTS.CommonCore` library. It provides two enumerations, `SSACommand` and `SSAResponse`, which standardize the instruction set sent to the hardware or subsystem and the status codes returned, ensuring type-safe interaction between the caller and the SliceSimpleArm device logic.
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### `enum SSACommand`
|
||||
Defines the specific operations that can be requested of the SliceSimpleArm device.
|
||||
* **Members:**
|
||||
* `ConfigureDevice`: Instruction to
|
||||
15
docs/ai/Common/DTS.CommonCore/Enums/TSRAIRGo.md
Normal file
15
docs/ai/Common/DTS.CommonCore/Enums/TSRAIRGo.md
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/TSRAIRGo/NavigationButtonId.cs
|
||||
generated_at: "2026-04-17T16:38:38.460380+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "ec4149e7fd946e07"
|
||||
---
|
||||
|
||||
# TSRAIRGo
|
||||
|
||||
## Documentation: `NavigationButtonId.cs`
|
||||
|
||||
### 1. Purpose
|
||||
This module defines the `NavigationButtonId` enumeration within the `DTS.Common.Enums.TSRAIRGo` namespace. It provides a set of strongly
|
||||
58
docs/ai/Common/DTS.CommonCore/Enums/TTS.md
Normal file
58
docs/ai/Common/DTS.CommonCore/Enums/TTS.md
Normal file
@@ -0,0 +1,58 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/TTS/TTSEnums.cs
|
||||
generated_at: "2026-04-17T16:52:23.961528+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "a183c0066bcc75c1"
|
||||
---
|
||||
|
||||
# Documentation: TTSEnums.cs
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
This module provides enumerations and a reflection-based attribute system for managing TTS (Toyota Test System) data import field definitions. It exists to track which fields in a Toyota import format are currently supported, deprecated, or removed—addressing issue 18396 where excessive columns caused confusion. The module defines field ordering, bridge types, and zero methods used in Toyota data acquisition configurations.
|
||||
|
||||
---
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### `FieldSupportLevel` (enum)
|
||||
Indicates the current support status for a field.
|
||||
|
||||
| Value | Description |
|
||||
|-------|-------------|
|
||||
| `RequiredParameter` | Field is actively required |
|
||||
| `RemainedButNotUsed` | Field exists in schema but is not utilized |
|
||||
| `RemovedParameter` | Field has been removed |
|
||||
|
||||
---
|
||||
|
||||
### `FieldSupportAttribute` (class)
|
||||
Attribute for marking enum fields with their support level.
|
||||
|
||||
**Properties:**
|
||||
- `FieldSupportLevel SupportLevel { get; set; }` — The support level assigned to the decorated field.
|
||||
|
||||
**Constructor:**
|
||||
- `FieldSupportAttribute(FieldSupportLevel value)` — Constructs the attribute with the specified support level.
|
||||
|
||||
**Static Method:**
|
||||
- `FieldSupportLevel GetSupportLevel(Enum genericEnum)` — Retrieves the `FieldSupportAttribute.SupportLevel` from an enum value via reflection. Returns `FieldSupportLevel.RemovedParameter` if no attribute is found or if the member info is unavailable.
|
||||
|
||||
---
|
||||
|
||||
### `ToyotaFieldOrder` (enum)
|
||||
Defines the field ordering and support status for Toyota import columns. Values are explicitly numbered 0–32.
|
||||
|
||||
| Value | Integer | Support Level |
|
||||
|-------|---------|---------------|
|
||||
| `ChannelNumber` | 0 | RequiredParameter |
|
||||
| `ChannelCode` | 1 | RequiredParameter |
|
||||
| `JCodeOrDescription` | 2 | RequiredParameter |
|
||||
| `ChannelRange` | 3 | RequiredParameter |
|
||||
| `ChannelFilterHz` | 4 | RequiredParameter |
|
||||
| `SensorID` | 5 | RemainedButNotUsed |
|
||||
| `SensorSerialNumber` | 6 | RequiredParameter |
|
||||
| `SensorSensitivity` | 7 | RemainedButNotUsed |
|
||||
| `SensorExcitationVol
|
||||
29
docs/ai/Common/DTS.CommonCore/Enums/TestSetups.md
Normal file
29
docs/ai/Common/DTS.CommonCore/Enums/TestSetups.md
Normal file
@@ -0,0 +1,29 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/TestSetups/RealtimeGraphsEnum.cs
|
||||
generated_at: "2026-04-17T16:09:21.373000+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "2598dae9bd481f7f"
|
||||
---
|
||||
|
||||
# TestSetups
|
||||
|
||||
### Purpose
|
||||
This module defines the allowed configurations for realtime graph display layouts. It provides a type-safe enumeration with description attributes for UI binding, supporting one, three, or six simultaneous graph views with explicit integer values matching the graph count.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`RealtimeGraphsEnum`** (enum)
|
||||
- `[TypeConverter(typeof(EnumDescriptionTypeConverter))]` - Enables custom description-based conversion
|
||||
- `One = 1` - Description: "RealtimeGraphs_One"
|
||||
- `Three = 3` - Description: "RealtimeGraphs_Three"
|
||||
- `Six = 6` - Description: "RealtimeGraphs_Six"
|
||||
|
||||
### Invariants
|
||||
- The underlying integer value of each enum member corresponds to the number of graphs it represents (1, 3, or 6).
|
||||
- Description attributes follow the naming pattern `RealtimeGraphs_<Name>`.
|
||||
|
||||
### Dependencies
|
||||
- **Depends on**:
|
||||
- `System
|
||||
@@ -0,0 +1,13 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Enums/TestSetups/TestSetupsList/TestSetupFields.cs
|
||||
generated_at: "2026-04-17T16:39:53.108378+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "151d2dd565cd5f83"
|
||||
---
|
||||
|
||||
# Documentation: TestSetupFields.cs
|
||||
|
||||
## 1. Purpose
|
||||
This module defines a standard enumeration, `TestSetupFields`, which serves as a strongly-typed list of property identifiers
|
||||
Reference in New Issue
Block a user