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 including dispose of Genesis to force entire new read out of /// applications and restructure of registers as they may have changed after update. /// On the other hand a new Genesis may be connected to make a series update. /// Connect, /// /// Quick connect without dispose of Genesis. This will skip read out of FW at connect /// in the GenesisMeter class /// QuickConnect, /// /// Communication port scan including Genesis detection /// PortScan, /// /// Load update files /// LoadUpdateFiles, /// /// Read configuration for meter files to erase and restore. /// ReadMeterFilesConfig, /// /// Read files before erasure. /// ReadInitialMeterFiles, /// /// Erase the meter files. /// EraseMeterFiles, /// /// Read back meter files before FW-Update. /// ReadPreUpdateMeterFiles, /// /// Read back meter files after FW-Update. /// ReadPostUpdateMeterFiles, /// /// Restore meter files. /// RestoreMeterFiles, /// /// Verify restored meter files. /// VerifyMeterFiles, /// /// Backup content of registers /// RegisterBackup, /// /// Restore content of registers /// RegisterRestore, /// /// Restore password file /// PwdFileRestore, /// /// Firmware update /// FirmwareUpdate, /// /// Checks the update capability and sets all controls. /// CheckUpdateCapability, /// /// Checks the update files. /// CheckUpdateFiles, /// /// Checks the update files. /// 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, /// /// Display FW-Update Success /// FirmwareUpdateSuccess, /// /// Stop entire update process /// Stop, /// /// Error execution state /// Error } }