Files
2026-04-17 14:55:32 -04:00

11 KiB

source_files, generated_at, model, schema_version, sha256
source_files generated_at model schema_version sha256
Common/DTS.Common/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/Fields/FieldsXMLClass.cs
2026-04-16T03:23:35.267864+00:00 Qwen/Qwen3-Coder-Next-FP8 1 5d62bfce4b670b8f

Fields

Purpose

The FieldsXMLClass serves as a data container for serializing and deserializing test setup configuration metadata to/from XML format within the DTS system. It encapsulates a comprehensive set of properties representing user-configurable settings for test execution—such as trigger behavior, recording parameters, diagnostics, export options, and metadata—without implementing any business logic itself. Its role is purely structural: to act as a Plain Old CLR Object (POCO) that mirrors the schema of XML elements used in test setup persistence, enabling round-trip conversion between in-memory configuration and XML representation.


Public Interface

All members are public auto-implemented properties of type string. No methods, constructors, or events are defined.

Property Name Type Description
SetupName string Name of the test setup.
SetupDescription string Human-readable description of the test setup.
AutomaticTestProgression string Indicates whether automatic progression between test steps is enabled.
AutomaticProgressionDelayMS string Delay (in milliseconds) before automatic progression after a step completes.
InvertTrigger string Whether the trigger signal is logically inverted.
InvertStart string Whether the start signal is logically inverted.
IgnoreShortedStart string Whether to ignore start events caused by a shorted start input.
IgnoreShortedTrigger string Whether to ignore trigger events caused by a shorted trigger input.
ViewDiagnostics string Whether diagnostics are displayed during test execution.
VerifyChannels string Whether channel verification is enabled.
AutoVerifyChannels string Whether channel verification runs automatically.
VerifyChannelsDelayMS string Delay (in ms) before channel verification begins.
RecordingMode string Mode of data acquisition (e.g., continuous, event-triggered).
SamplesPerSecond string Sampling rate for data acquisition.
PreTriggerSeconds string Duration (in seconds) of data recorded before a trigger event.
PostTriggerSeconds string Duration (in seconds) of data recorded after a trigger event.
NumberOfEvents string Maximum number of events to record per test.
WakeUpMotionTimeout string Timeout (in seconds) for motion-based wake-up.
ScheduledStartDateTime string ISO 8601 or similar formatted datetime string for scheduled test start.
IntervalBetweenEventStartsMinutes string Minimum interval (in minutes) between consecutive event starts.
StartWithEvent string Whether the test starts automatically upon the first event.
WakeUpWithMotion string Whether motion detection is used to wake the system.
StrictDiagnostics string Whether diagnostics failures should halt test execution.
RequireConfirmationOnErrors string Whether operator confirmation is required before proceeding after an error.
ROIDownload string Whether Regions of Interest (ROI) are included in downloads.
ViewROIDownload string Whether ROI download settings are visible in the UI.
DownloadAll string Whether all data (not just ROI) is downloaded.
ViewRealtime string Whether real-time plotting is enabled.
RealtimePlotCount string Number of channels to display in real-time plots.
ROIStart string Start time (in seconds) of the ROI window relative to trigger.
ROIEnd string End time (in seconds) of the ROI window relative to trigger.
ViewDownloadAll string Whether the “Download All” option is visible in the UI.
Export string Whether post-test export is enabled.
ExportFormat string Format identifier for exported data (e.g., CSV, HDF5).
LabDetails string Serialized lab metadata (e.g., JSON string or XML fragment).
UseLabDetails string Whether lab details are included in reports.
CustomerDetails string Serialized customer metadata.
UseCustomerDetails string Whether customer details are included in reports.
AllowMissingSensors string Whether the test may proceed if some sensors are missing.
AllowSensorIdToBlankChannel string Whether a sensor ID may be assigned to an unconfigured (blank) channel.
ExcitationWarmupTimeMS string Warm-up delay (in ms) for excitation circuits before measurement.
LocalOnly string Whether the test runs without network connectivity.
LastModified string Timestamp of last modification (ISO 8601 format expected).
LastModifiedBy string User identifier of the last modifier.
TurnOffExcitation string Whether excitation is disabled after test completion.
TriggerCheckRealtime string Whether trigger validation occurs in real time.
TriggerCheckStep string Whether trigger validation occurs at a specific step.
PostTestDiagnostics string Whether diagnostics run after test completion.
ExportFolder string Directory path for exported files.
DownloadFolder string Directory path for downloaded data.
CommonStatusLine string Shared status message displayed across UI components.
SameAsDownloadFolder string Whether export folder is identical to download folder.
UploadData string Whether acquired data is uploaded post-test.
UploadDataFolder string Remote path or identifier for data upload destination.
UploadExportsOnly string Whether only exported files (not raw data) are uploaded.
Settings string Arbitrary serialized settings (e.g., JSON or XML).
WarnOnBatteryFail string Whether to warn if battery voltage drops below threshold.
Dirty string Whether the setup has unsaved changes.
Complete string Whether the test setup is fully configured and ready to run.
ErrorMessage string Last recorded error message.
TestEngineerDetails string Serialized test engineer metadata.
UseTestEngineerDetails string Whether test engineer details are included in reports.
UserTags string User-defined tags (e.g., comma-separated list or JSON array).
DoAutoArm string Whether auto-arming is enabled (e.g., for squib circuits).
DoEnableRepeat string Whether repeated test execution is enabled.
DoStreaming string Whether streaming mode is active.
CheckoutMode string Whether the system is in checkout/verification mode.
QuitTestWithoutWarning string Whether to suppress warnings when exiting a test prematurely.
SuppressMissingSensorsWarning string Whether to suppress warnings about missing sensors.
ISFFile string Path or identifier for the ISF (Instrument Setup File).
NotAllChannelsRealTime string Whether not all channels support real-time monitoring.
NotAllChannelsViewer string Whether not all channels are visible in the viewer.
CalibrationBehavior string Strategy for handling calibration data (e.g., “UseStored”, “Prompt”).
ClockSyncProfileMaster string Identifier for the clock synchronization profile used by master devices.
ClockSyncProfileSlave string Identifier for the clock synchronization profile used by slave devices.
ExtraProperties string Additional custom properties (e.g., JSON object).
MeasureSquibResistancesStep string Step index or name where squib resistance measurement occurs.
TestSetupUniqueId string Globally unique identifier (GUID) for the test setup instance.

