61 lines
2.8 KiB
Markdown
61 lines
2.8 KiB
Markdown
|
|
---
|
||
|
|
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
|