using DTS.Common.Enums.DASFactory;
using DTS.Common.Enums.Sensors;
using System;
using System.Xml;
using System.Xml.Schema;
namespace DTS.Common.Interface.DASFactory.Config
{
public interface IDASChannel
{
DFConstantsAndEnums.ConfigMode ConfigurationMode { get; set; }
///
/// whether the channel should be put in Diagnostics mode or not
///
bool DiagnosticsMode { get; set; }
///
/// Channel number with respect to it's containing module
///
int ModuleChannelNumber { get; set; }
int AbsoluteDisplayOrder { get; set; }
double UnitConverision { get; set; }
bool AtCapacity { get; set; }
double CapacityOutputIsBasedOn { get; set; }
SensorConstants.SensUnits SensitivityUnits { get; set; }
///
/// A link back to the Module that contains this channel.
///
//public DASModule OwningModule { get; set; }
///
/// The "stack channel number" of this channel with respect to the owning
/// DAS (0 based).
///
byte Number { get; }
///
/// Array of (string, byte[]) for EID
///
IEID[] IDs { get; set; }
///
/// time stamp of this event
///
DateTime EventStartTime { get; set; }
///
/// value indicating whether or not this channel has registered a level trigger.
///
bool LevelTriggerSeen { get; set; }
string IsoChannelName { get; set; }
string ChannelGroupName { get; set; }
string UserCode { get; set; }
string UserChannelName { get; set; }
string LinearSensorCalibration { get; set; }
///
/// the number of samples to qualify over
///
int QualificationSamples { get; set; }
/////
///// Number of samples that T0 on DASes that did not directly experience the level trigger must be shifted
///// to time align with this channel's directly level triggered T0. A null value indicates that this channel
///// did not directly receive a level trigger.
/////
int? LevelTriggerT0AdjustmentSamples { get; set; }
///
/// Is this channel configured? 'Configured' means a sensor is connected and/or there is
/// information in the containg device's ConfigData object, put there with a call to
/// ConfigureService.Configure(...) in the API.
///
/// True if it is configured, False otherwise.
bool IsConfigured();
void WriteElementStart(XmlWriter writer);
void WriteElementEnd(XmlWriter writer);
void WriteXmlCRC32(XmlWriter writer);
void WriteXml(XmlWriter writer);
void ReadXml(XmlReader reader);
XmlSchema GetSchema();
int IdType { get; set; }
string UserValue1 { get; set; }
string UserValue2 { get; set; }
string UserValue3 { get; set; }
}
}