Files
DP44/docs/ai/Common/DTS.Common.DAS.Concepts/Interfaces.md
2026-04-17 14:55:32 -04:00

1.9 KiB

source_files, generated_at, model, schema_version, sha256
source_files generated_at model schema_version sha256
Common/DTS.Common.DAS.Concepts/Interfaces/ITriggerable.cs
Common/DTS.Common.DAS.Concepts/Interfaces/IDataCollectionEnabled.cs
Common/DTS.Common.DAS.Concepts/Interfaces/ICalibratable.cs
Common/DTS.Common.DAS.Concepts/Interfaces/ILargeDataAware.cs
Common/DTS.Common.DAS.Concepts/Interfaces/IRealtimeable.cs
Common/DTS.Common.DAS.Concepts/Interfaces/IGpioEnabled.cs
Common/DTS.Common.DAS.Concepts/Interfaces/IDownloadEnabled.cs
Common/DTS.Common.DAS.Concepts/Interfaces/IArmable.cs
2026-04-17T15:32:37.442181+00:00 zai-org/GLM-5-FP8 1 1681496bcdfa352d

Documentation: DTS.Common.DAS.Concepts Interfaces

1. Purpose

This module defines a set of interfaces that describe the core capabilities of Data Acquisition System (DAS) hardware devices. These interfaces model behaviors such as arming, triggering, calibration, data collection, real-time sampling, GPIO control, and data download. The design enables polymorphic treatment of different hardware models (TSR, HEADS, NASCAR variants) while allowing type-specific implementations where necessary. The interfaces are intended to be composed together to describe complete device capabilities.


2. Public Interface

Interfaces

ITriggerable

Namespace: DTS.Common.DAS.Concepts

public interface ITriggerable
{
    void Trigger();
}

A minimal interface describing an object that can be triggered. The Trigger() method initiates the trigger action on the implementing object.


IArmable

Namespace: DTS.Common.DAS.Concepts

public interface IArmable
{
    void Arm();
    void Disarm();
    ArmStatus ArmStatus { get; }
    AvailableArmModes ArmMode { get; }
}

Describes an object that can be armed and disarmed. Implementers must provide:

  • Arm() — transitions the device to an armed state
  • Disarm() — transitions the device to a