CUST: - new data types uint48_t, uint72_t,..

This commit is contained in:
Thomas Wiedebusch 2025-06-05 17:20:15 +02:00
parent 0d195026e1
commit bc667ae07b
8 changed files with 241 additions and 26 deletions

View File

@ -155,7 +155,7 @@
</site>
<site name="MeterProcessState" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\Users\SZLATEV\source\repos\laa_production\Common\Service\MeterProcessState" />
<virtualDirectory path="/" physicalPath="D:\Projekte\SENSUS_GitLab\LAA_PRODUCTION\Common\Service\MeterProcessState" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:56011:localhost" />

View File

@ -30,7 +30,7 @@
<s:Boolean x:Key="/Default/Environment/ExcludedFiles/FilesAndFoldersToSkip/=1057AD21_002DBA22_002D4CAB_002DB3FE_002D88C5C9980E6A_002Fd_003AScripts_002Ff_003Ajquery_002D1_002E10_002E2_002Eintellisense_002Ejs/@EntryIndexedValue">True</s:Boolean>
<s:String x:Key="/Default/Environment/Hierarchy/Build/SolBuilderDuo/UseMsbuildSolutionBuilder/@EntryValue">NewVersion</s:String>
<s:Boolean x:Key="/Default/Environment/Hierarchy/EntityFrameworkOptions/IsAlreadyNotifiedAboutEntityFramework/@EntryValue">True</s:Boolean>
<s:String x:Key="/Default/Environment/Highlighting/HighlightingSourceSnapshotLocation/@EntryValue">C:\Users\Thomas Müller\AppData\Local\Temp\JetBrains\ReSharperPlatformVs17\vAny_ab6433f6\CoverageData\_Common.-1885154465\Snapshot\snapshot.utdcvr</s:String>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EPredefinedNamingRulesToUserRulesUpgrade/@EntryIndexedValue">True</s:Boolean>
<s:String x:Key="/Default/Environment/UnitTesting/UnitTestSessionStore/Sessions/=d5d84997_002D9b95_002D490a_002Da9a3_002Da461c5e0d514/@EntryIndexedValue">&lt;SessionState ContinuousTestingMode="0" IsActive="True" Name="All tests from Solution" xmlns="urn:schemas-jetbrains-com:jetbrains-ut-session"&gt;&#xD;

View File

