blob: 81cd7a71c96d6c76d1b43669dd8d22dc2bb1c541 [file] [log] [blame]
// 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_