Note

: All properties are declared as string, even those that conceptually represent booleans, numbers, or structured data. This implies that serialization/deserialization logic (outside this class) is responsible for parsing and validating values.


Invariants

No explicit invariants are enforced by this class. However, based on naming conventions and typical usage patterns in XML serialization contexts:

  • All properties are nullable: Since they are auto-properties without initialization, any property may be null.
  • No semantic validation: The class does not validate values (e.g., AutomaticProgressionDelayMS may contain non-numeric strings).
  • No ordering guarantees: Property order in XML serialization depends on the serializer (e.g., System.Xml.Serialization.XmlSerializer typically preserves declaration order, but this is not guaranteed by the class itself).
  • No cross-property consistency checks: For example, ExportFolder and SameAsDownloadFolder are independent; the class does not enforce that ExportFolder == DownloadFolder when SameAsDownloadFolder == "true".

Dependencies

  • Dependencies of this module:

    • System, System.Collections.Generic, System.Linq, System.Text, System.Threading.Tasks (standard .NET libraries).
    • No external or project-specific dependencies are imported in this file.
  • Dependencies on this module:

    • The commented-out line //public RegionsOfInterestXMLClass RegionsOfInterest { get; set; } suggests a former or planned relationship with RegionsOfInterestXMLClass, implying that other parts of the codebase likely reference this type.
    • Given the namespace DTS.Common.XMLUtils, this class is almost certainly used by XML serialization/deserialization utilities (e.g., a TestSetupSerializer class) elsewhere in the DTS.Common.XMLUtils namespace or related modules.

Gotchas

  • All values are strings: Critical business logic (e.g., parsing AutomaticProgressionDelayMS as an integer, interpreting Dirty/Complete as booleans) must be handled externally. This increases the risk of runtime parsing errors if the consumer assumes a specific format.
  • No validation or default values: Consumers must handle missing or malformed data (e.g., SamplesPerSecond = "NaN").
  • Commented-out property: The commented-out RegionsOfInterest property indicates incomplete or deprecated functionality. Its removal may have been intentional (e.g., refactoring), but its presence in source could confuse developers about current data model scope.
  • Ambiguous boolean/numeric representation: Properties like Dirty, Complete, AllowMissingSensors are strings—consumers must agree on expected values (e.g., "true"/"false", "1"/"0", "Yes"/"No").
  • No documentation on expected formats: For fields like ScheduledStartDateTime, LastModified, or TestSetupUniqueId, the expected string format (e.g., ISO 8601, ticks, GUID) is not specified in this class and must be inferred from usage elsewhere.
  • No immutability or encapsulation: Public setters and lack of constructor initialization make accidental mutation or inconsistent state easy.