diff --git a/TBF/Rig/Events.cs b/TBF/Rig/Events.cs
index be33a7fbc..04b32f428 100644
--- a/TBF/Rig/Events.cs
+++ b/TBF/Rig/Events.cs
@@ -76,6 +76,7 @@ namespace TBF.Rig
Busy, /// Useful when waiting in state until at least one is busy (all are done)
Done, /// Useful when waiting in state until the first is done, the rest miht still be busy
MakeSecondPass, /// Test completed OK but 2nd pass (evaluation) is required
+ EndSession, /// Test completed OK (similarly to Event.Done), 'End session' button click is automatically invoked
///
ModelessFormIsOpen,
ModelessFormClosed,
diff --git a/TBF/Rig/RegisterReaders/DataStream/Reader/Reader.cs b/TBF/Rig/RegisterReaders/DataStream/Reader/Reader.cs
index a59383e38..ed7993c3f 100644
--- a/TBF/Rig/RegisterReaders/DataStream/Reader/Reader.cs
+++ b/TBF/Rig/RegisterReaders/DataStream/Reader/Reader.cs
@@ -98,15 +98,8 @@ namespace TBF.Rig.RegisterReaders.DataStream.Reader
/// Currently executed repetition number
public void TestIsGoingToStartSoon(Config.Entities.Test test, int repetitionNr)
{
- /// Store/update values to be used as a part of the opto-data log file name
- testName = test.Name;
- testRepeats = test.Repeats;
- this.repetitionNr = repetitionNr;
+ /// Nothing needs to be updated
}
- ///
- string testName;
- int testRepeats;
- int repetitionNr;
/// To be used at the beginning of a test
diff --git a/TBF/Rig/RegisterReaders/SerialStream/SerialStreamCfg.cs b/TBF/Rig/RegisterReaders/SerialStream/SerialStreamCfg.cs
index 22dc02da0..601be0146 100644
--- a/TBF/Rig/RegisterReaders/SerialStream/SerialStreamCfg.cs
+++ b/TBF/Rig/RegisterReaders/SerialStream/SerialStreamCfg.cs
@@ -1,52 +1,61 @@
///
/// Copyright (c) 2018 Sensus Slovensko a.s.
///
+using System;
using System.Collections.Generic;
using System.IO.Ports;
using System.Xml.Serialization;
using Common;
+using Config.Entities;
using TBF.Rig.Generic;
namespace TBF.Rig.RegisterReaders.SerialStream
{
- public class SerialStreamCfg : ComponentCfgBase, Generic.IComponentCfg
+ public class SerialStreamCfg : ComponentCfgBase, IComponentCfg, IParamsProvider
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(SerialStreamCfg) })[0];
- public override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
- public IComponentCfgCtrl GetControl(IList cmpntEntities) { return new SerialStreamCfgCtrl(); }
+ public IComponentCfgCtrl GetControl(IList cmpntEntities) { return new Configs.ParamsProvider.ComponentCfgCtrl(this, null); }
///
/// Serialized parameters
///
- public int ComPortNr;
+ public int ComPortNr;
public int BaudRate;
public Parity Parity;
public int DataBits;
public StopBits StopBits;
public Handshake Handshake;
- ///
+ ///
/// Procedure parameters
///
- [XmlIgnore]
- public ProcParams ProcParams;
- public override IParamsProvider GetRuntimeProcParamsProvider() { return ProcParams; }
+ [XmlIgnore]
+ public ProcParams ProcParams;
+ public override IParamsProvider GetRuntimeProcParamsProvider() { return ProcParams; }
public override IParamsProvider CreateProcParamsProvider() { return new ProcParams(true); }
- /// Private parameterless constructor invoked by all other (public) constructors
- SerialStreamCfg()
+ /// Private parameterless constructor invoked by all other (public) constructors
+ SerialStreamCfg()
{
ProcParams = CreateProcParamsProvider() as ProcParams;
}
public SerialStreamCfg(string name, IComponentFactory factory)
: this()
- {
+ {
Name = name;
Factory = factory;
ParentName = string.Empty;
- ComPortNr = 21;
+ InitializeAll();
+ }
+
+ public string ComponentName { get { return Name; } }
+
+ public void InitializeAll()
+ {
+ ComPortNr = 3;
BaudRate = 9600;
Parity = System.IO.Ports.Parity.None;
DataBits = 8;
@@ -54,10 +63,120 @@ namespace TBF.Rig.RegisterReaders.SerialStream
Handshake = System.IO.Ports.Handshake.None;
}
- public string ToString(int i)
- {
- return string.Format("{0} Com{1}, {2}Bd, {3}-bits, parity={4}, stopBits={5}, {6}",
- Name, ComPortNr, BaudRate, DataBits, Parity, StopBits, Handshake);
+ string[] paramNames = new string[]
+ {
+ "Serial port number", /// 0
+ "Baud rate", /// 1
+ "Parity", /// 2
+ "Data bits", /// 3
+ "Stop bits", /// 4
+ "Handshake", /// 5
+ };
+ public string ParamName(int i) { return paramNames[i]; }
+ public int ParamsCount() { return paramNames.Length; }
+
+ public ICollection ParamValues(int i)
+ {
+ switch (i)
+ {
+ case 1:
+ return new string[] { "150", "300", "600", "1200", "2400", "4800", "9600",
+ "19200", "38400", "57600", "76800", "115200"};
+ case 2:
+ return new string[] { Parity.None.ToString(), Parity.Odd.ToString(), Parity.Even.ToString() };
+ case 3:
+ return new string[] { "7", "8" };
+ case 4:
+ return new string[] { StopBits.None.ToString(),
+ StopBits.One.ToString(),
+ StopBits.OnePointFive.ToString(),
+ StopBits.Two.ToString() };
+ case 5:
+ return new string[] { Handshake.None.ToString(),
+ Handshake.XOnXOff.ToString(),
+ Handshake.RequestToSend.ToString(),
+ Handshake.RequestToSendXOnXOff.ToString() };
+ default:
+ return null;
+ }
}
- }
+
+ public string ToString(int i)
+ {
+ switch (i)
+ {
+ case 0: return ComPortNr.ToString();
+ case 1: return BaudRate.ToString();
+ case 2: return Parity.ToString();
+ case 3: return DataBits.ToString();
+ case 4: return StopBits.ToString();
+ case 5: return Handshake.ToString();
+ default:
+ return string.Format("{0}: Com{1}, {2}Bd, {3}-bits, parity={4}, stopBits={5}, {6}",
+ Name, ComPortNr, BaudRate, DataBits, Parity, StopBits, Handshake);
+ }
+ }
+
+ public CfgUpdateFlags UpdateParam(int i, string str)
+ {
+ switch (i)
+ {
+ case 0: ComPortNr = int.Parse(str); return CfgUpdateFlags.RestartRqrd;
+ case 1: BaudRate = int.Parse(str); return CfgUpdateFlags.RestartRqrd;
+ case 2: Parity = Common.Utils.GetParity(str); return CfgUpdateFlags.RestartRqrd;
+ case 3: DataBits = int.Parse(str); return CfgUpdateFlags.RestartRqrd;
+ case 4: StopBits = Common.Utils.GetStopBits(str); return CfgUpdateFlags.RestartRqrd;
+ case 5: Handshake = Common.Utils.GetHandshake(str); return CfgUpdateFlags.RestartRqrd;
+ default: return CfgUpdateFlags.None;
+ }
+ }
+
+ public bool ValidateParam(int i, string strValue, out string message)
+ {
+ message = string.Empty;
+ int idummy;
+
+ switch (i)
+ {
+ case 0:
+ if (int.TryParse(strValue, out idummy) && idummy > 0) return true;
+ break;
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ if (ParamValues(i).Contains(strValue)) return true;
+ break;
+ default:
+ message = "Invalid index";
+ return false;
+ }
+
+ message = ParamName(i) + " is invalid";
+ return false;
+ }
+
+ void CopyContentTo(SerialStreamCfg prms)
+ {
+ prms.ComPortNr = this.ComPortNr;
+ prms.BaudRate = this.BaudRate;
+ prms.Parity = this.Parity;
+ prms.DataBits = this.DataBits;
+ prms.StopBits = this.StopBits;
+ prms.Handshake = this.Handshake;
+ }
+
+ public IParamsProvider Clone()
+ {
+ SerialStreamCfg pars = new SerialStreamCfg();
+ CopyContentTo(pars);
+ return pars;
+ }
+
+ public bool UpdateEmbeddedDbEntity()
+ {
+ return true; /// =OK, do nothing
+ }
+ }
}
diff --git a/TBF/Rig/RegisterReaders/SerialStream/SerialStreamCfgCtrl.cs b/TBF/Rig/RegisterReaders/SerialStream/SerialStreamCfgCtrl.cs
deleted file mode 100644
index 740ce5821..000000000
--- a/TBF/Rig/RegisterReaders/SerialStream/SerialStreamCfgCtrl.cs
+++ /dev/null
@@ -1,125 +0,0 @@
-///
-/// Copyright (c) 2018 Sensus Slovensko a.s.
-///
-using System;
-using System.Windows.Forms;
-using System.IO.Ports;
-using Common;
-using Config.Entities;
-using TBF.Rig.Generic;
-using TBF.Resources;
-
-namespace TBF.Rig.RegisterReaders.SerialStream
-{
- public partial class SerialStreamCfgCtrl : UserControl, IComponentCfgCtrl
- {
- public bool ShowMore { get { return false; } }
-
- SerialStreamCfg config;
- public IComponentCfg Config
- {
- get { return config as IComponentCfg; }
- set
- {
- config = value as SerialStreamCfg;
- Redraw();
- }
- }
-
- public SerialStreamCfgCtrl()
- {
- InitializeComponent();
-
- parityComboBox.Items.Add(Parity.None.ToString());
- parityComboBox.Items.Add(Parity.Even.ToString());
- parityComboBox.Items.Add(Parity.Odd.ToString());
-
- stopBitsComboBox.Items.Add(StopBits.None.ToString());
- stopBitsComboBox.Items.Add(StopBits.One.ToString());
- stopBitsComboBox.Items.Add(StopBits.OnePointFive.ToString());
- stopBitsComboBox.Items.Add(StopBits.Two.ToString());
-
- handshakeComboBox.Items.Add(Handshake.None.ToString());
- handshakeComboBox.Items.Add(Handshake.RequestToSend.ToString());
- handshakeComboBox.Items.Add(Handshake.XOnXOff.ToString());
- }
-
- private void ModbusCfgCtrl_Load(object sender, EventArgs e)
- {
- nameLabel.Text = Strings.Name;
- Redraw();
- }
-
- public void Closing()
- {
- }
-
- void Redraw()
- {
- if (config == null) return; /// Control was not loaded, settings were not changed
-
- classNameLabel.Text = config.Factory.ClassName;
- nameTextBox.Text = config.Name;
- comPortNrTextBox.Text = config.ComPortNr.ToString();
- baudRateTextBox.Text = config.BaudRate.ToString();
- parityComboBox.Text = config.Parity.ToString();
- dataBitsTextBox.Text = config.DataBits.ToString();
- stopBitsComboBox.Text = config.StopBits.ToString();
- handshakeComboBox.Text = config.Handshake.ToString();
- }
-
- public void Unlock()
- {
- nameTextBox.Enabled = true;
- comPortNrTextBox.Enabled = true;
- baudRateTextBox.Enabled = true;
- parityComboBox.Enabled = true;
- dataBitsTextBox.Enabled = true;
- stopBitsComboBox.Enabled = true;
- handshakeComboBox.Enabled = true;
- }
-
- public CfgUpdateFlags UpdateCfg()
- {
- CfgUpdateFlags flags = CfgUpdateFlags.RestartRqrd;
-
- if (config == null) return CfgUpdateFlags.Error; /// Control was not loaded, settings were not changed
-
- config.Name = nameTextBox.Text;
- config.ComPortNr = int.Parse(comPortNrTextBox.Text);
- config.BaudRate = int.Parse(baudRateTextBox.Text);
- config.Parity = Common.Utils.GetParity(parityComboBox.SelectedItem.ToString());
- config.DataBits = int.Parse(dataBitsTextBox.Text);
- config.StopBits = Common.Utils.GetStopBits(stopBitsComboBox.SelectedItem.ToString());
- config.Handshake = Common.Utils.GetHandshake(handshakeComboBox.SelectedItem.ToString());
-
- return flags;
- }
-
- public CfgUpdateFlags VerifyCfg(ref string message)
- {
- CfgUpdateFlags flags = CfgUpdateFlags.None;
-
- int dummy;
- if (!int.TryParse(comPortNrTextBox.Text, out dummy) || dummy < 1 || dummy > 999)
- {
- flags |= CfgUpdateFlags.Error;
- message += Environment.NewLine + "'Serial Port Number' is not valid";
- }
-
- if (!int.TryParse(baudRateTextBox.Text, out dummy) || dummy < 150 || dummy > 115200)
- {
- flags |= CfgUpdateFlags.Error;
- message += Environment.NewLine + "'Baud Rate' is not valid";
- }
-
- if (!int.TryParse(dataBitsTextBox.Text, out dummy) || dummy < 7 || dummy > 8)
- {
- flags |= CfgUpdateFlags.Error;
- message += Environment.NewLine + "'Data Bits' is not valid";
- }
-
- return flags;
- }
- }
-}
diff --git a/TBF/Rig/RegisterReaders/SerialStream/SerialStreamCfgCtrl.designer.cs b/TBF/Rig/RegisterReaders/SerialStream/SerialStreamCfgCtrl.designer.cs
deleted file mode 100644
index d445a9b2f..000000000
--- a/TBF/Rig/RegisterReaders/SerialStream/SerialStreamCfgCtrl.designer.cs
+++ /dev/null
@@ -1,229 +0,0 @@
-///
-/// Copyright (c) 2018 Sensus Slovensko a.s.
-///
-namespace TBF.Rig.RegisterReaders.SerialStream
-{
- partial class SerialStreamCfgCtrl
- {
- ///
- /// Required designer variable.
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Clean up any resources being used.
- ///
- /// true if managed resources should be disposed; otherwise, false.
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Component Designer generated code
-
- ///
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- ///
- private void InitializeComponent()
- {
- this.comPortNrTextBox = new System.Windows.Forms.TextBox();
- this.label1 = new System.Windows.Forms.Label();
- this.baudRateLabel = new System.Windows.Forms.Label();
- this.baudRateTextBox = new System.Windows.Forms.TextBox();
- this.partityLabel = new System.Windows.Forms.Label();
- this.dataBitsLabel = new System.Windows.Forms.Label();
- this.dataBitsTextBox = new System.Windows.Forms.TextBox();
- this.stopBitsLabel = new System.Windows.Forms.Label();
- this.handshakeLabel = new System.Windows.Forms.Label();
- this.nameTextBox = new System.Windows.Forms.TextBox();
- this.nameLabel = new System.Windows.Forms.Label();
- this.classNameLabel = new System.Windows.Forms.Label();
- this.parityComboBox = new System.Windows.Forms.ComboBox();
- this.stopBitsComboBox = new System.Windows.Forms.ComboBox();
- this.handshakeComboBox = new System.Windows.Forms.ComboBox();
- this.SuspendLayout();
- //
- // comPortNrTextBox
- //
- this.comPortNrTextBox.Enabled = false;
- this.comPortNrTextBox.Location = new System.Drawing.Point(140, 52);
- this.comPortNrTextBox.Name = "comPortNrTextBox";
- this.comPortNrTextBox.Size = new System.Drawing.Size(34, 20);
- this.comPortNrTextBox.TabIndex = 4;
- //
- // label1
- //
- this.label1.AutoSize = true;
- this.label1.Location = new System.Drawing.Point(29, 55);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(98, 13);
- this.label1.TabIndex = 3;
- this.label1.Text = "Serial Port Number:";
- //
- // baudRateLabel
- //
- this.baudRateLabel.AutoSize = true;
- this.baudRateLabel.Location = new System.Drawing.Point(29, 79);
- this.baudRateLabel.Name = "baudRateLabel";
- this.baudRateLabel.Size = new System.Drawing.Size(58, 13);
- this.baudRateLabel.TabIndex = 5;
- this.baudRateLabel.Text = "Baud Rate";
- //
- // baudRateTextBox
- //
- this.baudRateTextBox.Enabled = false;
- this.baudRateTextBox.Location = new System.Drawing.Point(140, 76);
- this.baudRateTextBox.Name = "baudRateTextBox";
- this.baudRateTextBox.Size = new System.Drawing.Size(130, 20);
- this.baudRateTextBox.TabIndex = 6;
- //
- // partityLabel
- //
- this.partityLabel.AutoSize = true;
- this.partityLabel.Location = new System.Drawing.Point(29, 103);
- this.partityLabel.Name = "partityLabel";
- this.partityLabel.Size = new System.Drawing.Size(33, 13);
- this.partityLabel.TabIndex = 7;
- this.partityLabel.Text = "Parity";
- //
- // dataBitsLabel
- //
- this.dataBitsLabel.AutoSize = true;
- this.dataBitsLabel.Location = new System.Drawing.Point(29, 127);
- this.dataBitsLabel.Name = "dataBitsLabel";
- this.dataBitsLabel.Size = new System.Drawing.Size(50, 13);
- this.dataBitsLabel.TabIndex = 9;
- this.dataBitsLabel.Text = "Data Bits";
- //
- // dataBitsTextBox
- //
- this.dataBitsTextBox.Enabled = false;
- this.dataBitsTextBox.Location = new System.Drawing.Point(140, 124);
- this.dataBitsTextBox.Name = "dataBitsTextBox";
- this.dataBitsTextBox.Size = new System.Drawing.Size(34, 20);
- this.dataBitsTextBox.TabIndex = 10;
- //
- // stopBitsLabel
- //
- this.stopBitsLabel.AutoSize = true;
- this.stopBitsLabel.Location = new System.Drawing.Point(29, 151);
- this.stopBitsLabel.Name = "stopBitsLabel";
- this.stopBitsLabel.Size = new System.Drawing.Size(49, 13);
- this.stopBitsLabel.TabIndex = 11;
- this.stopBitsLabel.Text = "Stop Bits";
- //
- // handshakeLabel
- //
- this.handshakeLabel.AutoSize = true;
- this.handshakeLabel.Location = new System.Drawing.Point(29, 175);
- this.handshakeLabel.Name = "handshakeLabel";
- this.handshakeLabel.Size = new System.Drawing.Size(62, 13);
- this.handshakeLabel.TabIndex = 13;
- this.handshakeLabel.Text = "Handshake";
- //
- // nameTextBox
- //
- this.nameTextBox.Enabled = false;
- this.nameTextBox.Location = new System.Drawing.Point(140, 28);
- this.nameTextBox.Name = "nameTextBox";
- this.nameTextBox.Size = new System.Drawing.Size(130, 20);
- this.nameTextBox.TabIndex = 2;
- //
- // nameLabel
- //
- this.nameLabel.AutoSize = true;
- this.nameLabel.Location = new System.Drawing.Point(30, 31);
- this.nameLabel.Name = "nameLabel";
- this.nameLabel.Size = new System.Drawing.Size(35, 13);
- this.nameLabel.TabIndex = 1;
- this.nameLabel.Text = "Name";
- //
- // classNameLabel
- //
- this.classNameLabel.AutoSize = true;
- this.classNameLabel.Location = new System.Drawing.Point(137, 7);
- this.classNameLabel.Name = "classNameLabel";
- this.classNameLabel.Size = new System.Drawing.Size(83, 13);
- this.classNameLabel.TabIndex = 0;
- this.classNameLabel.Text = "ComonentName";
- //
- // parityComboBox
- //
- this.parityComboBox.Enabled = false;
- this.parityComboBox.FormattingEnabled = true;
- this.parityComboBox.Location = new System.Drawing.Point(140, 100);
- this.parityComboBox.Name = "parityComboBox";
- this.parityComboBox.Size = new System.Drawing.Size(130, 21);
- this.parityComboBox.TabIndex = 8;
- //
- // stopBitsComboBox
- //
- this.stopBitsComboBox.Enabled = false;
- this.stopBitsComboBox.FormattingEnabled = true;
- this.stopBitsComboBox.Location = new System.Drawing.Point(140, 148);
- this.stopBitsComboBox.Name = "stopBitsComboBox";
- this.stopBitsComboBox.Size = new System.Drawing.Size(130, 21);
- this.stopBitsComboBox.TabIndex = 12;
- //
- // handshakeComboBox
- //
- this.handshakeComboBox.Enabled = false;
- this.handshakeComboBox.FormattingEnabled = true;
- this.handshakeComboBox.Location = new System.Drawing.Point(140, 172);
- this.handshakeComboBox.Name = "handshakeComboBox";
- this.handshakeComboBox.Size = new System.Drawing.Size(130, 21);
- this.handshakeComboBox.TabIndex = 14;
- //
- // AmbientCfgCtrl
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.BackColor = System.Drawing.SystemColors.Control;
- this.Controls.Add(this.handshakeComboBox);
- this.Controls.Add(this.stopBitsComboBox);
- this.Controls.Add(this.parityComboBox);
- this.Controls.Add(this.nameTextBox);
- this.Controls.Add(this.nameLabel);
- this.Controls.Add(this.classNameLabel);
- this.Controls.Add(this.handshakeLabel);
- this.Controls.Add(this.stopBitsLabel);
- this.Controls.Add(this.dataBitsTextBox);
- this.Controls.Add(this.dataBitsLabel);
- this.Controls.Add(this.partityLabel);
- this.Controls.Add(this.baudRateTextBox);
- this.Controls.Add(this.baudRateLabel);
- this.Controls.Add(this.comPortNrTextBox);
- this.Controls.Add(this.label1);
- this.Name = "AmbientCfgCtrl";
- this.Size = new System.Drawing.Size(300, 240);
- this.Load += new System.EventHandler(this.ModbusCfgCtrl_Load);
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- private System.Windows.Forms.TextBox comPortNrTextBox;
- private System.Windows.Forms.Label label1;
- private System.Windows.Forms.Label baudRateLabel;
- private System.Windows.Forms.TextBox baudRateTextBox;
- private System.Windows.Forms.Label partityLabel;
- private System.Windows.Forms.Label dataBitsLabel;
- private System.Windows.Forms.TextBox dataBitsTextBox;
- private System.Windows.Forms.Label stopBitsLabel;
- private System.Windows.Forms.Label handshakeLabel;
- private System.Windows.Forms.TextBox nameTextBox;
- private System.Windows.Forms.Label nameLabel;
- private System.Windows.Forms.Label classNameLabel;
- private System.Windows.Forms.ComboBox parityComboBox;
- private System.Windows.Forms.ComboBox stopBitsComboBox;
- private System.Windows.Forms.ComboBox handshakeComboBox;
-
- }
-}
diff --git a/TBF/Rig/RegisterReaders/SerialStream/SerialStreamCfgCtrl.resx b/TBF/Rig/RegisterReaders/SerialStream/SerialStreamCfgCtrl.resx
deleted file mode 100644
index 1af7de150..000000000
--- a/TBF/Rig/RegisterReaders/SerialStream/SerialStreamCfgCtrl.resx
+++ /dev/null
@@ -1,120 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
\ No newline at end of file
diff --git a/TBF/Rig/Sequences/MainSeq.cs b/TBF/Rig/Sequences/MainSeq.cs
index 97b4ef559..e9f9c3cb6 100644
--- a/TBF/Rig/Sequences/MainSeq.cs
+++ b/TBF/Rig/Sequences/MainSeq.cs
@@ -964,6 +964,12 @@ namespace TBF.Rig.Sequences
log.InfoFormat("Test {0}: Transition({1}, {2}) returned {3}", testInst.Name, (transitionAfter == null ? "null" : transitionAfter.Name), endContext, rsltTransAfter);
}
}
+
+ if (currentTestIx == StateMachine.TestInstances.Length - simultWithEvacuationCount - 1 &&
+ e.Contains(Event.EndSession))
+ {
+ goto save_results;
+ }
}
if (rsltTransBefore == Event.Error || rsltTransBetween == Event.Error|| e.Contains(Event.Error))
diff --git a/TBF/Rig/Sequences/ProcessData.cs b/TBF/Rig/Sequences/ProcessData.cs
index 6119147ab..a93fd6dc9 100644
--- a/TBF/Rig/Sequences/ProcessData.cs
+++ b/TBF/Rig/Sequences/ProcessData.cs
@@ -31,6 +31,13 @@ namespace TBF.Rig.Sequences
public static int LineSize { get { return TBF.Data.LineSize; } }
public static int CompoundWMsCount { get { return TBF.Data.CompoundWMsCount; } }
+ ///
+ /// Procedure related state variables
+ ///
+ // public static TBF.UI.ProcedureInfo SelectedProcedure;
+ public static Common.IOrderInfo OrderInfo;
+ // public static SharedDatabase.WorkflowSummary WorkflowSummary; /// Selected production tracing workflow
+
///
/// State variables to be saved after each completed test
///
diff --git a/TBF/TBF.csproj b/TBF/TBF.csproj
index 51a784f42..2ddf74a68 100644
--- a/TBF/TBF.csproj
+++ b/TBF/TBF.csproj
@@ -1252,12 +1252,6 @@
-
- UserControl
-
-
- SerialStreamCfgCtrl.cs
-
@@ -3188,9 +3182,6 @@
RegisterReaderCfgCtrl.cs
-
- SerialStreamCfgCtrl.cs
-
WMErrorsForm.cs