[FL-2957] Unified Info API, App Error, Data Xchange (#1998)
* Update protobuf definitions * Add Property subsystem entry point function * Key-based system info and power info function stubs * Remove unneeded functions * Working power info * Working system info * Replace #defines with string literals * Remove unneeded field * Simplify system info formatting * Refactor output callback handling * Handle the last info element correctly * Optimise power info, rename methods * Add comments * Add power debug * Remove unneeded definitions * Rename some files and functions * Update protobuf definitions * Implement App GetError and DataExchange APIs * Send GetErrorReply with correct command_id * Add RPC debug app stub * Add more scenes * Add warning, increase stack size * Add receive data exchange scene * Improve data exchange * Add notifications * Update application requirements * Bump format version for property-based infos * Correctly reset error text * RCP: sync protobuf repo to latest release tag Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
This commit is contained in:
@@ -7,27 +7,20 @@
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <stdint.h>
|
||||
#include <core/string.h>
|
||||
#include <toolbox/property.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Callback type called every time another key-value pair of device information is ready
|
||||
*
|
||||
* @param key[in] device information type identifier
|
||||
* @param value[in] device information value
|
||||
* @param last[in] whether the passed key-value pair is the last one
|
||||
* @param context[in] to pass to callback
|
||||
*/
|
||||
typedef void (
|
||||
*FuriHalInfoValueCallback)(const char* key, const char* value, bool last, void* context);
|
||||
|
||||
/** Get device information
|
||||
*
|
||||
* @param[in] callback callback to provide with new data
|
||||
* @param[in] sep category separator character
|
||||
* @param[in] context context to pass to callback
|
||||
*/
|
||||
void furi_hal_info_get(FuriHalInfoValueCallback callback, void* context);
|
||||
void furi_hal_info_get(PropertyValueCallback callback, char sep, void* context);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@@ -7,6 +7,8 @@
|
||||
|
||||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
#include <core/string.h>
|
||||
#include <toolbox/property.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -167,10 +169,6 @@ float furi_hal_power_get_battery_temperature(FuriHalPowerIC ic);
|
||||
*/
|
||||
float furi_hal_power_get_usb_voltage();
|
||||
|
||||
/** Get power system component state
|
||||
*/
|
||||
void furi_hal_power_dump_state();
|
||||
|
||||
/** Enable 3.3v on external gpio and sd card
|
||||
*/
|
||||
void furi_hal_power_enable_external_3_3v();
|
||||
@@ -189,22 +187,20 @@ void furi_hal_power_suppress_charge_enter();
|
||||
*/
|
||||
void furi_hal_power_suppress_charge_exit();
|
||||
|
||||
/** Callback type called by furi_hal_power_info_get every time another key-value pair of information is ready
|
||||
*
|
||||
* @param key[in] power information type identifier
|
||||
* @param value[in] power information value
|
||||
* @param last[in] whether the passed key-value pair is the last one
|
||||
* @param context[in] to pass to callback
|
||||
*/
|
||||
typedef void (
|
||||
*FuriHalPowerInfoCallback)(const char* key, const char* value, bool last, void* context);
|
||||
|
||||
/** Get power information
|
||||
*
|
||||
* @param[in] callback callback to provide with new data
|
||||
* @param[in] sep category separator character
|
||||
* @param[in] context context to pass to callback
|
||||
*/
|
||||
void furi_hal_power_info_get(PropertyValueCallback callback, char sep, void* context);
|
||||
|
||||
/** Get power debug information
|
||||
*
|
||||
* @param[in] callback callback to provide with new data
|
||||
* @param[in] context context to pass to callback
|
||||
*/
|
||||
void furi_hal_power_info_get(FuriHalPowerInfoCallback callback, void* context);
|
||||
void furi_hal_power_debug_get(PropertyValueCallback callback, void* context);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
Reference in New Issue
Block a user