init
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.Common/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/TestSetupXMLClass.cs
|
||||
generated_at: "2026-04-17T16:09:45.090949+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "6d5d97d1ece504b8"
|
||||
---
|
||||
|
||||
# TestSetup
|
||||
|
||||
### Purpose
|
||||
This module defines `TestSetupXMLClass`, the root container class for XML serialization of test setup configurations. It serves as the top-level data structure for exporting/importing test setup data, aggregating references to DAS (Data Acquisition System) hardware lists, test groups, fields, hardware includes, level triggers, and metadata.
|
||||
|
||||
### Public Interface
|
||||
|
||||
- **`TestSetupXMLClass`** - Root XML container class for test setup export.
|
||||
- `string Id { get; set; }` - Identifier for the test setup.
|
||||
- `List<DASListXMLClass> DASList { get; set; }` - Collection of DAS hardware list configurations. Serialized as XML element "DASList".
|
||||
- `List<GroupsXMLClass> Groups { get; set; }` - Collection of test group configurations. Serialized as XML element "Groups".
|
||||
- `FieldsXMLClass Fields { get; set; }` - Field definitions for the test setup. Serialized as XML element "Fields".
|
||||
- `string HardwareIncludes { get; set; }` - Hardware include references (no XML element attribute specified, uses property name).
|
||||
- `LevelTriggersXMLClass LevelTriggers { get; set; }` - Level trigger configurations. Serialized as XML element "LevelTriggers".
|
||||
- `MetaDatasXMLClass MetaDatas { get; set; }` - Metadata associated with the test setup. Serialized as XML element "MetaDatas".
|
||||
|
||||
### Invariants
|
||||
- All properties are nullable reference types; no null checks or initialization is enforced at the class level.
|
||||
- XML element names are explicitly controlled via `[XmlElement]` attributes for most collection properties.
|
||||
|
||||
### Dependencies
|
||||
- **Depends on**: `System.Xml.Serialization` for XML serialization attributes.
|
||||
- **Depends on**: `DASListXMLClass`, `GroupsXMLClass`, `FieldsXMLClass`, `LevelTriggersXMLClass`, `MetaDatasXMLClass` (referenced but not shown in this batch).
|
||||
- **Depended on by**: Unclear from source alone—likely used by XML import/export utilities in the parent namespace.
|
||||
|
||||
### Gotchas
|
||||
- The `DASList` property is of type `List<DASListXMLClass>` and serialized with `[XmlElement("DASList")]`, which means each item in the list is serialized as a `<DASList>` element, not wrapped in a parent container. This differs from typical `[XmlArray]`/`[XmlArrayItem]` patterns.
|
||||
- `HardwareIncludes` lacks an `[XmlElement]` attribute, so its XML element name defaults to the property name, unlike other properties in this class.
|
||||
|
||||
---
|
||||
Reference in New Issue
Block a user