@ -0,0 +1,63 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=UnusedMember_002ELocal/@EntryIndexedValue">DO_NOT_SHOW</s:String>
<s:Int64 x:Key="/Default/CodeStyle/Naming/CSharpAutoNaming/AutoNamingCompletedVersion/@EntryValue">2</s:Int64>
<s:Boolean x:Key="/Default/CodeStyle/Naming/CSharpAutoNaming/IsNamingAutoDetectionCompleted/@EntryValue">True</s:Boolean>
<s:Boolean x:Key="/Default/CodeStyle/Naming/CSharpAutoNaming/IsNotificationDisabled/@EntryValue">True</s:Boolean>
<s:Boolean x:Key="/Default/CodeStyle/Naming/CSharpNaming/ApplyAutoDetectedRules/@EntryValue">True</s:Boolean>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=EnumMember/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=Interfaces/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="I" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=Locals/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=Method/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=Parameters/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=PrivateConstants/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=PrivateStaticReadonly/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb"&gt;&lt;ExtraRule Prefix="s_" Suffix="" Style="AaBb" /&gt;&lt;/Policy&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=Property/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=PublicFields/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=StaticReadonly/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=TypesAndNamespaces/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/PredefinedNamingRules/=EnumMember/@EntryIndexedValue">&lt;Policy Inspect="False" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/PredefinedNamingRules/=Property/@EntryIndexedValue">&lt;Policy Inspect="False" Prefix="" Suffix="" Style="Aa_bb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/UserRules/=8b8504e3_002Df0be_002D4c14_002D9103_002Dc732f2bddc15/@EntryIndexedValue">&lt;Policy&gt;&lt;Descriptor Staticness="Any" AccessRightKinds="Any" Description="Enum members"&gt;&lt;ElementKinds&gt;&lt;Kind Name="ENUM_MEMBER" /&gt;&lt;/ElementKinds&gt;&lt;/Descriptor&gt;&lt;Policy Inspect="False" WarnAboutPrefixesAndSuffixes="False" Prefix="" Suffix="" Style="AaBb" /&gt;&lt;/Policy&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/UserRules/=c85a0503_002D4de2_002D40f1_002D9cd6_002Da4054c05d384/@EntryIndexedValue">&lt;Policy&gt;&lt;Descriptor Staticness="Any" AccessRightKinds="Any" Description="Properties"&gt;&lt;ElementKinds&gt;&lt;Kind Name="PROPERTY" /&gt;&lt;/ElementKinds&gt;&lt;/Descriptor&gt;&lt;Policy Inspect="False" WarnAboutPrefixesAndSuffixes="False" Prefix="" Suffix="" Style="Aa_bb" /&gt;&lt;/Policy&gt;</s:String>
<s:String x:Key="/Default/Environment/AssemblyExplorer/XmlDocument/@EntryValue">&lt;AssemblyExplorer&gt;&#xD;
&lt;Assembly Path="D:\Projekte\SENSUS_tfs_workspaces\WorkBenchV2\Main\Common\Ui\IrdaFunctionalTestApp\bin\Debug\Xylem.Common.Hardware.WaterMeter.Genesis.DataPackages.dll" /&gt;&#xD;
&lt;Assembly Path="D:\Projekte\SENSUS_GitLab\laa_production\Common\Hardware\WaterMeter\Genesis\GenesisPwd\bin\Debug\Newtonsoft.Json.dll" /&gt;&#xD;
&lt;/AssemblyExplorer&gt;</s:String>
<s:Boolean x:Key="/Default/Environment/ExcludedFiles/FilesAndFoldersToSkip/=1057AD21_002DBA22_002D4CAB_002DB3FE_002D88C5C9980E6A_002Fd_003AScripts_002Ff_003Ajquery_002D1_002E10_002E2_002Eintellisense_002Ejs/@EntryIndexedValue">True</s:Boolean>
<s:String x:Key="/Default/Environment/Hierarchy/Build/SolBuilderDuo/UseMsbuildSolutionBuilder/@EntryValue">NewVersion</s:String>
<s:Boolean x:Key="/Default/Environment/Hierarchy/EntityFrameworkOptions/IsAlreadyNotifiedAboutEntityFramework/@EntryValue">True</s:Boolean>
<<<<<<< HEAD
=======
<s:String x:Key="/Default/Environment/Highlighting/HighlightingSourceSnapshotLocation/@EntryValue">C:\Users\Thomas Müller\AppData\Local\Temp\JetBrains\ReSharperPlatformVs17\vAny_ab6433f6\CoverageData\_Common.-1885154465\Snapshot\snapshot.utdcvr</s:String>
>>>>>>> origin/main
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EPredefinedNamingRulesToUserRulesUpgrade/@EntryIndexedValue">True</s:Boolean>
<s:String x:Key="/Default/Environment/UnitTesting/UnitTestSessionStore/Sessions/=d5d84997_002D9b95_002D490a_002Da9a3_002Da461c5e0d514/@EntryIndexedValue">&lt;SessionState ContinuousTestingMode="0" IsActive="True" Name="All tests from Solution" xmlns="urn:schemas-jetbrains-com:jetbrains-ut-session"&gt;&#xD;
&lt;Solution /&gt;&#xD;
&lt;/SessionState&gt;</s:String>
<s:String x:Key="/Default/Profiling/Configurations/=0/@EntryIndexedValue">&lt;data&gt;&lt;HostParameters type="LocalHostParameters" /&gt;&lt;Argument type="StandaloneArgument"&gt;&lt;Arguments IsNull="False"&gt;&lt;/Arguments&gt;&lt;FileName&gt;D:\Workspace\WorkBenchV2\Main\ZeroFlowTool\bin\Debug\GenesisDisplayTool.exe&lt;/FileName&gt;&lt;WorkingDirectory&gt;D:\Workspace\WorkBenchV2\Main\ZeroFlowTool\bin\Debug&lt;/WorkingDirectory&gt;&lt;Scope&gt;&lt;ProcessFilters /&gt;&lt;/Scope&gt;&lt;/Argument&gt;&lt;Info type="PerformanceInfo"&gt;&lt;MeasureType&gt;Sampling&lt;/MeasureType&gt;&lt;MeterKind&gt;Rdtsc&lt;/MeterKind&gt;&lt;InjectInfo&gt;&lt;SymbolSearch&gt;&lt;SearchPaths /&gt;&lt;/SymbolSearch&gt;&lt;Scope&gt;&lt;PatternFilters /&gt;&lt;DenyAttributeFilters /&gt;&lt;/Scope&gt;&lt;/InjectInfo&gt;&lt;/Info&gt;&lt;CoreOptions type="CoreOptions"&gt;&lt;CoreTempPath IsNull="False"&gt;&lt;/CoreTempPath&gt;&lt;RemoteEndPoint IsNull="False"&gt;&lt;/RemoteEndPoint&gt;&lt;AdditionalEnvironmentVariables /&gt;&lt;/CoreOptions&gt;&lt;HostOptions type="HostOptions"&gt;&lt;HostTempPath IsNull="False"&gt;&lt;/HostTempPath&gt;&lt;/HostOptions&gt;&lt;/data&gt;</s:String>
<s:String x:Key="/Default/Profiling/Configurations/=1/@EntryIndexedValue">&lt;data&gt;&lt;HostParameters type="LocalHostParameters" /&gt;&lt;Argument type="StandaloneArgument"&gt;&lt;Arguments IsNull="False"&gt;&lt;/Arguments&gt;&lt;FileName IsNull="False"&gt;&lt;/FileName&gt;&lt;WorkingDirectory IsNull="False"&gt;&lt;/WorkingDirectory&gt;&lt;Scope&gt;&lt;ProcessFilters /&gt;&lt;/Scope&gt;&lt;/Argument&gt;&lt;Info type="PerformanceInfo"&gt;&lt;MeasureType&gt;TracingInject&lt;/MeasureType&gt;&lt;MeterKind&gt;Rdtsc&lt;/MeterKind&gt;&lt;InjectInfo&gt;&lt;SymbolSearch&gt;&lt;SearchPaths /&gt;&lt;/SymbolSearch&gt;&lt;Scope&gt;&lt;PatternFilters&gt;&lt;Item /&gt;&lt;/PatternFilters&gt;&lt;DenyAttributeFilters /&gt;&lt;/Scope&gt;&lt;/InjectInfo&gt;&lt;/Info&gt;&lt;CoreOptions type="CoreOptions"&gt;&lt;CoreTempPath IsNull="False"&gt;&lt;/CoreTempPath&gt;&lt;RemoteEndPoint IsNull="False"&gt;&lt;/RemoteEndPoint&gt;&lt;AdditionalEnvironmentVariables /&gt;&lt;/CoreOptions&gt;&lt;HostOptions type="HostOptions"&gt;&lt;HostTempPath IsNull="False"&gt;&lt;/HostTempPath&gt;&lt;/HostOptions&gt;&lt;/data&gt;</s:String>
<s:String x:Key="/Default/Profiling/Configurations/=2/@EntryIndexedValue">&lt;data&gt;&lt;HostParameters type="LocalHostParameters" /&gt;&lt;Argument type="StandaloneArgument"&gt;&lt;Arguments IsNull="False"&gt;&lt;/Arguments&gt;&lt;FileName IsNull="False"&gt;&lt;/FileName&gt;&lt;WorkingDirectory IsNull="False"&gt;&lt;/WorkingDirectory&gt;&lt;Scope&gt;&lt;ProcessFilters /&gt;&lt;/Scope&gt;&lt;/Argument&gt;&lt;Info type="TimelineInfo" /&gt;&lt;CoreOptions type="CoreOptions"&gt;&lt;CoreTempPath IsNull="False"&gt;&lt;/CoreTempPath&gt;&lt;RemoteEndPoint IsNull="False"&gt;&lt;/RemoteEndPoint&gt;&lt;AdditionalEnvironmentVariables /&gt;&lt;/CoreOptions&gt;&lt;HostOptions type="HostOptions"&gt;&lt;HostTempPath IsNull="False"&gt;&lt;/HostTempPath&gt;&lt;ReprofileDisableReason&gt;LaunchedByReSharperUnitTestRunner&lt;/ReprofileDisableReason&gt;&lt;/HostOptions&gt;&lt;/data&gt;</s:String>
<s:Boolean x:Key="/Default/UserDictionary/Words/=ZEROFLOW/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/VsIntegrationViewOptions/ShowCharts/@EntryValue">False</s:Boolean>
<s:Boolean x:Key="/Default/VsIntegrationViewOptions/ShowPlainList/@EntryValue">False</s:Boolean>
</wpf:ResourceDictionary>

