| // Copyright 2022 The ChromiumOS Authors | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| #ifndef HERMES_EUICC_EVENT_H_ | |
| #define HERMES_EUICC_EVENT_H_ | |
| namespace hermes { | |
| enum class EuiccStep { | |
| START, | |
| PENDING_NOTIFICATIONS, | |
| END, | |
| }; | |
| enum class EuiccOp { | |
| UNKNOWN, | |
| DISABLE, | |
| ENABLE, | |
| FW_UPDATE, | |
| INSTALL, | |
| UNINSTALL, | |
| REFRESH_INSTALLED, | |
| REQUEST_PENDING, | |
| INSTALL_PENDING, | |
| SET_TEST_MODE, | |
| RESET_MEMORY, | |
| GET_EUICC_INFO1, | |
| RENAME, | |
| }; | |
| struct EuiccEvent { | |
| uint32_t slot; | |
| EuiccStep step; | |
| EuiccOp op; | |
| EuiccEvent(uint32_t slot, EuiccStep step); | |
| EuiccEvent(uint32_t slot, EuiccStep step, EuiccOp op); | |
| }; | |
| std::ostream& operator<<(std::ostream& os, const EuiccStep& rhs); | |
| std::ostream& operator<<(std::ostream& os, const EuiccOp& rhs); | |
| std::ostream& operator<<(std::ostream& os, const EuiccEvent& rhs); | |
| } // namespace hermes | |
| #endif // HERMES_EUICC_EVENT_H_ |