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

1.5 KiB

source_files, generated_at, model, schema_version, sha256
source_files generated_at model schema_version sha256
Common/DTS.Common.Serialization/Control/DAS/IFilterable.cs
Common/DTS.Common.Serialization/Control/DAS/IFilter.cs
2026-04-17T16:08:03.377171+00:00 zai-org/GLM-5-FP8 1 9a73128b86fcf306

DAS

1. Purpose

This module defines the core interfaces for filtering data within a Data Acquisition System (DAS) channel architecture. It establishes the contract for filterable channels (IFilterable) and the filters themselves (IFilter), enabling a strategy pattern where different filter implementations can be applied to channel data. It handles filter management, caching controls, and the application of filtering algorithms to raw or channel-based data.

2. Public Interface

interface IFilterable

  • bool UseFilterCaching { get; set; } - Gets or sets a flag to enable or disable filter caching.
  • List<IFilter> AvailableFilters { get; } - Gets the list of IFilter objects available for this channel.
  • IFilter CurrentFilter { get; set; } - Gets or sets the currently active filter.
  • double[] GetDataFilteredBy(IFilter filter, Event.Module.Channel.DataDisplayUnits displayUnits) - Retrieves data filtered by the specified filter and converted to the specified displayUnits.

interface IFilter

  • string Name { get; } - Returns the descriptive name of the filter.
  • bool IsCfc { get; } - Indicates whether the filter represents a cardinal CFC (Channel Filter Class) value.