View File

@ -0,0 +1,63 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=UnusedMember_002ELocal/@EntryIndexedValue">DO_NOT_SHOW</s:String>
<s:Int64 x:Key="/Default/CodeStyle/Naming/CSharpAutoNaming/AutoNamingCompletedVersion/@EntryValue">2</s:Int64>
<s:Boolean x:Key="/Default/CodeStyle/Naming/CSharpAutoNaming/IsNamingAutoDetectionCompleted/@EntryValue">True</s:Boolean>
<s:Boolean x:Key="/Default/CodeStyle/Naming/CSharpAutoNaming/IsNotificationDisabled/@EntryValue">True</s:Boolean>
<s:Boolean x:Key="/Default/CodeStyle/Naming/CSharpNaming/ApplyAutoDetectedRules/@EntryValue">True</s:Boolean>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=EnumMember/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=Interfaces/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="I" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=Locals/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=Method/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=Parameters/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=PrivateConstants/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=PrivateStaticReadonly/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb"&gt;&lt;ExtraRule Prefix="s_" Suffix="" Style="AaBb" /&gt;&lt;/Policy&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=Property/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=PublicFields/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=StaticReadonly/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/AutoDetectedNamingRules/=TypesAndNamespaces/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/PredefinedNamingRules/=EnumMember/@EntryIndexedValue">&lt;Policy Inspect="False" Prefix="" Suffix="" Style="AaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/PredefinedNamingRules/=Property/@EntryIndexedValue">&lt;Policy Inspect="False" Prefix="" Suffix="" Style="Aa_bb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/UserRules/=8b8504e3_002Df0be_002D4c14_002D9103_002Dc732f2bddc15/@EntryIndexedValue">&lt;Policy&gt;&lt;Descriptor Staticness="Any" AccessRightKinds="Any" Description="Enum members"&gt;&lt;ElementKinds&gt;&lt;Kind Name="ENUM_MEMBER" /&gt;&lt;/ElementKinds&gt;&lt;/Descriptor&gt;&lt;Policy Inspect="False" WarnAboutPrefixesAndSuffixes="False" Prefix="" Suffix="" Style="AaBb" /&gt;&lt;/Policy&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/UserRules/=c85a0503_002D4de2_002D40f1_002D9cd6_002Da4054c05d384/@EntryIndexedValue">&lt;Policy&gt;&lt;Descriptor Staticness="Any" AccessRightKinds="Any" Description="Properties"&gt;&lt;ElementKinds&gt;&lt;Kind Name="PROPERTY" /&gt;&lt;/ElementKinds&gt;&lt;/Descriptor&gt;&lt;Policy Inspect="False" WarnAboutPrefixesAndSuffixes="False" Prefix="" Suffix="" Style="Aa_bb" /&gt;&lt;/Policy&gt;</s:String>
<s:String x:Key="/Default/Environment/AssemblyExplorer/XmlDocument/@EntryValue">&lt;AssemblyExplorer&gt;&#xD;
&lt;Assembly Path="D:\Projekte\SENSUS_tfs_workspaces\WorkBenchV2\Main\Common\Ui\IrdaFunctionalTestApp\bin\Debug\Xylem.Common.Hardware.WaterMeter.Genesis.DataPackages.dll" /&gt;&#xD;
&lt;Assembly Path="D:\Projekte\SENSUS_GitLab\laa_production\Common\Hardware\WaterMeter\Genesis\GenesisPwd\bin\Debug\Newtonsoft.Json.dll" /&gt;&#xD;
&lt;/AssemblyExplorer&gt;</s:String>
<s:Boolean x:Key="/Default/Environment/ExcludedFiles/FilesAndFoldersToSkip/=1057AD21_002DBA22_002D4CAB_002DB3FE_002D88C5C9980E6A_002Fd_003AScripts_002Ff_003Ajquery_002D1_002E10_002E2_002Eintellisense_002Ejs/@EntryIndexedValue">True</s:Boolean>
<s:String x:Key="/Default/Environment/Hierarchy/Build/SolBuilderDuo/UseMsbuildSolutionBuilder/@EntryValue">NewVersion</s:String>
<s:Boolean x:Key="/Default/Environment/Hierarchy/EntityFrameworkOptions/IsAlreadyNotifiedAboutEntityFramework/@EntryValue">True</s:Boolean>
<<<<<<< HEAD
=======
<s:String x:Key="/Default/Environment/Highlighting/HighlightingSourceSnapshotLocation/@EntryValue">C:\Users\Thomas Müller\AppData\Local\Temp\JetBrains\ReSharperPlatformVs17\vAny_ab6433f6\CoverageData\_Common.-1885154465\Snapshot\snapshot.utdcvr</s:String>
>>>>>>> origin/main
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EPredefinedNamingRulesToUserRulesUpgrade/@EntryIndexedValue">True</s:Boolean>
<s:String x:Key="/Default/Environment/UnitTesting/UnitTestSessionStore/Sessions/=d5d84997_002D9b95_002D490a_002Da9a3_002Da461c5e0d514/@EntryIndexedValue">&lt;SessionState ContinuousTestingMode="0" IsActive="True" Name="All tests from Solution" xmlns="urn:schemas-jetbrains-com:jetbrains-ut-session"&gt;&#xD;
&lt;Solution /&gt;&#xD;
&lt;/SessionState&gt;</s:String>
<s:String x:Key="/Default/Profiling/Configurations/=0/@EntryIndexedValue">&lt;data&gt;&lt;HostParameters type="LocalHostParameters" /&gt;&lt;Argument type="StandaloneArgument"&gt;&lt;Arguments IsNull="False"&gt;&lt;/Arguments&gt;&lt;FileName&gt;D:\Workspace\WorkBenchV2\Main\ZeroFlowTool\bin\Debug\GenesisDisplayTool.exe&lt;/FileName&gt;&lt;WorkingDirectory&gt;D:\Workspace\WorkBenchV2\Main\ZeroFlowTool\bin\Debug&lt;/WorkingDirectory&gt;&lt;Scope&gt;&lt;ProcessFilters /&gt;&lt;/Scope&gt;&lt;/Argument&gt;&lt;Info type="PerformanceInfo"&gt;&lt;MeasureType&gt;Sampling&lt;/MeasureType&gt;&lt;MeterKind&gt;Rdtsc&lt;/MeterKind&gt;&lt;InjectInfo&gt;&lt;SymbolSearch&gt;&lt;SearchPaths /&gt;&lt;/SymbolSearch&gt;&lt;Scope&gt;&lt;PatternFilters /&gt;&lt;DenyAttributeFilters /&gt;&lt;/Scope&gt;&lt;/InjectInfo&gt;&lt;/Info&gt;&lt;CoreOptions type="CoreOptions"&gt;&lt;CoreTempPath IsNull="False"&gt;&lt;/CoreTempPath&gt;&lt;RemoteEndPoint IsNull="False"&gt;&lt;/RemoteEndPoint&gt;&lt;AdditionalEnvironmentVariables /&gt;&lt;/CoreOptions&gt;&lt;HostOptions type="HostOptions"&gt;&lt;HostTempPath IsNull="False"&gt;&lt;/HostTempPath&gt;&lt;/HostOptions&gt;&lt;/data&gt;</s:String>
<s:String x:Key="/Default/Profiling/Configurations/=1/@EntryIndexedValue">&lt;data&gt;&lt;HostParameters type="LocalHostParameters" /&gt;&lt;Argument type="StandaloneArgument"&gt;&lt;Arguments IsNull="False"&gt;&lt;/Arguments&gt;&lt;FileName IsNull="False"&gt;&lt;/FileName&gt;&lt;WorkingDirectory IsNull="False"&gt;&lt;/WorkingDirectory&gt;&lt;Scope&gt;&lt;ProcessFilters /&gt;&lt;/Scope&gt;&lt;/Argument&gt;&lt;Info type="PerformanceInfo"&gt;&lt;MeasureType&gt;TracingInject&lt;/MeasureType&gt;&lt;MeterKind&gt;Rdtsc&lt;/MeterKind&gt;&lt;InjectInfo&gt;&lt;SymbolSearch&gt;&lt;SearchPaths /&gt;&lt;/SymbolSearch&gt;&lt;Scope&gt;&lt;PatternFilters&gt;&lt;Item /&gt;&lt;/PatternFilters&gt;&lt;DenyAttributeFilters /&gt;&lt;/Scope&gt;&lt;/InjectInfo&gt;&lt;/Info&gt;&lt;CoreOptions type="CoreOptions"&gt;&lt;CoreTempPath IsNull="False"&gt;&lt;/CoreTempPath&gt;&lt;RemoteEndPoint IsNull="False"&gt;&lt;/RemoteEndPoint&gt;&lt;AdditionalEnvironmentVariables /&gt;&lt;/CoreOptions&gt;&lt;HostOptions type="HostOptions"&gt;&lt;HostTempPath IsNull="False"&gt;&lt;/HostTempPath&gt;&lt;/HostOptions&gt;&lt;/data&gt;</s:String>
<s:String x:Key="/Default/Profiling/Configurations/=2/@EntryIndexedValue">&lt;data&gt;&lt;HostParameters type="LocalHostParameters" /&gt;&lt;Argument type="StandaloneArgument"&gt;&lt;Arguments IsNull="False"&gt;&lt;/Arguments&gt;&lt;FileName IsNull="False"&gt;&lt;/FileName&gt;&lt;WorkingDirectory IsNull="False"&gt;&lt;/WorkingDirectory&gt;&lt;Scope&gt;&lt;ProcessFilters /&gt;&lt;/Scope&gt;&lt;/Argument&gt;&lt;Info type="TimelineInfo" /&gt;&lt;CoreOptions type="CoreOptions"&gt;&lt;CoreTempPath IsNull="False"&gt;&lt;/CoreTempPath&gt;&lt;RemoteEndPoint IsNull="False"&gt;&lt;/RemoteEndPoint&gt;&lt;AdditionalEnvironmentVariables /&gt;&lt;/CoreOptions&gt;&lt;HostOptions type="HostOptions"&gt;&lt;HostTempPath IsNull="False"&gt;&lt;/HostTempPath&gt;&lt;ReprofileDisableReason&gt;LaunchedByReSharperUnitTestRunner&lt;/ReprofileDisableReason&gt;&lt;/HostOptions&gt;&lt;/data&gt;</s:String>
<s:Boolean x:Key="/Default/UserDictionary/Words/=ZEROFLOW/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/VsIntegrationViewOptions/ShowCharts/@EntryValue">False</s:Boolean>
<s:Boolean x:Key="/Default/VsIntegrationViewOptions/ShowPlainList/@EntryValue">False</s:Boolean>
</wpf:ResourceDictionary>

