init
This commit is contained in:
@@ -0,0 +1,195 @@
|
||||
using System;
|
||||
using System.ComponentModel;
|
||||
using System.Windows.Media;
|
||||
using DTS.Common.Base;
|
||||
// ReSharper disable CheckNamespace
|
||||
|
||||
namespace DTS.Common.Interface
|
||||
{
|
||||
public interface ITestChannel : INotifyPropertyChanged
|
||||
{
|
||||
string Group { get; set; }
|
||||
string SubGroup { get; set; }
|
||||
bool IsGraphChannel { get; set; }
|
||||
string GraphName { get; set; }
|
||||
string TestId { get; set; }
|
||||
|
||||
string TestSetupName { get; set; }
|
||||
string ModuleSerialNumber { get; set; }
|
||||
string SerialNumber { get; set; }
|
||||
string ChannelId { get; set; }
|
||||
string ChannelDisplayName { get; set; }
|
||||
string Description { get; set; }
|
||||
string IsoCode { get; set; }
|
||||
string IsoChannelName { get; set; }
|
||||
string UserCode { get; set; }
|
||||
string UserChannelName { get; set; }
|
||||
string ChannelGroupName { get; set; }
|
||||
string ChannelType { get; set; }
|
||||
bool IsCalculatedChannel { get; set; }
|
||||
int Number { get; set; }
|
||||
string DigitalMultiplier { get; set; }
|
||||
string DigitalMode { get; set; }
|
||||
DateTime Start { get; set; }
|
||||
string Bridge { get; set; }
|
||||
double BridgeResistanceOhms { get; set; }
|
||||
double ZeroPoint { get; set; }
|
||||
string ChannelDescriptionString { get; set; }
|
||||
void SetChannelDescriptionAndDisplayName(string channelDescriptionString);
|
||||
string ChannelName2 { get; set; }
|
||||
string HardwareChannelName { get; set; }
|
||||
double DesiredRange { get; set; }
|
||||
double ActualMaxRangeEu { get; set; }
|
||||
double ActualMinRangeEu { get; set; }
|
||||
double ActualMaxRangeAdc { get; }
|
||||
double ActualMinRangeAdc { get; }
|
||||
double ActualMaxRangeMv { get; set; }
|
||||
double ActualMinRangeMv { get; set; }
|
||||
double Sensitivity { get; set; }
|
||||
string SoftwareFilter { get; set; }
|
||||
bool ProportionalToExcitation { get; set; }
|
||||
bool IsInverted { get; set; }
|
||||
string LinearizationFormula { get; set; }
|
||||
bool IsSubsampled { get; set; }
|
||||
int AbsoluteDisplayOrder { get; set; }
|
||||
DateTime LastCalibrationDate { get; set; }
|
||||
string SensorId { get; set; }
|
||||
int OffsetToleranceLowMv { get; set; }
|
||||
int OffsetToleranceHighMv { get; set; }
|
||||
int DataFlag { get; set; }
|
||||
string ExcitationVoltage { get; set; }
|
||||
string Eu { get; set; }
|
||||
bool CalSignalEnabled { get; set; }
|
||||
bool ShuntEnabled { get; set; }
|
||||
bool VoltageInsertionCheckEnabled { get; set; }
|
||||
bool RemoveOffset { get; set; }
|
||||
string ZeroMethod { get; set; }
|
||||
double ZeroAverageWindowBegin { get; set; }
|
||||
double ZeroAverageWindowEnd { get; set; }
|
||||
int InitialEu { get; set; }
|
||||
string InitialOffset { get; set; }
|
||||
int UnsubsampledSampleRateHz { get; set; }
|
||||
double MeasuredShuntDeflectionMv { get; set; }
|
||||
double TargetShuntDeflectionMv { get; set; }
|
||||
double MeasuredExcitationVoltage { get; set; }
|
||||
double FactoryExcitationVoltage { get; set; }
|
||||
double TimeOfFirstSample { get; set; }
|
||||
double Multiplier { get; set; }
|
||||
double UserOffsetEu { get; set; }
|
||||
int UnitConversion { get; set; }
|
||||
bool AtCapacity { get; set; }
|
||||
int CapacityOutputIsBasedOn { get; set; }
|
||||
string SourceChannelNumber { get; set; }
|
||||
string SourceModuleNumber { get; set; }
|
||||
string SourceModuleSerialNumber { get; set; }
|
||||
string Calculation { get; set; }
|
||||
int SampleRateHz { get; set; }
|
||||
string SensitivityUnits { get; set; }
|
||||
int SensorCapacity { get; set; }
|
||||
string SensorPolarity { get; set; }
|
||||
int ChannelNumber { get; set; }
|
||||
string BinaryFileName { get; set; }
|
||||
string BinaryFilePath { get; set; }
|
||||
double Xmax { get; set; }
|
||||
double Xmin { get; set; }
|
||||
int SequentialNumbers { get; set; }
|
||||
ITestSetupMetadata ParentTestSetup { get; set; }
|
||||
ITestModule ParentModule { get; set; }
|
||||
IBaseViewModel Parent { get; set; }
|
||||
Color ChannelColor { get; set; }
|
||||
string ErrorMessage { get; set; }
|
||||
bool IsError { get; set; }
|
||||
Color? ErrorColor { get; set; }
|
||||
bool IsSelected { get; set; }
|
||||
bool CanSelectChannel { get; set; }
|
||||
bool IsLocked { get; set; }
|
||||
bool CanLock { get; set; }
|
||||
ITestChannel Copy();
|
||||
ulong T1Sample { get; set; }
|
||||
ulong T2Sample { get; set; }
|
||||
double HIC { get; set; }
|
||||
bool UseEUScaler { get; set; }
|
||||
double ScaleFactorEU { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Min value of ADC for entire dataset
|
||||
/// </summary>
|
||||
double MinADC { get; set; }
|
||||
/// <summary>
|
||||
/// Max value in ADC for entire dataset
|
||||
/// </summary>
|
||||
double MaxADC { get; set; }
|
||||
/// <summary>
|
||||
/// Average value in ADC for entire dataset
|
||||
/// </summary>
|
||||
double AveADC { get; set; }
|
||||
/// <summary>
|
||||
/// STD DEV in ADC for entire dataset
|
||||
/// </summary>
|
||||
double StdDevADC { get; set; }
|
||||
/// <summary>
|
||||
/// Value @ T0 in ADC
|
||||
/// </summary>
|
||||
double T0ADC { get; set; }
|
||||
/// <summary>
|
||||
/// Minimum value in mV for entire dataset
|
||||
/// </summary>
|
||||
double MinMV { get; set; }
|
||||
/// <summary>
|
||||
/// Maximum value in mV for entire dataset
|
||||
/// </summary>
|
||||
double MaxMV { get; set; }
|
||||
/// <summary>
|
||||
/// average value in mV for entire dataset
|
||||
/// </summary>
|
||||
double AveMV { get; set; }
|
||||
/// <summary>
|
||||
/// std dev in mV for entire dataset
|
||||
/// </summary>
|
||||
double StdDevMV { get; set; }
|
||||
/// <summary>
|
||||
/// value in mV at T0
|
||||
/// </summary>
|
||||
double T0MV { get; set; }
|
||||
/// <summary>
|
||||
/// minimum value in EU for entire dataset
|
||||
/// </summary>
|
||||
double MinEU { get; set; }
|
||||
/// <summary>
|
||||
/// maximum value in EU for entire dataset
|
||||
/// </summary>
|
||||
double MaxEU { get; set; }
|
||||
/// <summary>
|
||||
/// average value in EU for entire dataset
|
||||
/// </summary>
|
||||
double AveEU { get; set; }
|
||||
/// <summary>
|
||||
/// std dev in EU
|
||||
/// </summary>
|
||||
double StdDevEU { get; set; }
|
||||
/// <summary>
|
||||
/// value at T0 in EU
|
||||
/// </summary>
|
||||
double T0EU { get; set; }
|
||||
/// <summary>
|
||||
/// minimum value for whatever current units are for entire dataset
|
||||
/// </summary>
|
||||
double MinY { get; set; }
|
||||
/// <summary>
|
||||
/// maximum value for whatever current units are for entire dataset
|
||||
/// </summary>
|
||||
double MaxY { get; set; }
|
||||
/// <summary>
|
||||
/// average value for whatever current units are for entire dataset
|
||||
/// </summary>
|
||||
double AveY { get; set; }
|
||||
/// <summary>
|
||||
/// std deviation for whatever current units are
|
||||
/// </summary>
|
||||
double StdDevY { get; set; }
|
||||
/// <summary>
|
||||
/// Value at T0 in whatever current units are
|
||||
/// </summary>
|
||||
double T0Value { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,102 @@
|
||||
|
||||
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace DTS.Common.Classes.TMAT
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// this class handles a TMATS template split into two files
|
||||
/// </summary>
|
||||
public class TmtSplitFile : TmtBase
|
||||
{
|
||||
private readonly List<string> _lines = new List<string>();
|
||||
private readonly Dictionary<int, List<string>> _allChannels = new Dictionary<int, List<string>>();
|
||||
private readonly List<string> _channelTemplate = new List<string>();
|
||||
|
||||
public override string[] GetAllLines()
|
||||
{
|
||||
if (!_allChannels.Any()) { return _lines.ToArray(); }
|
||||
var lines = new List<string>(_lines.ToArray());
|
||||
var min = _allChannels.Keys.Min();
|
||||
var max = _allChannels.Keys.Max();
|
||||
for( var i = min; i<= max; i++)
|
||||
{
|
||||
if (_allChannels.ContainsKey(i))
|
||||
{
|
||||
lines.AddRange(_allChannels[i].ToArray());
|
||||
}
|
||||
}
|
||||
return lines.ToArray();
|
||||
}
|
||||
private void AddChannelIfNeeded(int channelNumber)
|
||||
{
|
||||
if (!_allChannels.ContainsKey(channelNumber))
|
||||
{
|
||||
_allChannels.Add(channelNumber, _channelTemplate.ToList());
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// updates the files in the file with a given value
|
||||
/// </summary>
|
||||
public override void UpdateValue(TMTChannelKeysEx key, string value, int channelNumber)
|
||||
{
|
||||
AddChannelIfNeeded(channelNumber);
|
||||
var lines = _allChannels[channelNumber];
|
||||
var pattern = TMTKey.GetKey(key);
|
||||
for (int i = 0; i < lines.Count; i++)
|
||||
{
|
||||
if (lines[i].Contains(pattern))
|
||||
{
|
||||
lines[i] = lines[i].Replace(pattern, value);
|
||||
}
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// updates the fields in the file with a given value
|
||||
/// </summary>
|
||||
/// <param name="key"></param>
|
||||
/// <param name="value"></param>
|
||||
public override void UpdateValue(TMTGlobalKeys key, string value)
|
||||
{
|
||||
var pattern = TMTKey.GetKey(key);
|
||||
for (int i = 0; i < _lines.Count; i++)
|
||||
{
|
||||
if (_lines[i].Contains(pattern))
|
||||
{
|
||||
_lines[i] = _lines[i].Replace(pattern, value);
|
||||
}
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// updates the files in the file with the given value
|
||||
/// </summary>
|
||||
/// <param name="key"></param>
|
||||
/// <param name="value"></param>
|
||||
/// <param name="channelNumber"></param>
|
||||
public override void UpdateValue(TMTChannelKeys key, string value, int channelNumber)
|
||||
{
|
||||
var pattern = TMTKey.GetKey(key, channelNumber);
|
||||
for (int i = 0; i < _lines.Count; i++)
|
||||
{
|
||||
if (_lines[i].Contains(pattern))
|
||||
{
|
||||
_lines[i] = _lines[i].Replace(pattern, value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public TmtSplitFile(string dasTemplate, string channelTemplate)
|
||||
{
|
||||
if (System.IO.File.Exists(dasTemplate))
|
||||
{
|
||||
_lines.AddRange(System.IO.File.ReadAllLines(dasTemplate));
|
||||
}
|
||||
if (System.IO.File.Exists(channelTemplate))
|
||||
{
|
||||
_channelTemplate.AddRange(System.IO.File.ReadAllLines(channelTemplate));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 277 B |
@@ -0,0 +1,19 @@
|
||||
using DTS.Common.Base;
|
||||
using Prism.Commands;
|
||||
using System.Collections.ObjectModel;
|
||||
|
||||
namespace DTS.Common.Interface
|
||||
{
|
||||
public interface IPSDReportResultsViewModel : IBaseViewModel
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets the Results View.
|
||||
/// </summary>
|
||||
IBaseView View { get; set; }
|
||||
IBaseViewModel Parent { get; set; }
|
||||
|
||||
DelegateCommand ExportToPDFCommand { get; }
|
||||
DelegateCommand ExportToCSVCommand { get; }
|
||||
ObservableCollection<IChannelGRMSSummary> Results { get; set; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user