211 lines
5.5 KiB
C#
211 lines
5.5 KiB
C#
using System;
|
|
|
|
namespace Xylem.ServiceFwUpdate.Ui.ServiceFwUpdateSw.Const
|
|
{
|
|
/// <summary>
|
|
/// Firmware update process states
|
|
/// </summary>
|
|
[Serializable]
|
|
public enum ProcessState
|
|
{
|
|
/// <summary>
|
|
/// Unspecified state, used for startup to unlock first state entry.
|
|
/// </summary>
|
|
Unspecified,
|
|
|
|
/// <summary>
|
|
/// Validate the software and exit if invalid
|
|
/// </summary>
|
|
ValidateSoftware,
|
|
|
|
/// <summary>
|
|
/// Idle waiting for user interaction or event.
|
|
/// </summary>
|
|
Idle,
|
|
|
|
/// <summary>
|
|
/// Initialize the entire program, dispose the Genesis and reset labels.
|
|
/// </summary>
|
|
Init,
|
|
|
|
/// <summary>
|
|
/// Reboot of Genesis, the TriggerUpgrade command will internally update the meter.
|
|
/// During this time the meter is offline and needs to be polled until it returns online.
|
|
/// </summary>
|
|
Reboot,
|
|
|
|
/// <summary>
|
|
/// Connecting after connect button pushed by user to force entire new read out of
|
|
/// applications.
|
|
/// </summary>
|
|
InitialConnect,
|
|
|
|
/// <summary>
|
|
/// Connecting including dispose of Genesis to force entire new read out of
|
|
/// applications and restructure of registers as they may have changed after update.
|
|
/// </summary>
|
|
RebootConnect,
|
|
|
|
/// <summary>
|
|
/// Connecting including dispose of Genesis to force entire new read out of
|
|
/// applications and restructure of registers as they may have changed after update.
|
|
/// </summary>
|
|
FinalConnect,
|
|
|
|
/// <summary>
|
|
/// Communication port scan including Genesis detection
|
|
/// </summary>
|
|
PortScan,
|
|
|
|
/// <summary>
|
|
/// Load update files
|
|
/// </summary>
|
|
LoadUpdateFiles,
|
|
|
|
/// <summary>
|
|
/// Read info file for meter files to erase and restore.
|
|
/// </summary>
|
|
ReadInfoEraseRestoreFiles,
|
|
|
|
/// <summary>
|
|
/// Read files before erasure.
|
|
/// </summary>
|
|
InitialReadMeterFiles,
|
|
|
|
/// <summary>
|
|
/// Erase the meter files.
|
|
/// </summary>
|
|
EraseMeterFiles,
|
|
|
|
/// <summary>
|
|
/// Read back meter files before FW-Update.
|
|
/// </summary>
|
|
PreUpdateReadMeterFiles,
|
|
|
|
/// <summary>
|
|
/// Restore meter files.
|
|
/// </summary>
|
|
RestoreMeterFiles,
|
|
|
|
/// <summary>
|
|
/// Verify restored meter files.
|
|
/// </summary>
|
|
VerifyMeterFiles,
|
|
|
|
/// <summary>
|
|
/// Read and log initial register contents
|
|
/// </summary>
|
|
InitialReadRegisters,
|
|
|
|
/// <summary>
|
|
/// Read and log final register contents
|
|
/// </summary>
|
|
FinalReadRegisters,
|
|
|
|
/// <summary>
|
|
/// Recover registers with EOL content
|
|
/// </summary>
|
|
RecoverRegisters,
|
|
|
|
/// <summary>
|
|
/// Read engineering logs for analysis
|
|
/// </summary>
|
|
ReadEngineeringLogs,
|
|
|
|
/// <summary>
|
|
/// Calculate life time information
|
|
/// </summary>
|
|
CalculateLifeTime,
|
|
|
|
/// <summary>
|
|
/// Restore registers with content before update
|
|
/// </summary>
|
|
CompareRegisters,
|
|
|
|
/// <summary>
|
|
/// Restore password file
|
|
/// </summary>
|
|
RestorePasswordFile,
|
|
|
|
/// <summary>
|
|
/// Restore tho look up table
|
|
/// </summary>
|
|
RestoreLutFile,
|
|
|
|
/// <summary>
|
|
/// Firmware update
|
|
/// </summary>
|
|
FirmwareUpdate,
|
|
|
|
/// <summary>
|
|
/// Checks the update capability and sets all controls.
|
|
/// </summary>
|
|
CheckUpdateCapability,
|
|
|
|
/// <summary>
|
|
/// Checks the update files.
|
|
/// </summary>
|
|
CheckUpdateFiles,
|
|
|
|
/// <summary>
|
|
/// Checks the core revision.
|
|
/// </summary>
|
|
CheckCoreRevision,
|
|
|
|
/// <summary>
|
|
/// Checks the metrology update capability.
|
|
/// </summary>
|
|
CheckMetrology,
|
|
|
|
/// <summary>
|
|
/// Checks the radio update capability by region and frequency
|
|
/// </summary>
|
|
CheckRegionRadio,
|
|
|
|
/// <summary>
|
|
/// Checks the meter sizes
|
|
/// </summary>
|
|
CheckMeterSize,
|
|
|
|
/// <summary>
|
|
/// Check if the FW in the meter is up to date.
|
|
/// </summary>
|
|
CheckUpdateRequest,
|
|
|
|
/// <summary>
|
|
/// Check if FW is up to date
|
|
/// </summary>
|
|
CheckFwUpdateSuccess,
|
|
|
|
/// <summary>
|
|
/// Finalize maintenance and logging of all meter parameters and logs
|
|
/// </summary>
|
|
PrepareMeterRelease,
|
|
|
|
/// <summary>
|
|
/// Switch the display back to normal operation
|
|
/// </summary>
|
|
ReleaseMeterToNormalOperation,
|
|
|
|
/// <summary>
|
|
/// Display FW-Update Success
|
|
/// </summary>
|
|
FwUpdateSuccess,
|
|
|
|
/// <summary>
|
|
/// Stop entire update process
|
|
/// </summary>
|
|
Stop,
|
|
|
|
/// <summary>
|
|
/// Error execution state
|
|
/// </summary>
|
|
Error,
|
|
|
|
/// <summary>
|
|
/// Marker for end of list
|
|
/// </summary>
|
|
EndOfList
|
|
}
|
|
}
|