View File

@ -1 +1 @@
89102b0142e574de38a9f47d370f3334e5e6c268
8cb55c312de586b683d72cf58c13e2801d10e14b767777d98338d3e1473a1213

View File

@ -59,6 +59,9 @@ namespace Xylem.Common.Utils.ProcessExec
/// <remarks date="2025-Apr-06" author="Thomas Wiedebusch">
/// - CancellationToken.
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - Set StatusReturn.Okay if preExecFn is null.
/// </remarks>
public void NewProcess(VoidCallbackFunction initFn, StatusReturnCallbackFunction preExecFn,
StatusReturnCallbackFunction execFn, ExitStateCallbackFunction finalFn,
CultureInfo cultureInfo, Object[] exitObjects, CancellationToken cancellationToken)
@ -76,7 +79,10 @@ namespace Xylem.Common.Utils.ProcessExec
Thread.CurrentThread.CurrentUICulture = cultureInfo;
Thread.CurrentThread.CurrentCulture = cultureInfo;
if (preExecFn != null && !cancellationToken.IsCancellationRequested)
if (preExecFn == null)
success = StatusReturn.Okay;
else if (!cancellationToken.IsCancellationRequested)
success = (StatusReturn)preExecFn.DynamicInvoke();
if (execFn == null || success != StatusReturn.Okay || cancellationToken.IsCancellationRequested)

