Files
DP44/docs/ai/Common/DTS.Common/Classes/DTS.Viewer/Reports.md

61 lines
2.8 KiB
Markdown
Raw Normal View History

2026-04-17 14:55:32 -04:00
---
source_files:
- Common/DTS.Common/Classes/DTS.Viewer/Reports/ChannelGRMSSummary.cs
generated_at: "2026-04-17T16:40:09.263539+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "261ab4516c9b0a7b"
---
# Documentation: ChannelGRMSSummary
## 1. Purpose
`ChannelGRMSSummary` is a data model class representing a summary report entry for channel GRMS (likely "G RMS" - Root Mean Square acceleration measured in G-force) data within the DTS Viewer reporting subsystem. It serves as a DTO (Data Transfer Object) that aggregates channel identification, sample rate, and calculated GRMS value, implementing `IChannelGRMSSummary` to conform to a broader system contract. The class also provides property change notification infrastructure, suggesting it may be used in data-binding scenarios (e.g., UI grids or observables).
---
## 2. Public Interface
### Class: `ChannelGRMSSummary`
**Namespace:** `DTS.Common.Classes.Viewer.Reports`
**Implements:** `IChannelGRMSSummary`
#### Properties
| Name | Type | Access | Description |
|------|------|--------|-------------|
| `ChannelName` | `string` | get/set | The name identifier for the channel being summarized. |
| `SampleRate` | `int` | get/set | The sample rate associated with the channel (units unspecified in source). |
| `GRMS` | `double` | get/set | The GRMS (G Root Mean Square) value calculated for the channel. |
#### Events
| Name | Type | Description |
|------|------|-------------|
| `PropertyChanged` | `PropertyChangedEventHandler` | Event raised when a property value changes. Standard `INotifyPropertyChanged` pattern event. |
#### Methods
| Signature | Description |
|-----------|-------------|
| `void OnPropertyChanged(string propertyName)` | Manually raises the `PropertyChanged` event with the specified property name. Invokes the event handler if subscribers exist. |
---
## 3. Invariants
- **Interface Contract:** The class must implement all members defined by `IChannelGRMSSummary` (exact members of the interface are not visible in this source file).
- **No Automatic Notification:** The properties (`ChannelName`, `SampleRate`, `GRMS`) are auto-implemented properties with no setters that call `OnPropertyChanged`. Property change notification must be triggered manually by external callers.
- **Null-Safe Event Invocation:** `OnPropertyChanged` safely handles cases where no subscribers are attached via null-conditional operator (`?.`).
---
## 4. Dependencies
### This module depends on:
- `DTS.Common.Interface` — Provides the `IChannelGRMSSummary` interface contract.
- `System.ComponentModel` — Provides `PropertyChangedEventHandler` and `PropertyChangedEventArgs` for property change notification.
### What depends on this module:
- **Unknown from source alone.** Consumers would be any code requiring `IChannelGRMSSummary` or `ChannelGRMSSum