2020-05-25 11:53:24 +00:00
|
|
|
|
///
|
|
|
|
|
|
/// Copyright (c) 2020 Sensus Slovensko a.s.
|
|
|
|
|
|
///
|
|
|
|
|
|
using System;
|
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
|
using log4net;
|
2021-05-27 15:30:04 +00:00
|
|
|
|
using Common;
|
2020-05-25 11:53:24 +00:00
|
|
|
|
using Config.Entities;
|
2021-03-05 13:47:21 +00:00
|
|
|
|
using TBF.Rig.GenericDevices;
|
|
|
|
|
|
using TBF.Rig.Sequences;
|
2020-05-25 11:53:24 +00:00
|
|
|
|
|
2021-03-05 13:47:21 +00:00
|
|
|
|
namespace TBF.Rig.TestMethods.FixedStartMassCollAdvanced.HeatMeters
|
2020-05-25 11:53:24 +00:00
|
|
|
|
{
|
2020-05-29 10:28:19 +00:00
|
|
|
|
public class Component : ComponentBase, GenericDevices.ITestMethod, ISequenceCondition
|
2020-05-25 11:53:24 +00:00
|
|
|
|
{
|
|
|
|
|
|
private static readonly ILog log = LogManager.GetLogger(typeof(Component));
|
2026-03-12 13:50:47 +00:00
|
|
|
|
|
|
|
|
|
|
public FlowType MethodFlowType => FlowType.volume;
|
2021-04-07 10:48:44 +00:00
|
|
|
|
public override string ToString() { return string.Format("{0}({1})", ClassName, Cfg.ToString(-1)); }
|
2020-05-25 11:53:24 +00:00
|
|
|
|
|
|
|
|
|
|
public bool CanTest(MetersKind meters) { return meters == MetersKind.HeatMeter; }
|
|
|
|
|
|
public bool DoTransitions() { return true; }
|
|
|
|
|
|
public bool CheckDeviceCaps(Test test, OutputPath devices, out string message)
|
|
|
|
|
|
{
|
|
|
|
|
|
return FixedStartMassCollAdvancedSeq.CheckDeviceCaps(test, devices, out message);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
readonly TestMethodCfg testMethodCfg;
|
|
|
|
|
|
public Component() { }
|
2020-05-29 10:28:19 +00:00
|
|
|
|
public Component(Generic.IComponentCfg cfg) : base(cfg)
|
2020-05-25 11:53:24 +00:00
|
|
|
|
{
|
|
|
|
|
|
testMethodCfg = cfg as TestMethodCfg;
|
2021-02-19 08:48:00 +00:00
|
|
|
|
log.Warn(this.ToString());
|
2020-05-25 11:53:24 +00:00
|
|
|
|
}
|
2021-04-03 07:39:17 +00:00
|
|
|
|
///
|
|
|
|
|
|
public override void Initialize() { }
|
2020-05-25 11:53:24 +00:00
|
|
|
|
|
|
|
|
|
|
public IList<Event> Execute(Test test, int repetNr, bool isLastRepetition)
|
|
|
|
|
|
{
|
2020-05-29 10:28:19 +00:00
|
|
|
|
return (new FixedStartMassCollAdvancedSeq()).Execute(test, repetNr, isLastRepetition, !testMethodCfg.DataEntryInTransBefore, false, testMethodCfg.TestParams, DebugLevel);
|
2020-05-25 11:53:24 +00:00
|
|
|
|
}
|
2020-05-29 10:28:19 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public int ConditionsCount { get { return 1; } }
|
|
|
|
|
|
public string ConditionName(int i) { return (i == 0) ? "Data Entry Form" : string.Empty; }
|
|
|
|
|
|
public IOperation ConditionOp(int i)
|
|
|
|
|
|
{
|
|
|
|
|
|
GenericDevices.IHasWMStatesForm wmStatesForm =
|
|
|
|
|
|
TbfComponents.FindComponent(StateMachine.Procedure.DataEntry) as GenericDevices.IHasWMStatesForm;
|
|
|
|
|
|
if ((i == 0) && (wmStatesForm != null))
|
|
|
|
|
|
{
|
|
|
|
|
|
return wmStatesForm.ShowAdvancedTestStartFormOp(ProcessData.RegisterReaders, ProcessData.BatchRslts.Batch.WaterMeters, true);
|
|
|
|
|
|
}
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2020-05-25 11:53:24 +00:00
|
|
|
|
}
|