View File

@ -1,4 +1,6 @@
using System;
using System.Runtime.CompilerServices;
using System.Threading;
using System.Windows.Forms;
namespace Xylem.ServiceFwUpdate.Ui.FwUpdateLoader
@ -6,12 +8,19 @@ namespace Xylem.ServiceFwUpdate.Ui.FwUpdateLoader
[Serializable]
static class Program
{
private static Mutex _mutex;
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
var assemblyName = System.Reflection.Assembly.GetExecutingAssembly().GetName().FullName;
_mutex = new Mutex(true, assemblyName, out var isNotRunning);
if (!isNotRunning)
return;
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new FrmFwUpdateLoader());

View File

@ -72,7 +72,6 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
private DateTimeOffset _startTime;
private Boolean _resetTimeMeasurement;
private Boolean _stopRequest;
private readonly ILogger _logger;
@ -244,6 +243,10 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
private readonly System.Threading.Timer _tmrProgressUpdate;
private const Int32 TimerInterval_ms = 200;
// cancellation token
private CancellationTokenSource _cancellationTokenSource;
private CancellationToken _cancellationToken;
#endregion --------------------------------------- Variables --------------------------------------------------
#region ------------------------------------------ State Machine ----------------------------------------------
@ -342,10 +345,16 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// <remarks date="2024-May-16" author="Thomas Wiedebusch">
/// - Force stop on stop request.
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private void FwUpdateSwStateMachine()
{
while (!_processToken.IsCancellationRequested)
{
if (_cancellationTokenSource.IsCancellationRequested)
_processState = ProcessState.Stop;
if (_lastProcessState == _processState)
{
Thread.Sleep(1);
@ -356,8 +365,7 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
try
{
_lastProcessState = _processState;
if (_stopRequest)
_processState = ProcessState.Stop;
switch (_processState)
{
case ProcessState.Init:
@ -750,6 +758,9 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// <remarks date="2024-May-13" author="Thomas Wiedebusch">
/// - Culture info fixed to English.
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
public FrmServiceFwUpdateSw()
{
_logger = NLogHelper.CreateOrGetLogger("ServiceFwUpdateSw");
@ -765,6 +776,9 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
InitializeComponent();
_cultureInfo = Thread.CurrentThread.CurrentCulture;
_cancellationTokenSource = new CancellationTokenSource();
_cancellationToken = _cancellationTokenSource.Token;
radioBtnEnglishLanguage.Checked = true;
if (_cultureInfo.IetfLanguageTag == "de-DE")
{
@ -806,8 +820,21 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// <remarks date="2022-Mai-10" author="Thomas Wiedebusch">
/// - Release display removed.
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private void DisposeGenesis()
{
//// Wait for cancellation
//if (_cancellationToken.IsCancellationRequested)
//{
// Thread.Sleep(500);
// // Reset the cancellation request
// _cancellationTokenSource?.Dispose();
// _cancellationTokenSource = new CancellationTokenSource();
// _cancellationToken = _cancellationTokenSource.Token;
//}
_currentGenesis?.Logout();
// Batch removal disposes the meter!
_meterBatch?.RemoveAllMeters();
@ -931,8 +958,12 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// <remarks date="2022-Mai-10" author="Thomas Wiedebusch">
/// - Release display removed.
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private void FrmFwUpdate_FormClosing(Object sender, FormClosingEventArgs e)
{
_cancellationTokenSource?.Dispose();
_frmHistory?.Close();
_processToken?.Cancel();
@ -1840,7 +1871,6 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
{
// restart for new device
_afterUpdateConnect = false;
_stopRequest = false;
if (_resetTimeMeasurement)
{
_startTime = DateTimeOffset.UtcNow;
@ -1880,10 +1910,12 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// <remarks date="2020-Nov-27" author="Thomas Wiedebusch">
/// - Initial
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private void BtnStop_Click(Object sender, EventArgs e)
{
_processState = ProcessState.Stop;
_stopRequest = true;
_cancellationTokenSource?.Cancel();
}
/// <summary>
@ -1903,7 +1935,6 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
_registerRestorer == null)
return;
_stopRequest = false;
_startTime = DateTimeOffset.UtcNow;
_resetTimeMeasurement = false;
_processState = ProcessState.ReadInfoEraseRestoreFiles;
@ -2507,10 +2538,13 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// <remarks date="2023-Nov-15" author="Thomas Wiedebusch">
/// - Initial.
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private ProcessState GetNextProcessState(ProcessState invokerProcessState,
IReadOnlyList<ProcessState> processSateSequence)
{
if (_stopRequest)
if (_cancellationToken.IsCancellationRequested)
return ProcessState.Stop;
// The last entry is an end of list marker
for (var c = 0; c < processSateSequence.Count - 1; c++)
@ -2957,7 +2991,7 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// - If LUT restore generates an error all processes have to be stopped as the meter is NOT functional.
/// </remarks>
/// <remarks date="2024-Apr-24" author="Thomas Wiedebusch">
/// - COmmunication error on app detection.
/// - Communication error on app detection.
/// </remarks>
private void ErrorProcesses()
{
@ -3181,6 +3215,12 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// - Enable [Connect] and [Port Scan],
/// - _processState to idle.
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - Removed registerRestorer.StopRegisterAccess.
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private void StopProcesses()
{
InfoProcessFailed(null, Resources.StrUserStop);
@ -3192,10 +3232,19 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
_serialPortScanner.StopPortScan = true;
if (_meterFwUpdate != null)
_meterFwUpdate.StopUpdateProcess = true;
if (_registerRestorer != null)
_registerRestorer.StopRegisterAccess = true;
if (_meterFile != null)
_meterFile.StopProcess = true;
// Wait for cancellation
if (_cancellationToken.IsCancellationRequested)
{
Thread.Sleep(500);
// Reset the cancellation request
_cancellationTokenSource?.Dispose();
_cancellationTokenSource = new CancellationTokenSource();
_cancellationToken = _cancellationTokenSource.Token;
}
MessageBoxShow(Resources.StrUserStop, "Info", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
// take the invoker of the error state to generate the message and / or popup window
@ -3312,6 +3361,9 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// <remarks date="2020-Dec-12" author="Thomas Wiedebusch">
/// - Changed port scanner call using state responses after execution.
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private void Reboot(ProcessState successExitState, ProcessState errorExitState = ProcessState.Error,
ProcessState breakExitState = ProcessState.Stop)
{
@ -3331,7 +3383,7 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
var processExec = new ProcessExec();
processExec.NewProcess(InitReboot, null, ExecReboot, FinalizeReboot, _cultureInfo,
exitProcessStateObjects);
exitProcessStateObjects, _cancellationToken);
}
/// <summary>
@ -3447,6 +3499,9 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// <remarks date="2020-Dec-12" author="Thomas Wiedebusch">
/// - Changed port scanner call using state responses after execution.
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private void PortScanner(ProcessState successExitState, ProcessState errorExitState = ProcessState.Error,
ProcessState breakExitState = ProcessState.Stop)
{
@ -3460,7 +3515,7 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
var processExec = new ProcessExec();
processExec.NewProcess(InitPortScanner, null, ExecPortScanner, FinalizePortScanner, _cultureInfo,
exitProcessStateObjects);
exitProcessStateObjects, _cancellationToken);
}
/// <summary>
@ -3582,6 +3637,9 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// <remarks date="2020-Dec-12" author="Thomas Wiedebusch">
/// - Changed port scanner call using state responses after execution.
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private void Connect(ProcessState successExitState, ProcessState errorExitState = ProcessState.Error,
ProcessState breakExitState = ProcessState.Stop)
{
@ -3594,7 +3652,8 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
exitProcessStateObjects[2] = breakExitState;
var processExec = new ProcessExec();
processExec.NewProcess(InitConnect, null, ExecConnect, FinalizeConnect, _cultureInfo, exitProcessStateObjects);
processExec.NewProcess(InitConnect, null, ExecConnect, FinalizeConnect, _cultureInfo,
exitProcessStateObjects, _cancellationToken);
}
/// <summary>
@ -4055,6 +4114,9 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// <remarks date="2020-Dec-12" author="Thomas Wiedebusch">
/// - Changed port scanner call using state responses after execution.
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private void ReadRegisters(ProcessState successExitState, ProcessState errorExitState = ProcessState.Error,
ProcessState breakExitState = ProcessState.Stop)
{
@ -4074,7 +4136,7 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
var processExec = new ProcessExec();
processExec.NewProcess(InitReadRegister, null, ExecReadRegister, FinalReadRegisters,
_cultureInfo, exitProcessStateObjects);
_cultureInfo, exitProcessStateObjects, _cancellationToken);
}
/// <summary>
@ -4109,6 +4171,9 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// - Status unknown implemented,
/// - activity message moved from InitReadRegister()
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private StatusReturn ExecReadRegister()
{
Boolean retVal;
@ -4117,7 +4182,7 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
case ProcessState.InitialReadRegisters:
SetOverallProgressDisplayOn(Resources.StrRegisterReadoutActive);
InfoProcessActive(lblRegisterReadout, Resources.StrRegisterReadoutActive);
retVal = _registerRestorer.InitialReadRegisters();
retVal = _registerRestorer.InitialReadRegisters(_cancellationToken);
break;
case ProcessState.FinalReadRegisters:
@ -4125,7 +4190,7 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
{
SetOverallProgressDisplayOn(Resources.StrRegisterReadoutActive);
InfoProcessActive(lblRegisterReadout, Resources.StrRegisterReadoutActive);
retVal = _registerRestorer.FinalReadRegisters();
retVal = _registerRestorer.FinalReadRegisters(_cancellationToken);
}
else
{
@ -4138,7 +4203,7 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
{
SetOverallProgressDisplayOn(Resources.StrRegisterReadoutActive);
InfoProcessActive(lblRegisterReadout, Resources.StrRegisterCompareActive);
retVal = _registerRestorer.CompareRegisters();
retVal = _registerRestorer.CompareRegisters(_cancellationToken);
}
else
{
@ -4149,7 +4214,7 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
default:
SetOverallProgressDisplayOn(Resources.StrRegisterReadoutActive);
InfoProcessActive(lblRegisterReadout, Resources.StrRegisterReadoutActive);
retVal = _registerRestorer.ReadRegisters();
retVal = _registerRestorer.ReadRegisters(_cancellationToken);
break;
}
return retVal ? StatusReturn.Okay : StatusReturn.Failed;
@ -4762,6 +4827,9 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// <remarks date="2020-Dec-17" author="Thomas Wiedebusch">
/// - Initial
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private void RegisterRecovery(ProcessState successExitState, ProcessState errorExitState = ProcessState.Error,
ProcessState breakExitState = ProcessState.Stop)
{
@ -4781,7 +4849,7 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
var processExec = new ProcessExec();
processExec.NewProcess(InitRegisterRecovery, null, ExecRegisterRecovery, FinalizeRegisterRecovery,
_cultureInfo, exitProcessStateObjects);
_cultureInfo, exitProcessStateObjects, _cancellationToken);
}
/// <summary>
@ -4820,6 +4888,9 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// <remarks date="2024-Jun-25" author="Thomas Wiedebusch">
/// - Moved process messages from InitRegisterRecovery().
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private StatusReturn ExecRegisterRecovery()
{
var retVal = StatusReturn.Okay;
@ -4835,7 +4906,7 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
InfoProcessActive(lblRegisterRestore, Resources.StrRegisterAccessActive);
//set the process bars
SetOverallProgressDisplayOn(Resources.StrRegisterAccessActive);
retVal = _registerRestorer.WriteRegisters(device.RecoveryRegisters);
retVal = _registerRestorer.WriteRegisters(device.RecoveryRegisters, _cancellationToken);
break;
}
@ -4924,6 +4995,9 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
/// <remarks date="2020-Dec-12" author="Thomas Wiedebusch">
/// - Changed port scanner call using state responses after execution.
/// </remarks>
/// <remarks date="2025-Jun-05" author="Thomas Wiedebusch">
/// - _cancellationToken.
/// </remarks>
private void FwUpdate(ProcessState successExitState, ProcessState errorExitState = ProcessState.Error,
ProcessState breakExitState = ProcessState.Stop)
{
@ -4944,7 +5018,7 @@ namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw
var processExec = new ProcessExec();
processExec.NewProcess(InitFwUpdate, null, ExecFwUpdate, FinalizeFwUpdate, _cultureInfo,
exitProcessStateObjects);
exitProcessStateObjects, _cancellationToken);
}
/// <summary>