diff options
| author | Avi Levkovich <avi@twine-s.com> | 2018-07-24 09:15:08 +0300 |
|---|---|---|
| committer | Avi Levkovich <avi@twine-s.com> | 2018-07-24 09:15:08 +0300 |
| commit | 7aaa8cb0c4b3c39c7583af89fcee5ea24e7b60ce (patch) | |
| tree | 3c28da76209e999558e31b549a22cbfad4374e05 /Software/Visual_Studio/Tango.Integration | |
| parent | 330ceb91550c91a42cabc2b536c282dcc4186b6e (diff) | |
| parent | cf743ba7e969541d729365f4a76e59c7c83d7d58 (diff) | |
| download | Tango-7aaa8cb0c4b3c39c7583af89fcee5ea24e7b60ce.tar.gz Tango-7aaa8cb0c4b3c39c7583af89fcee5ea24e7b60ce.zip | |
Merge branch 'master' of https://twinetfs.visualstudio.com/_git/Tango
Diffstat (limited to 'Software/Visual_Studio/Tango.Integration')
7 files changed, 127 insertions, 7 deletions
diff --git a/Software/Visual_Studio/Tango.Integration/Operation/IMachineOperator.cs b/Software/Visual_Studio/Tango.Integration/Operation/IMachineOperator.cs index d17a70b98..e1f0fc803 100644 --- a/Software/Visual_Studio/Tango.Integration/Operation/IMachineOperator.cs +++ b/Software/Visual_Studio/Tango.Integration/Operation/IMachineOperator.cs @@ -30,6 +30,11 @@ namespace Tango.Integration.Operation Machine Machine { get; } /// <summary> + /// Gets or sets the job handling mode. + /// </summary> + JobHandlerModes JobHandlingMode { get; set; } + + /// <summary> /// Gets the current machine status. /// </summary> MachineStatuses Status { get; } diff --git a/Software/Visual_Studio/Tango.Integration/Operation/JobHandler.cs b/Software/Visual_Studio/Tango.Integration/Operation/JobHandler.cs index 6ddc14e3d..e34789fef 100644 --- a/Software/Visual_Studio/Tango.Integration/Operation/JobHandler.cs +++ b/Software/Visual_Studio/Tango.Integration/Operation/JobHandler.cs @@ -21,6 +21,7 @@ namespace Tango.Integration.Operation private String _lastStatusMessage; private int _last_unit; private bool _finalizing; + private JobHandlerModes _mode; #region Events @@ -114,8 +115,10 @@ namespace Tango.Integration.Operation /// Initializes a new instance of the <see cref="JobHandler"/> class. /// </summary> /// <param name="cancelAction">The cancel action.</param> - internal JobHandler(Action cancelAction, Job job, ProcessParametersTable processParameters) : this() + internal JobHandler(Action cancelAction, Job job, ProcessParametersTable processParameters, JobHandlerModes mode) : this() { + _mode = mode; + ProcessParameters = processParameters; Job = job; @@ -137,11 +140,22 @@ namespace Tango.Integration.Operation Status.TotalProgress = Job.LengthIncludingNumberOfUnits + processParameters.DryerBufferLength; Status.FinalizingTotalProgress = processParameters.DryerBufferLength; Status.TotalProgressWithoutFinalization = Job.LengthIncludingNumberOfUnits; - Status.CurrentUnitTotalProgress = Job.Length; Status.Progress = 0; Status.RemainingTime = Status.TotalTime; Status.RemainingProgress = Status.TotalProgress; Status.CurrentUnitSegments = _effectiveSegments.ToList(); + Status.SettingUpTotalProgress = processParameters.DryerBufferLength; + Status.TotalProgressMinusSettingUp = Job.LengthIncludingNumberOfUnits; + Status.IsSettingUp = true; + + if (mode == JobHandlerModes.Finalization) + { + Status.CurrentUnitTotalProgress = Job.Length; + } + else + { + Status.CurrentUnitTotalProgress = Status.SettingUpTotalProgress; + } if (Job.EnableInterSegment && Job.NumberOfUnits > 1) { @@ -222,7 +236,21 @@ namespace Tango.Integration.Operation Status.RemainingTime = Status.TotalTime - Job.TranslateProgressToTime(Status.Progress, ProcessParameters); Status.RemainingProgress = Status.TotalProgress - Status.Progress; - if (s.Progress < Job.LengthIncludingNumberOfUnits) + if (Status.SettingUpProgress < Status.SettingUpTotalProgress) + { + Status.SettingUpProgress += delta; + } + else + { + if (Status.IsSettingUp) + { + Status.IsSettingUp = false; + } + + Status.ProgressMinusSettingUp += delta; + } + + if (s.Progress < Job.LengthIncludingNumberOfUnits || _mode == JobHandlerModes.SettingUp) { Status.ProgressWithoutFinalization += delta; @@ -239,7 +267,18 @@ namespace Tango.Integration.Operation } Status.CurrentUnitTotalProgress = Status.RemainingUnits > 1 && Job.EnableInterSegment ? Job.Length + (Job.InterSegmentLength) : Job.Length; - Status.CurrentUnitProgress += delta; + + if (_mode == JobHandlerModes.Finalization) + { + Status.CurrentUnitProgress += delta; + } + else + { + if (!Status.IsSettingUp) + { + Status.CurrentUnitProgress += delta; + } + } if (Status.CurrentUnitProgress >= Status.CurrentUnitTotalProgress) { diff --git a/Software/Visual_Studio/Tango.Integration/Operation/JobHandlerModes.cs b/Software/Visual_Studio/Tango.Integration/Operation/JobHandlerModes.cs new file mode 100644 index 000000000..906bf5fcb --- /dev/null +++ b/Software/Visual_Studio/Tango.Integration/Operation/JobHandlerModes.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Tango.Integration.Operation +{ + public enum JobHandlerModes + { + Finalization, + SettingUp, + } +} diff --git a/Software/Visual_Studio/Tango.Integration/Operation/MachineOperator.cs b/Software/Visual_Studio/Tango.Integration/Operation/MachineOperator.cs index bdfa8a218..88c753846 100644 --- a/Software/Visual_Studio/Tango.Integration/Operation/MachineOperator.cs +++ b/Software/Visual_Studio/Tango.Integration/Operation/MachineOperator.cs @@ -144,6 +144,11 @@ namespace Tango.Integration.Operation #region Properties + /// <summary> + /// Gets or sets the job handling mode. + /// </summary> + public JobHandlerModes JobHandlingMode { get; set; } + private MachineStatuses _status; /// <summary> /// Gets the current machine status. @@ -778,7 +783,7 @@ namespace Tango.Integration.Operation { LogManager.Log(ex, "Failed to cancel job."); } - }, originalJob, processParameters); + }, originalJob, processParameters, JobHandlingMode); handler.StatusChanged += (x, s) => { diff --git a/Software/Visual_Studio/Tango.Integration/Operation/RunningJobStatus.cs b/Software/Visual_Studio/Tango.Integration/Operation/RunningJobStatus.cs index fa3b8bc07..8d4a79291 100644 --- a/Software/Visual_Studio/Tango.Integration/Operation/RunningJobStatus.cs +++ b/Software/Visual_Studio/Tango.Integration/Operation/RunningJobStatus.cs @@ -83,6 +83,46 @@ namespace Tango.Integration.Operation set { _progressWithoutFinalization = value; RaisePropertyChangedAuto(); } } + private double _settingUpProgress; + /// <summary> + /// Gets or sets the setting up progress. + /// </summary> + public double SettingUpProgress + { + get { return _settingUpProgress; } + set { _settingUpProgress = value; RaisePropertyChangedAuto(); } + } + + private double _settingUpTotalProgress; + /// <summary> + /// Gets or sets the setting up total progress. + /// </summary> + public double SettingUpTotalProgress + { + get { return _settingUpTotalProgress; } + set { _settingUpTotalProgress = value; RaisePropertyChangedAuto(); } + } + + private double _progressMinusSettingUp; + /// <summary> + /// Gets or sets the progress minus setting up. + /// </summary> + public double ProgressMinusSettingUp + { + get { return _progressMinusSettingUp; } + set { _progressMinusSettingUp = value; RaisePropertyChangedAuto(); } + } + + private double _totalProgressMinusSettingUp; + /// <summary> + /// Gets or sets the total progress minus setting up. + /// </summary> + public double TotalProgressMinusSettingUp + { + get { return _totalProgressMinusSettingUp; } + set { _totalProgressMinusSettingUp = value; RaisePropertyChangedAuto(); } + } + private double _finalizingTotalProgress; /// <summary> /// Gets or sets the finalizing total progress. @@ -183,6 +223,16 @@ namespace Tango.Integration.Operation set { _isFinalizing = value; RaisePropertyChangedAuto(); } } + private bool _isSettingUp; + /// <summary> + /// Gets or sets a value indicating whether the job progress is withing the range of zero to the dryer buffer length. + /// </summary> + public bool IsSettingUp + { + get { return _isSettingUp; } + set { _isSettingUp = value; RaisePropertyChangedAuto(); } + } + private String _message; /// <summary> /// Gets or sets the message. diff --git a/Software/Visual_Studio/Tango.Integration/Properties/AssemblyInfo.cs b/Software/Visual_Studio/Tango.Integration/Properties/AssemblyInfo.cs index 161c5a04e..c4dbacc0a 100644 --- a/Software/Visual_Studio/Tango.Integration/Properties/AssemblyInfo.cs +++ b/Software/Visual_Studio/Tango.Integration/Properties/AssemblyInfo.cs @@ -3,4 +3,5 @@ using System.Runtime.CompilerServices; using System.Runtime.InteropServices; [assembly: AssemblyTitle("Tango - Logging Library")] +[assembly: AssemblyVersion("2.0.11.1721")] [assembly: ComVisible(false)]
\ No newline at end of file diff --git a/Software/Visual_Studio/Tango.Integration/Tango.Integration.csproj b/Software/Visual_Studio/Tango.Integration/Tango.Integration.csproj index 7482db8c0..3ec3eaf40 100644 --- a/Software/Visual_Studio/Tango.Integration/Tango.Integration.csproj +++ b/Software/Visual_Studio/Tango.Integration/Tango.Integration.csproj @@ -73,8 +73,8 @@ <Reference Include="WindowsBase" /> </ItemGroup> <ItemGroup> - <Compile Include="..\Versioning\Core.cs"> - <Link>Core.cs</Link> + <Compile Include="..\Versioning\GlobalVersionInfo.cs"> + <Link>GlobalVersionInfo.cs</Link> </Compile> <Compile Include="Diagnostics\DiagnosticsFileEvent.cs" /> <Compile Include="Diagnostics\DiagnosticsFilePlayer.cs" /> @@ -87,6 +87,7 @@ <Compile Include="Operation\EmbeddedLogItem.cs" /> <Compile Include="Operation\IMachineEventsStateProvider.cs" /> <Compile Include="Operation\IMachineOperator.cs" /> + <Compile Include="Operation\JobHandlerModes.cs" /> <Compile Include="Operation\PrintingFailedEventArgs.cs" /> <Compile Include="Operation\MachineOperator.cs" /> <Compile Include="Operation\JobHandler.cs" /> @@ -145,4 +146,9 @@ </ItemGroup> <ItemGroup /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> + <ProjectExtensions> + <VisualStudio> + <UserProperties BuildVersion_StartDate="2000/1/1" BuildVersion_UseGlobalSettings="False" BuildVersion_BuildVersioningStyle="None.None.Increment.TimeStamp" BuildVersion_UpdateAssemblyVersion="True" BuildVersion_AssemblyInfoFilename="Properties\AssemblyInfo.cs" /> + </VisualStudio> + </ProjectExtensions> </Project>
\ No newline at end of file |
