/// /// Copyright (c) 2015-2016 Sensus Metering Systems /// using System; using System.Collections.Generic; namespace Results.Entities { public class TestRslt { /// Identity public virtual int Id { get; protected set; } public virtual Batch Batch { get; set; } public virtual TestData TestData { get; set; } public virtual Components Components { get; set; } public virtual int Part { get; set; } public virtual int RepetitionNr { get; set; } /// Repetition number from the set of repeated tests (1...) /// Main results public virtual DateTime StartTime { get; set; } /// Date and time of the test start public virtual DateTime EndTime { get; set; } /// Date and time of the test end public virtual int FlowSetTime { get; set; } /// [s] Measurement time in seconds public virtual double TestTime { get; set; } /// [s] Measurement time in seconds public virtual double PulsesMaster { get; set; } public virtual double ConstMaster { get; set; } /// [pls/l] Pulses per liter master flow meter public virtual double MassStartRaw { get; set; } /// [kg] public virtual double MassStart { get; set; } /// [kg] public virtual double MassEndRaw { get; set; } /// [kg] public virtual double MassEnd { get; set; } /// [kg] public virtual double DensityIn { get; set; } /// [kg/m3] public virtual double DensityOut { get; set; } /// [kg/m3] public virtual double DensityDiv { get; set; } /// [kg/m3] public virtual double Buoyancy { get; set; } public virtual double FlowMass { get; set; } /// [kg/h] calculated from conventional true value public virtual double FlowVolume { get; set; } ///![m3/h] public virtual double VolumeCTV { get; set; } /// [l] Volume conventional true value public virtual double VolumeMaster { get; set; } /// [l] Volume from the master flow meter public virtual double ErrorMaster { get; set; } /// [%] /// Auxiliary results public virtual float AmbientTempAve { get; set; } /// [deg.C] Average ambient air temperature public virtual float AmbientPressAve { get; set; } /// Average ambient air pressure public virtual float AmbientHumiAve { get; set; } /// [%] Average ambient air relative humidity public virtual float PressUpAvrg { get; set; } /// [Bar] Input water pressure (average) public virtual float PressUpStart { get; set; } /// [Bar] public virtual float PressUpEnd { get; set; } /// [Bar] public virtual float PressUpMin { get; set; } /// [Bar] public virtual float PressUpMax { get; set; } /// [Bar] public virtual float PressDownAvrg { get; set; } /// [Bar] public virtual float PressDownStart { get; set; } /// [Bar] public virtual float PressDownEnd { get; set; } /// [Bar] public virtual float PressDownMin { get; set; } /// [Bar] public virtual float PressDownMax { get; set; } /// [Bar] public virtual float TempInAvrg { get; set; } /// [deg.C] public virtual float TempInStart { get; set; } /// [deg.C] public virtual float TempInEnd { get; set; } /// [deg.C] public virtual float TempInMin { get; set; } /// [deg.C] public virtual float TempInMax { get; set; } /// [deg.C] public virtual float TempOutAvrg { get; set; } /// [deg.C] public virtual float TempOutStart { get; set; } /// [deg.C] public virtual float TempOutEnd { get; set; } /// [deg.C] public virtual float TempOutMin { get; set; } /// [deg.C] public virtual float TempOutMax { get; set; } /// [deg.C] public virtual float TempDivAvrg { get; set; } /// [deg.C] public virtual float TempDivStart { get; set; } /// [deg.C] public virtual float TempDivEnd { get; set; } /// [deg.C] public virtual float TempDivMin { get; set; } /// [deg.C] public virtual float TempDivMax { get; set; } /// [deg.C] public virtual float FlowMin { get; set; } /// [kg/m3] minimum flow public virtual float FlowMax { get; set; } /// [kg/m3] maximum flow public virtual float Custom1 { get; set; } public virtual float Custom2 { get; set; } public virtual float Custom3 { get; set; } public virtual float Custom4 { get; set; } public virtual float Custom5 { get; set; } public virtual float Custom6 { get; set; } public virtual float Custom7 { get; set; } public virtual float Custom8 { get; set; } /// Wrappers public virtual string Name() { return Utils.GetTestName(TestData.Name, TestData.Repeats, RepetitionNr); } public virtual int Repeats() { return TestData.Repeats; } public virtual double Qfrom() { return TestData.Qfrom; } public virtual double Qto() { return TestData.Qto; } public virtual double TargetVolume() { return TestData.TargetVolume; } public virtual double TargetTime() { return TestData.TargetTime; } public virtual string Method() { return TestData.Method; } public virtual double ErrLimLo() { return TestData.ErrLimLo; } public virtual double ErrLimHi() { return TestData.ErrLimHi; } public virtual double Uncertainty() { return TestData.Uncertainty; } protected TestRslt() { } public TestRslt(Batch batch, TestData testData, int part, int repetitionNr) : this() { Batch = batch; TestData = testData; Part = part; RepetitionNr = repetitionNr; } public override string ToString() { return string.Format("batch={0}, procedure={1}, test={2}, {3} {4}", Batch.BatchNr, Batch.ProcedureName, Name(), StartTime.ToShortDateString(), StartTime.ToShortTimeString()); } } }