Files
DP44/docs/ai/DataPRO/IService/Classes/Channels.md
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
DataPRO/IService/Classes/Channels/OutputDASChannel.cs
DataPRO/IService/Classes/Channels/AnalogOutputDASChannel.cs
DataPRO/IService/Classes/Channels/DigitalOutputDASChannel.cs
DataPRO/IService/Classes/Channels/InputDASChannel.cs
DataPRO/IService/Classes/Channels/AnalogInputDASChannelComparer.cs
DataPRO/IService/Classes/Channels/TimestampDASChannel.cs
DataPRO/IService/Classes/Channels/StreamInputDASChannel.cs
DataPRO/IService/Classes/Channels/OutputTOMDigitalChannel.cs
DataPRO/IService/Classes/Channels/CANInputDASChannel.cs
DataPRO/IService/Classes/Channels/UARTInputDASChannel.cs
DataPRO/IService/Classes/Channels/StreamOutputDASChannel.cs
DataPRO/IService/Classes/Channels/DASChannel.cs
DataPRO/IService/Classes/Channels/OutputSquibChannel.cs
2026-04-17T15:31:20.768905+00:00 zai-org/GLM-5-FP8 1 a9fb92d5e6adaff0

DAS Channel Classes Documentation

1. Purpose

This module provides a class hierarchy for representing data acquisition system (DAS) channels, supporting both input and output channel types with specialized implementations for various hardware interfaces (CAN, UART, Streaming, Squib, Timestamp). The hierarchy enables XML serialization/deserialization for configuration persistence, tracks channel ownership through module and DAS relationships, and provides configuration validation through the IsConfigured() method. Channels serve as the fundamental unit of measurement and control in the DAS architecture.


2. Public Interface

DASChannel (Base Class)

Namespace: DTS.DASLib.Service
Implements: IDASChannel, IXmlSerializable

Constructors:

  • DASChannel(DASModule owner, int channelNumber) — Initializes channel with owning module and module-relative channel number; sets ConfigurationMode to Normal, EventStartTime to DateTime.Now, DiagnosticsMode to false.
  • DASChannel() — Parameterless constructor for serialization.

Properties:

Property Type Description
SetupEID string Setup event identifier.
DataCollectionEID string Data collection event identifier.
ConfigurationMode DFConstantsAndEnums.ConfigMode Configuration mode setting.
DiagnosticsMode bool Whether channel is in diagnostics mode.
ModuleChannelNumber int Channel number relative to owning module.
AbsoluteDisplayOrder int Display ordering; defaults to 1.
UnitConverision double Unit conversion factor; defaults to 1D.
AtCapacity bool Capacity indicator.
CapacityOutputIsBasedOn double Capacity basis value.
SensitivityUnits SensorConstants.SensUnits Sensitivity units; defaults to NONE.
OwningModule DASModule Back-reference to containing module ([XmlIgnore]).
Number byte Stack channel number relative to owning DAS (computed via DASInfo.MapModuleArrayIndexAndChannelNum2DASChannel).
IDs IEID[] Array of EID identifiers ([XmlIgnore]).
EventStartTime DateTime Event timestamp.
LevelTriggerSeen bool Level trigger registration flag.
IsoChannelName string ISO channel name.
ChannelGroupName string Channel group name.
UserCode string User-defined code.
UserChannelName string User-defined channel name.
LinearSensorCalibration string Linear calibration data.
QualificationSamples int Number of samples for qualification.
LevelTriggerT0AdjustmentSamples int? T0 adjustment for time alignment; null indicates no direct level trigger.
IdType int Identifier type; defaults to DEFAULT_ID_TYPE (0).
UserValue1, UserValue2, UserValue3 string User-defined values.

Methods:

  • virtual bool IsConfigured() — Returns false by default; overridden by subclasses.
  • bool CanReProgram() — Returns true if channel is reprogrammable (checks OwningModule.OwningDAS.DASInfo.Modules[0].IsProgrammable).
  • virtual void WriteXml(XmlWriter writer) — Serializes channel to XML.
  • virtual void WriteXmlCRC32(XmlWriter writer) — Serializes subset of fields for CRC32 calculation.
  • virtual void ReadXml(XmlReader reader) — Deserializes channel from XML.
  • virtual void WriteElementStart(XmlWriter writer) — Writes opening XML element with xsi:type attribute.
  • virtual void WriteElementEnd(XmlWriter writer) — Writes closing XML element.
  • virtual void HandleElement(XmlReader reader) — Handles individual XML elements during deserialization.
  • XmlSchema GetSchema() — Returns null (IXmlSerializable requirement).

Constants:

  • DEFAULT_ID_TYPE = 0
  • BRIDGE_ID_TYPE = 1
  • IEPE_ID_TYPE = 2
  • BRIDGE_G5_ID_TYPE = 3

OutputDASChannel

Inherits: DASChannel

Constructors:

  • OutputDASChannel(DASModule owner, int channelNumber)
  • OutputDASChannel()

InputDASChannel

Inherits: DASChannel

Constructors:

  • InputDASChannel(DASModule owner, int channelNumber)
  • InputDASChannel()

AnalogOutputDASChannel

Inherits: OutputDASChannel

