|
CDC Badge OS
Firmware for the CDC Badge v1.0 hardware security key
|
#include <IService.h>
Public Member Functions | |
| virtual | ~IService ()=default |
| virtual bool | init ()=0 |
| virtual bool | start ()=0 |
| virtual void | stop ()=0 |
| virtual ServiceState | getState () const =0 |
| virtual const char * | getName () const =0 |
Base interface for all services (HAL, Modules, etc.)
Lifecycle:
Definition at line 27 of file IService.h.
|
virtualdefault |
|
pure virtual |
Get service name (for logging/debugging)
Implemented in cdc::core::AttestationKeyService, cdc::core::ModuleBase, cdc::core::TropicStorage, cdc::core::UsbManager, cdc::hal::BluetoothControllerStub, cdc::hal::BQ25895Power, cdc::hal::EpaperDisplay, cdc::hal::Esp32Rtc, cdc::hal::Esp32SleepController, cdc::hal::EspHardware, cdc::hal::I2cBusImpl, cdc::hal::SecureElementStub, cdc::hal::TCA9535Keypad, cdc::hal::Tropic01Element, cdc::hal::WifiController, cdc::mod_ble_serial::BleSerialModule, cdc::mod_fido2::Fido2Module, cdc::mod_gpg::GpgModule, cdc::mod_sao::SaoModule, and cdc::mod_vcard::VcardModule.
Referenced by cdc::serial::cmdModuleList(), cdc::os_ui::SystemSettingsBackup::exportSystemSettings(), cdc::os_ui::BackupManager::exportTo(), cdc::serial::findModuleIndex(), cdc::os_ui::SystemSettingsBackup::importSystemSettings(), cdc::ui::rebuildModulesView(), cdc::core::ModuleRegistry::registerModule(), and cdc::core::ModuleRegistry::startModule().
|
pure virtual |
Get current service state
Implemented in cdc::core::AttestationKeyService, cdc::core::ModuleBase, cdc::core::TropicStorage, cdc::core::UsbManager, cdc::hal::BluetoothControllerStub, cdc::hal::BQ25895Power, cdc::hal::EpaperDisplay, cdc::hal::Esp32Rtc, cdc::hal::Esp32SleepController, cdc::hal::EspHardware, cdc::hal::I2cBusImpl, cdc::hal::SecureElementStub, cdc::hal::TCA9535Keypad, cdc::hal::Tropic01Element, cdc::hal::WifiController, cdc::mod_ble_serial::BleSerialModule, cdc::mod_fido2::Fido2Module, cdc::mod_gpg::GpgModule, cdc::mod_sao::SaoModule, and cdc::mod_vcard::VcardModule.
Referenced by cdc::serial::cmdModuleDisable(), cdc::ui::onModuleSelect(), and cdc::core::ModuleRegistry::startModule().
|
pure virtual |
Initialize the service (called once during boot)
Implemented in cdc::core::AttestationKeyService, cdc::core::TropicStorage, cdc::core::UsbManager, cdc::hal::BluetoothControllerStub, cdc::hal::BQ25895Power, cdc::hal::EpaperDisplay, cdc::hal::Esp32Rtc, cdc::hal::Esp32SleepController, cdc::hal::EspHardware, cdc::hal::I2cBusImpl, cdc::hal::SecureElementStub, cdc::hal::TCA9535Keypad, cdc::hal::Tropic01Element, cdc::hal::WifiController, cdc::mod_2fa::TwoFaModule, cdc::mod_ble_serial::BleSerialModule, cdc::mod_fido2::Fido2Module, cdc::mod_gpg::GpgModule, cdc::mod_nvsedit::NvsEditModule, cdc::mod_password::PasswordModule, cdc::mod_sao::SaoModule, and cdc::mod_vcard::VcardModule.
Referenced by initBluetoothController(), initRtc(), initWifiController(), and cdc::core::ModuleRegistry::retryModule().
|
pure virtual |
Start the service (can be called after init or stop)
Implemented in cdc::core::AttestationKeyService, cdc::core::ModuleBase, cdc::core::TropicStorage, cdc::core::UsbManager, cdc::hal::BluetoothControllerStub, cdc::hal::BQ25895Power, cdc::hal::EpaperDisplay, cdc::hal::Esp32Rtc, cdc::hal::Esp32SleepController, cdc::hal::EspHardware, cdc::hal::I2cBusImpl, cdc::hal::SecureElementStub, cdc::hal::TCA9535Keypad, cdc::hal::Tropic01Element, cdc::hal::WifiController, cdc::mod_2fa::TwoFaModule, cdc::mod_ble_serial::BleSerialModule, cdc::mod_fido2::Fido2Module, cdc::mod_gpg::GpgModule, cdc::mod_sao::SaoModule, and cdc::mod_vcard::VcardModule.
Referenced by initBluetoothController(), initWifiController(), cdc::core::ModuleRegistry::retryModule(), and cdc::core::ModuleRegistry::startModule().
|
pure virtual |
Stop the service (reversible, can start again)
Implemented in cdc::core::AttestationKeyService, cdc::core::ModuleBase, cdc::core::TropicStorage, cdc::core::UsbManager, cdc::hal::BluetoothControllerStub, cdc::hal::BQ25895Power, cdc::hal::EpaperDisplay, cdc::hal::Esp32Rtc, cdc::hal::Esp32SleepController, cdc::hal::EspHardware, cdc::hal::I2cBusImpl, cdc::hal::SecureElementStub, cdc::hal::TCA9535Keypad, cdc::hal::Tropic01Element, cdc::hal::WifiController, cdc::mod_2fa::TwoFaModule, cdc::mod_ble_serial::BleSerialModule, cdc::mod_fido2::Fido2Module, cdc::mod_gpg::GpgModule, cdc::mod_password::PasswordModule, cdc::mod_sao::SaoModule, and cdc::mod_vcard::VcardModule.