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