Constructors:

  • AnalogOutputDASChannel(DASModule owner, int channelNumber)
  • AnalogOutputDASChannel()

DigitalOutputDASChannel

Inherits: OutputDASChannel

Constructors:

  • DigitalOutputDASChannel(DASModule owner, int channelNumber)
  • DigitalOutputDASChannel()

TimestampDASChannel

Inherits: InputDASChannel

Constructors:

  • TimestampDASChannel(DASModule owner, int channelNumber)
  • TimestampDASChannel()

Methods:

  • override bool IsConfigured() — Always returns true.
  • override string ToString() — Returns descriptive string based on OwningModule.ModuleType() and ModuleChannelNumber.

Constants:

  • MARKER = "MARKER"
  • SEC_H = "SECONDS_HIGH"
  • SEC_L = "SECONDS_LOW"
  • NANOS_H = "NANOSECONDS_HIGH"
  • NANOS_L = "NANOSECONDS_LOW"
  • RSVD = "RESERVED"

StreamInputDASChannel

Inherits: InputDASChannel

Constructors:

  • StreamInputDASChannel(DASModule owner, int channelNumber)
  • StreamInputDASChannel()

Properties:

Property Type Default
SerialNumber string
HardwareChannelName string
UDPAddress string string.Empty

Methods:

  • override bool IsConfigured() — Returns true if SerialNumber is not null or empty.
  • override string ToString() — Returns $"Stream{ModuleChannelNumber}".
  • override void WriteXml(XmlWriter writer)
  • override void HandleElement(XmlReader reader)

StreamOutputDASChannel

Inherits: OutputDASChannel

Constructors:

  • StreamOutputDASChannel(DASModule owner, int channelNumber)
  • StreamOutputDASChannel()

Properties:

Property Type Default
SerialNumber string
HardwareChannelName string
UDPProfileName string UDPStreamProfile.CH10_ANALOG_2HDR.ToString()
UDPTimeChannelId ushort
UDPDataChannelId ushort
IRIGTimeDataPacketIntervalMs ushort
TMATSIntervalMs ushort StreamOutputRecord.DEFAULT_TMATS_INTERVAL_MS
UDPAddress string string.Empty
UDPTmNSConfig uint[] new uint[8]

Methods:

  • override bool IsConfigured() — Returns true if SerialNumber is not null or empty.
  • override string ToString() — Returns $"Stream{ModuleChannelNumber}".
  • override void WriteXml(XmlWriter writer)
  • override void HandleElement(XmlReader reader)

CANInputDASChannel

Inherits: InputDASChannel

Constructors:

  • CANInputDASChannel(DASModule owner, int channelNumber) — Sets SerialNumber from owner.SerialNumber().
  • CANInputDASChannel()

Properties:

Property Type Description
SerialNumber string Sensor serial number.
HardwareChannelName string Hardware channel name.
IsFD bool CAN FD mode flag.
ArbBaseBitrate int Arbitration base bitrate.
ArbBaseSJW int Arbitration base SJW.
DataBitrate int Data bitrate.
DataSJW int Data SJW.
FileType string File type identifier.

Methods:

  • override bool IsConfigured() — Returns true if SerialNumber is not null or empty.
  • override string ToString() — Returns $"CAN{ModuleChannelNumber}".
  • override void WriteXml(XmlWriter writer)
  • override void HandleElement(XmlReader reader)

UARTInputDASChannel

Inherits: InputDASChannel

Constructors:

  • UARTInputDASChannel(DASModule owner, int channelNumber)
  • UARTInputDASChannel()

Properties:

Property Type Description
SerialNumber string Sensor serial number.
HardwareChannelName string Hardware channel name.
BaudRate uint Baud rate setting.
DataBits uint Data bits setting.
StopBits StopBits Stop bits enumeration.
Parity Parity Parity enumeration.
FlowControl Handshake Flow control enumeration.
DataFormat UartDataFormat Data format enumeration.

Methods:

  • override bool IsConfigured() — Returns true if SerialNumber is not null or empty.
  • override string ToString() — Returns $"UART{ModuleChannelNumber}".
  • override void WriteXml(XmlWriter writer)
  • override void HandleElement(XmlReader reader)

OutputTOMDigitalChannel

Inherits: DigitalOutputDASChannel

Constructors:

  • OutputTOMDigitalChannel(XmlReader reader) — Initializes IDs array and calls ReadXml(reader).
  • OutputTOMDigitalChannel(DASModule owner, int channelNumber)
  • OutputTOMDigitalChannel()

Properties:

Property Type Default
OutputMode DigitalOutputModes DigitalOutputModes.NONE
DelayMS double 0D
LimitDuration bool false
DurationMS double 0D
DigitalChannelDescription string ""
LastModifiedBy string ""
LastModified DateTime
LocalOnly bool false
HardwareChannelName string
Version int
Date DateTime

Methods:

  • override bool IsConfigured() — Returns true if OutputMode != DigitalOutputModes.NONE and DigitalChannelDescription is not empty.
  • override void WriteXml(XmlWriter writer)
  • override void WriteXmlCRC32(XmlWriter writer)
  • override void HandleElement(XmlReader reader)

OutputSquibChannel

Inherits: AnalogOutputDASChannel, IComparable

**Constructors: