#include "soc_lcd_api.h"
#endif
-static unsigned long g_app_queue;
+static unsigned long g_app_queue = 0xFFFFFFFF;
/**
* @if Eng
#include "rtc.h"\r
#include "gpio.h"\r
#include "ipc.h"\r
-#include "cpu_trace.h"\r
#include "uart_porting.h"\r
#include "log_memory_region.h"\r
#include "clocks_core_common.h"\r
#define XIP_CACHE_INTR_MASK 0xa3006128\r
#define XIP_CACHE_WRITE_DATA_DELAY_INTR_MASK 0x8\r
#define XIP_CACHE_ENABLE_WRITE_INTR_MASK 0x1\r
+#define XIP_CACHE_2AHBM_INTR_MASK 0x2\r
\r
#if ENABLE_LOW_POWER == YES\r
extern uint32_t __sys_pm_start__;\r
// Mask interrupts caused by CACHE2AHBM module state machine timeout\r
reg16_clrbit(XIP_CACHE_INTR_MASK, XIP_CACHE_WRITE_DATA_DELAY_INTR_MASK);\r
reg16_clrbit(XIP_CACHE_INTR_MASK, XIP_CACHE_ENABLE_WRITE_INTR_MASK);\r
+ reg16_clrbit(XIP_CACHE_INTR_MASK, XIP_CACHE_2AHBM_INTR_MASK);\r
}\r
\r
static void chip_enable_ulp_ram(void)\r
uapi_dma_init();\r
uapi_dma_open();\r
\r
- cpu_trace_enable_mcpu_repeat();\r
-\r
ipc_init();\r
\r
log_memory_region_init();\r
#include "soc_lcd_api.h"
#endif
-static unsigned long g_app_queue;
+static unsigned long g_app_queue = 0xFFFFFFFF;
uint8_t g_long_press_flag = 0;
/**
* @if Eng
\r
/* os kernel adapt config */\r
ArchSetExcHook((EXC_PROC_FUNC)do_fault_handler);\r
- ArchSetNMIHook((NMI_PROC_FUNC)do_hard_fault_handler);\r
+ ArchSetNMIHook((NMI_PROC_FUNC)nmi_fault_handler);\r
OsSetMainTask();\r
OsCurrTaskSet((LosTaskCB*)OsGetMainTask());\r
g_os_init_select = OS_CLASS_LITEOS;\r
#include "common_def.h"\r
#include "pm.h"\r
#include "watchdog.h"\r
+#include "cpu_trace.h"\r
+#include "non_os_reboot.h"\r
/* after reboot system emmc need write exc info to the file system from sector */\r
#if defined(SAVE_EXC_INFO) && defined(CFG_DRIVERS_MMC)\r
#include "exception.h"\r
#ifdef CFG_DRIVERS_NANDFLASH\r
nandflash_init_handle();\r
#endif\r
+\r
+ reboot_cause_t cause = get_cpu_utils_reset_cause();\r
+ if ((cause != REBOOT_CAUSE_APPLICATION_STD_CHIP_WDT_FRST) &&\r
+ (cause != REBOOT_CAUSE_APPLICATION_XIP_CTRL) &&\r
+ (cause != REBOOT_CAUSE_APPLICATION_XIP_CACHE)) {\r
+ cpu_trace_enable_mcpu_repeat();\r
+ } else {\r
+ PRINT("nmi reboot cause: 0x%x, reason: 0x%x"NEWLINE, cause, get_fault_reason());\r
+ // save cputrace memory if chip watchdog reset\r
+ hal_cpu_trace_clock_enable();\r
+ panic(PANIC_ASSERT, cause);\r
+ }\r
+\r
uapi_pm_control(PM_DISPLAY_POWER_UP_AND_RUN);\r
(void)osDelay(TICK_TEN_MS);\r
\r
#include "soc_lcd_api.h"
#endif
-static unsigned long g_app_queue;
+static unsigned long g_app_queue = 0xFFFFFFFF;
/**
* @if Eng
static osSemaphoreId_t g_alipay_sem_id;
semaphoreex_t g_alipay_sem = { { "AlipaySem", 0, NULL, 0 }, 1, 1 };
static bool g_alipay_init_flag = false;
-static unsigned long g_alipay_queue_id = 0;
+static unsigned long g_alipay_queue_id = 0xFFFFFFFF;
static uint32_t *g_alipay_task_handle = NULL;
static uint32_t g_alipay_alow_read_write = 0;
if (type != TransitionType::TRANSITION_INVALID) {
osal_atomic_dec(&transitionCount_);
}
+ FreeElement(elementName);
return;
}
+ FreeElement(elementName);
#endif
bool useTransition = sliceTransition_.SetTransitionType(type);
void NativeAbility::StopAbility()
{
- GraphicService::GetInstance()->SetNativeUIRunning(false);
- NotificationManager::GetInstance()->SetNativeUIRunning(false);
PauseSlice();
StopSlice();
nativeAbilityState_ = STATE_INACTIVE;
+ GraphicService::GetInstance()->SetNativeUIRunning(false);
+ NotificationManager::GetInstance()->SetNativeUIRunning(false);
#ifdef JS_ENABLE
SliteAbility::OnBackground();
#endif
current_->GetCurrentPosition(focusIndex_);
opaStart_ = focusView_->GetOpaScale();
scaleStart_ = current_->GetGlobalScale();
- Rect rect = focusView_->GetRect();
- float xScale = target_->GetWidth() * 1.0f / rect.GetWidth();
- float yScale = target_->GetHeight() * 1.0f / rect.GetHeight();
+ float xScale = target_->GetWidth() * 1.0f / focusView_->GetWidth();
+ float yScale = target_->GetHeight() * 1.0f / focusView_->GetHeight();
scaleEnd_ = FloatLessEqual(xScale, yScale) ? xScale : yScale;
+ Rect rect = focusView_->GetRect();
targetXStart_ = rect.GetX();
targetYStart_ = rect.GetY();
- targetScaleStart_ = 1.0f / scaleEnd_;
+ float targetXScale = rect.GetWidth() * 1.0f / target_->GetWidth();
+ float targetYScale = rect.GetHeight() * 1.0f / target_->GetHeight();
+ targetScaleStart_ = FloatMoreEqual(targetXScale, targetYScale) ? targetXScale : targetYScale;
uint32_t offsetTime = static_cast<uint32_t>((scaleStart_ - HEXAGONS_SCALE_INIT) /
(scaleEnd_ - HEXAGONS_SCALE_INIT) * duration_);
void ClearAppItemToList();
void RefreshAppList(void);
void StartFootBallAnimator();
+ void ResumeWaterFallDraggable();
private:
/* for list style */
Presenter::OnResume();
if (GetCurrentStyle() == AppListStyle::FOOTBALL_STYLE) {
view_->StartFootBallAnimator();
+ } else if (GetCurrentStyle() == AppListStyle::WATERFALL_STYLE) {
+ view_->ResumeWaterFallDraggable();
}
}
waterfallList_->RequestFocus();
waterfallList_->SetRotateFactor(10); // 10, empirical coefficient
waterfallList_->SetOnRotateListener(presenter_);
+ waterfallList_->SetTouchable(false);
+ waterfallList_->SetDraggable(false); // ensure that it can't be dragged during animation to avoid error display
AddViewToRootContainer(waterfallList_);
}
AddViewToRootContainer(contentList_);
}
+void ApplistView::ResumeWaterFallDraggable()
+{
+ if (waterfallList_ != nullptr) {
+ waterfallList_->SetTouchable(true);
+ waterfallList_->SetDraggable(true); // resume touchable after transition animation
+ }
+}
+
void ApplistView::StartFootBallAnimator()
{
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ApplistView::StartFootBallAnimator");
\r
memset_s(cardSettings, CARD_SETTING_COUNT_MAX, 0, CARD_SETTING_COUNT_MAX);\r
len = UtilsGetValue("card_setting", temp, CARD_SETTING_VALUE_LEN);\r
- if (len >= 0) {\r
+ if (len >= 0 && strlen(temp) > 0) {\r
/* 读取用户card配置 */\r
char *setBuffer = nullptr;\r
char *setValue = strtok_s(temp, ",", &setBuffer);\r
DialSetting &setting = GetDialSetting();
if (setting.dialFlag) {
DialModelTime::GetInstance()->UpdateTime();
- dynamic_cast<DialViewGroup*>(view_->GetViewById(WATCH_FACE))->UpdateViewsByPeriodicUpdateData();
+ DialViewGroup* group = dynamic_cast<DialViewGroup*>(view_->GetViewById(WATCH_FACE));
+ if (group != nullptr) {
+ group->UpdateViewsByPeriodicUpdateData();
+ }
} else {
- dynamic_cast<MainClockView*>(view_->GetViewById(WATCH_FACE))->UpdateTime();
+ MainClockView* clock = dynamic_cast<MainClockView*>(view_->GetViewById(WATCH_FACE));
+ if (clock != nullptr) {
+ clock->UpdateTime();
+ }
}
}
}
#if !defined(_WIN32)
#include "los_typedef.h"
#else
-#include <Windows.h>
+#include <windows.h>
#endif
#ifdef __cplusplus
if (strcmp(topAbility->bundleName, bundleName) == 0) {
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%s is active", bundleName);
+ FreeElement(topAbility);
return;
}
+ FreeElement(topAbility);
// If the alarm notification is being processed, we need to disable the alarm notification first.
if (OHOS::NotificationManager::GetInstance()->GetNotifyPriority() == PRIORITY_TWO &&
OHOS::NotificationManager::GetInstance()->HasNotifyShowing()) {
if (strcmp(topAbility->bundleName, bundleName) != 0) {
WEARABLE_LOGE(HILOG_MODULE_AAFWK, "%s is not top active", bundleName);
+ FreeElement(topAbility);
return;
}
-
+ FreeElement(topAbility);
int token = 0;
OHOS::AbilityMsClient::GetInstance().TerminateAbility(token);
}
ElementName *elementName = OHOS::AbilityMsClient::GetInstance().GetTopAbility();
if (!(elementName != nullptr && strcmp(elementName->bundleName, "com.huawei.launcher") != 0)) {
WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "JS is not on top, ignore report");
+ FreeElement(elementName);
return;
}
-
+ FreeElement(elementName);
if (msgId == BT_DISCONNECTED_TO_MSGCENTER) {
BaidumapSendMsgToJS("0", MSGCENTER_TYPE_ID_VECTOR_NAVI_BT_DISCONNECTED);
} else if (msgId == BT_CONNECTED_TO_MSGCENTER) {
#include "baidumap.h"\r
#include "soc_osal.h"\r
#include "watchdog.h"\r
+#include "js_ability.h"\r
\r
#ifdef __cplusplus\r
extern "C" {\r
\r
(void)memcpy_s(data, payload_len, tlv_payload, payload_len);\r
data[payload_len] = '\0';\r
- WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "recv navigate info--> %s\r\n", tlv_payload);\r
+ WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "recv navigate info--> %s\r\n", data);\r
DmsLiteSendMsgToJS(data);\r
free(data);\r
data = nullptr;\r
\r
(void)memcpy_s(data, payload_len, tlv_payload, payload_len);\r
data[payload_len] = '\0';\r
- WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "recv xiaodu info--> %s\r\n", tlv_payload);\r
+ WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "recv xiaodu info--> %s\r\n", data);\r
DmsLiteSendMsgToJS(data);\r
free(data);\r
data = nullptr;\r
\r
(void)memcpy_s(data, payload_len, tlv_payload, payload_len);\r
data[payload_len] = '\0';\r
- WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "recv wenxin info--> %s\r\n", tlv_payload);\r
+ WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "recv wenxin info--> %s\r\n", data);\r
DmsLiteSendMsgToJS(data);\r
free(data);\r
data = nullptr;\r
\r
fp = fopen(data, "rb");\r
if (fp == nullptr) {\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_MSG_CENTER, "%s: open %s fail.\r\n", vector_navi_get_str(type), data);\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_MSG_CENTER, "open %s fail.\r\n", data);\r
return;\r
}\r
\r
long file_len = ftell(fp);\r
char *file_content = (char *)malloc(sizeof(char) * (file_len + 1));\r
if (file_content == nullptr) {\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_MSG_CENTER, "%s: malloc fail, file_len = %d.\r\n", vector_navi_get_str(type), file_len);\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_MSG_CENTER, " malloc fail, file_len = %d.\r\n", file_len);\r
+ fclose(fp);\r
return;\r
}\r
\r
fseek(fp, 0L, SEEK_SET);\r
if (fread(file_content, file_len, 1, fp) != 1) {\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_MSG_CENTER, "%s: fread fail, file_len = %d.\r\n", vector_navi_get_str(type), file_len);\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_MSG_CENTER, "fread fail, file_len = %d.\r\n", file_len);\r
free(file_content);\r
file_content = nullptr;\r
+ fclose(fp);\r
return;\r
}\r
fclose(fp);\r
file_content[file_len] = '\0';\r
\r
- WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "%s: file_len = %d.\r\n", vector_navi_get_str(type), file_len);\r
+ WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "file_len = %d.\r\n", file_len);\r
\r
/* send to JSI */\r
BaidumapSendMsgToJS(file_content, type);\r
uint8_t tl_len = msg_center_get_tlv_tl_len(usr_data);\r
uint16_t payload_len = usr_len - tl_len;\r
uint8_t *tlv_payload = (uint8_t *)msg_center_get_tlv_payload(usr_data);\r
- uint8_t ack = 1;\r
+ uint8_t ack = 1; /* recv流程的协议ack做保活判断,1 -- JS onLine, 0 -- JS offLine */\r
errcode_t ret = ERRCODE_SUCC;\r
uint8_t res;\r
\r
/* ack */\r
+ const char *bundleName = OHOS::ACELite::JSAbility::GetPackageName();\r
+ if (bundleName != nullptr && strcmp(bundleName, "com.baidu.BaiduMap") == 0) {\r
+ ack = 1;\r
+ } else {\r
+ ack = 0;\r
+ }\r
+\r
ret = msg_center_send_data(cmd_id, type, &ack, sizeof(ack));\r
if (ret != ERRCODE_SUCC) {\r
return ERRCODE_FAIL;\r
}\r
\r
+ if (ack == 0) {\r
+ WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "JS offline\r\n");\r
+ return ERRCODE_SUCC;\r
+ }\r
+\r
/* svg json */\r
char *svg_json = (char *)malloc(payload_len + 1);\r
if (svg_json == nullptr) {\r
return ERRCODE_FAIL;\r
}\r
\r
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_MSG_CENTER, "usr_data = %s\r\n", usr_data);\r
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_MSG_CENTER, "req svg succ\r\n");\r
return ERRCODE_SUCC;\r
}\r
\r
\r
(void)memcpy_s(data, payload_len, tlv_payload, payload_len);\r
data[payload_len] = '\0';\r
- WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "recv vector navi info--> %s\r\n", tlv_payload);\r
+ WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "recv vector navi info--> %s\r\n", data);\r
/* send to baiduSDK */\r
free(data);\r
data = nullptr;\r
\r
(void)memcpy_s(data, payload_len, tlv_payload, payload_len);\r
data[payload_len] = '\0';\r
- WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "recv vector navi info--> %s\r\n", tlv_payload);\r
+ WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "recv vector navi info--> %s\r\n", data);\r
/* send data to js */\r
free(data);\r
data = nullptr;\r
errcode_t ret = ERRCODE_SUCC;\r
\r
/* ack */\r
+ const char *bundleName = OHOS::ACELite::JSAbility::GetPackageName();\r
+ if (bundleName != nullptr && strcmp(bundleName, "com.baidu.BaiduMap") == 0) {\r
+ ack = 1;\r
+ } else {\r
+ ack = 0;\r
+ }\r
+\r
ret = msg_center_send_data(cmd_id, type, &ack, sizeof(ack));\r
if (ret != ERRCODE_SUCC) {\r
return ERRCODE_FAIL;\r
}\r
\r
+ if (ack == 0) {\r
+ WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "JS offline\r\n");\r
+ return ERRCODE_SUCC;\r
+ }\r
+\r
char *data = (char *)malloc(payload_len + 1);\r
if (data == nullptr) {\r
WEARABLE_LOGE(WEARABLE_LOG_MODULE_MSG_CENTER, "recv poi: malloc failed.\r\n");\r
\r
(void)memcpy_s(data, payload_len, tlv_payload, payload_len);\r
data[payload_len] = '\0';\r
- WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "recv poi info -- > %s, usr_len = %d\r\n", tlv_payload, usr_len);\r
+ WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "recv poi info -- > %s, usr_len = %d\r\n", data, usr_len);\r
\r
msg_center_transfer_longbuf(data, type);\r
free(data);\r
return ERRCODE_FAIL;\r
}\r
\r
- WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "%s, usr_data = %s, usr_len = %d\r\n", vector_navi_get_str(type),\r
- usr_data == NULL ? NULL : usr_data, usr_len);\r
return ERRCODE_SUCC;\r
}\r
\r
uint8_t ack = 1;\r
\r
/* ack */\r
+ const char *bundleName = OHOS::ACELite::JSAbility::GetPackageName();\r
+ if (bundleName != nullptr && strcmp(bundleName, "com.baidu.BaiduMap") == 0) {\r
+ ack = 1;\r
+ } else {\r
+ ack = 0;\r
+ }\r
+\r
ret = msg_center_send_data(cmd_id, type, &ack, sizeof(ack));\r
if (ret != ERRCODE_SUCC) {\r
return ERRCODE_FAIL;\r
}\r
\r
+ if (ack == 0) {\r
+ WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "JS offline\r\n");\r
+ return ERRCODE_SUCC;\r
+ }\r
+\r
#if defined(SUPPORT_POWER_MANAGER)\r
const power_display_svr_api_t *display_api = power_display_svr_get_api();\r
if (display_api->get_screen_state() != SCREEN_ON) {\r
\r
(void)memcpy_s(data, payload_len, tlv_payload, payload_len);\r
data[payload_len] = '\0';\r
- WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "%s -- > %s\r\n", vector_navi_get_str(type), tlv_payload);\r
+ WEARABLE_LOGI(WEARABLE_LOG_MODULE_MSG_CENTER, "%s -- > %s\r\n", vector_navi_get_str(type), data);\r
\r
if (is_vector_navi_longbuf(type) && payload_len != 1) {\r
if (payload_len == 2) { // 2,长距离的协议优化,限制为 ROUTE_TRANS_MAX_SIZE, app先读文件过滤,减少无效带宽损耗\r
void power_display_timer_cmd_handle_ext(void *data);\r
#endif\r
\r
-static unsigned long g_power_display_queue_id = 0;\r
+static unsigned long g_power_display_queue_id = 0xFFFFFFFF;\r
static uint32_t g_power_recv_msg_num = 0;\r
bool g_discard_all_events = false;\r
static uint32_t g_power_tp_press_num = false;\r
\r
#define APP_AT_MSG_COUNT 16\r
\r
-static unsigned long g_app_at_queue;\r
+static unsigned long g_app_at_queue = 0xFFFFFFFF;\r
\r
void app_at_task_queue_init(void)\r
{\r
\r
#define AUDIO_AT_MSG_COUNT 16\r
\r
-static unsigned long g_audio_at_queue;\r
+static unsigned long g_audio_at_queue = 0xFFFFFFFF;\r
\r
void audio_at_task_queue_init(void)\r
{\r
\r
#define BT_CMD_MSG_COUNT 16\r
\r
-static unsigned long g_bt_manager_msg_queue;\r
+static unsigned long g_bt_manager_msg_queue = 0xFFFFFFFF;\r
\r
void bt_manager_at_task_queue_init(void)\r
{\r
${ROOT_DIR}/middleware/services/gui/lvgl/sample\r
${ROOT_DIR}/middleware/services/gui/lvgl/proprietary\r
${ROOT_DIR}/middleware/services/gui/lvgl/proprietary/include/dfx\r
+ ${ROOT_DIR}/middleware/services/gpu/drv/include\r
+ ${ROOT_DIR}/middleware/services/gpu/drv/dpu/dfx\r
)\r
\r
set(PRIVATE_DEFINES\r
\r
#define GRAPHIC_MSG_COUNT 16\r
\r
-static unsigned long g_graphic_at_queue;\r
+static unsigned long g_graphic_at_queue = 0xFFFFFFFF;\r
\r
void graphic_at_task_queue_init(void)\r
{\r
#include "soc_vau_api.h"
#include "soc_dpu_api.h"
#include "soc_mipi_tx.h"
+#include "dpu_dfx.h"
#ifdef SUPPORT_GPU_TEST
#include "test_gpu_comm.h"
#define TEST_DPU_LAYER_WHITE 0xffffffff
#define TEST_DPU_LAYER_YELLOW 0xffffff00
-extern td_s32 dfx_get_proc_info(int argc, const char *argv[]);
-extern td_s32 dfx_dpu_print(int argc, const char *argv[]);
extern td_s32 vau_dfx_proc_read(int argc, const char *argv[]);
extern td_s32 jpeg_dfx_proc_read(int argc, const char *argv[]);
extern td_s32 gmmu_dfx_print_proc_info(int argc, const char *argv[]);
-extern td_s32 dfx_dpu_save_fb_enable(int argc, const char *argv[]);
static td_void wstp_draw_box(ext_rect *rect, td_u32 stride, td_char *mem_start, td_u32 color, td_u32 bpp)
{
static td_void wstp_dpu_screen_cap_g0(td_void)
{
td_u32 addr, stride, height;
- uapi_reg_read(0x56030e54, addr);
- uapi_reg_read(0x56030e60, stride);
- uapi_reg_read(0x56030e44, height);
+ dpu_dfx_info *dfx_info = dpu_dfx_get_info();
- height = (height >> 16) + 1; // 16:index
- stride = stride & 0xFFFF;
+ addr = dfx_info->layer_info[0].phy_addr;
+ height = dfx_info->layer_info[0].height;
+ stride = dfx_info->layer_info[0].stride;
int fd = open("/user/dpu_screen_cap_g0.bin", O_RDWR | O_CREAT, 0666);
if (fd < 0) {
printf("save /user/dpu_screen_cap_g0.bin stride[%u] height[%u] success!\n", stride, height);
}
-static td_void wstp_dpu_screen_cap_g1(td_void)
+static td_void wstp_dpu_screen_cap_g1_yuv_sp420(td_u32 y_addr, td_u32 y_h, td_u32 y_s)
{
- td_u32 y_addr, stride, w_h, height;
- uapi_reg_read(0x56031054, y_addr);
- uapi_reg_read(0x56031060, stride);
- uapi_reg_read(0x56031044, w_h);
-
- height = (w_h >> 16) + 1; // 16:index
- stride = stride & 0xFFFF;
- td_u32 y_size = stride * height;
- td_u32 uv_size = stride * uapi_byte_align(height, 16) / 2; // 16:index, 2:index
+ td_u32 y_size = y_s * y_h;
+ td_u32 uv_size = y_s * uapi_byte_align(y_h, 16) / 2; // 16:index, 2:index
td_u32 total_size = y_size + uv_size;
- int fd = open("/user/dpu_screen_cap_g1.yuv", O_RDWR | O_CREAT, 0666);
+ int fd = open("/user/dpu_g1_sp420.yuv", O_RDWR | O_CREAT, 0666);
if (fd < 0) {
- printf("open file failure!\n");
+ printf("open file dpu_g1_sp420 failure!\n");
return;
}
write(fd, (td_void *)(uintptr_t)y_addr, total_size);
close(fd);
+ printf("save /user/dpu_g1_sp420.yuv stride[%u] height[%u] success!\n", y_s, y_h);
+}
+
+static td_void wstp_dpu_screen_cap_g1_yuv_p420(td_u32 y_addr, td_u32 y_w, td_u32 y_h, td_u32 y_s)
+{
+ td_u32 uv_addr = y_addr + y_s * y_h;
+ td_u32 uv_w, uv_h, uv_s;
+ uv_w = y_w / 2; // 2:index
+ uv_h = uapi_byte_align(y_h, 16) / 2; // 16: index 2:index
+ uv_s = y_s;
+
+ int fd = open("/user/dpu_g1_planar420.yuv", O_RDWR | O_CREAT, 0666);
+ if (fd < 0) {
+ printf("open file dpu_g1_planar420 failure!\n");
+ return;
+ }
+
+ // save_y_data
+ td_char *addr = (td_char *)(uintptr_t)y_addr;
+ for (td_u32 i = 0; i < y_h; i++) {
+ write(fd, addr, y_w);
+ addr += y_s;
+ }
+
+ // save_u_data
+ const td_u32 uv_max_len = 640;
+ char *uv_data = malloc(uv_w);
+ if (uv_data == NULL) {
+ printf("malloc fail for screen_cap g1 size = %u", uv_w);
+ return;
+ }
+
+ addr = (char *)(uintptr_t)uv_addr;
+ for (td_u32 i = 0; i < uv_h; i++) {
+ for (td_u32 j = 0; j < uv_w; j++) {
+ uv_data[j] = addr[2 * j + 1]; /* 2 is index */
+ }
+ write(fd, uv_data, uv_w);
+ addr += uv_s;
+ }
+
+ // save_v_data
+ addr = (char *)(uintptr_t)uv_addr;
+ for (td_u32 i = 0; i < uv_h; i++) {
+ for (td_u32 j = 0; j < uv_w; j++) {
+ uv_data[j] = addr[2 * j + 0]; /* 2 is index */
+ }
+ write(fd, uv_data, uv_w);
+ addr += uv_s;
+ }
- printf("save /user/dpu_screen_cap_g1.yuv stride[%u] height[%u] success!\n", stride, height);
+ close(fd);
+ free(uv_data);
+ printf("save /user/dpu_g1_planar420.yuv y_w/h/s:[%u/%u/%u] uv_w/h/s:[%u/%u/%u]success!\n",
+ y_w, y_h, y_s, uv_w, uv_h, uv_s);
}
+static td_void wstp_dpu_screen_cap_g1(td_void)
+{
+ td_u32 y_addr, y_w, y_h, y_s;
+ dpu_dfx_info *dfx_info = dpu_dfx_get_info();
+
+ y_addr = dfx_info->layer_info[1].phy_addr;
+ y_w = dfx_info->layer_info[1].width;
+ y_h = dfx_info->layer_info[1].height;
+ y_s = dfx_info->layer_info[1].stride;
+
+ wstp_dpu_screen_cap_g1_yuv_sp420(y_addr, y_h, y_s);
+ wstp_dpu_screen_cap_g1_yuv_p420(y_addr, y_w, y_h, y_s);
+}
static td_void wstp_gpu_screen_cap(int argc, const char *argv[])
{
dfx_show_layer_proc(argc - 1, argv + 1);
} else if (strcmp((char *)argv[0], "dpu_print") == 0) {\r
dfx_dpu_print(argc - 1, argv + 1);\r
+ } else if (strcmp((char *)argv[0], "dpu_print_reg") == 0) {
+ print_mipi_and_dpu_reg(argc - 1, argv + 1);
} else if (strcmp((char *)argv[0], "dpu_save_fb") == 0) {
dfx_dpu_save_fb_enable(argc - 1, argv + 1);
} else if (strcmp((char *)argv[0], "vau_proc") == 0) {\r
vau_dfx_proc_read(argc - 1, argv + 1);\r
+ } else if (strcmp((char *)argv[0], "vau_api_print") == 0) {
+ vau_dfx_enable_api_print(argc - 1, argv + 1);
} else if (strcmp((char *)argv[0], "jpeg_proc") == 0) {\r
#ifdef SUPPORT_GPU_JPEG\r
jpeg_dfx_proc_read(argc - 1, argv + 1);\r
\r
#define MEDIA_AT_MSG_COUNT 16\r
\r
-static unsigned long g_media_at_queue;\r
+static unsigned long g_media_at_queue = 0xFFFFFFFF;\r
\r
void media_at_task_queue_init(void)\r
{\r
ElementName *elementName = OHOS::AbilityMsClient::GetInstance().GetTopAbility();
WEARABLE_LOGI(WEARABLE_LOG_MODULE_APP, "OHOSFWK ATCMD Stop %s\n", elementName->bundleName);
OHOS::AbilityMsClient::GetInstance().ForceStop(elementName->bundleName);
-
+ FreeElement(elementName);
return ERRCODE_SUCC;
}
return ERRCODE_FAIL;
}
- if (argc != 1) {
+ if (argc > 2) {
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "OHOSFWK ATCMD Installing Package Failed\n");
return ERRCODE_FAIL;
}
-
- InstallParam installParam = { .installLocation = 1, .keepData = false };
+ InstallParam installParam = { .installLocation = 1, .keepData = true };
+ if (strcmp("rmdata", (char*)argv[1]) == 0) {
+ installParam.keepData = false;
+ }
OHOS::BundleMsClient::GetInstance().Install((char*)argv[0], &installParam, ReceiveCallback);
return ERRCODE_SUCC;
InstallParam installParam = { .installLocation = 1, .keepData = false };
OHOS::BundleMsClient::GetInstance().Uninstall(bundleName, &installParam, ReceiveCallback);
-
+ FreeElement(topAbility);
return ERRCODE_SUCC;
}
'pack_brandy_native_js': ['brandy-ssb', 'brandy-native-js-r', 'brandy-native-js'],
'pack_brandy_native_js_user': ['brandy-ssb', 'brandy-native-js-r', 'brandy-native-js-user'],
'pack_brandy_xts': ['brandy-ssb', 'brandy-xts-r', 'brandy-xts'],
-
'brandy_all': ['brandy-ssb',
'brandy-target1', 'brandy-target3', 'brandy-target4', 'brandy-target5', 'brandy-native-js', 'brandy-native-js-user', 'brandy-xts',
'brandy-target1-r', 'brandy-target3-r', 'brandy-target4-r', 'brandy-target5-r', 'brandy-native-js-r', 'brandy-xts-r',
#define DTCM_PMP_LENGTH 0x80000\r
\r
typedef enum {\r
- BOOTROM_IDX = 0,\r
- ITCM_IDX = 1,\r
- ITCM_SECOND_IDX = 2,\r
- DTCM_IDX = 3,\r
- L2RAM_DSP_IDX = 4,\r
- L2RAM_GPU_IDX = 5,\r
+ BOOTROM_IDX = 0,\r
+ ITCM_IDX = 1,\r
+ ITCM_SECOND_IDX = 2,\r
+ DTCM_IDX = 3,\r
+ L2RAM_IDX = 4,\r
+ SHARE_MEM_IDX = 5,\r
+ BT_RAM_APP_MAPPING_IDX = 6,\r
+ REG_ADDR_0_IDX = 7, /* reg 0x5x */\r
+ REG_ADDR_1_IDX = 8, /* reg 0xa3 */\r
+ CPU_ADDR_IDX = 9, /* reg 0xa3 */\r
#if defined(CONFIG_PSRAM_SUPPORT) || defined(TEST_SUITE)\r
PSRAM_IDX,\r
PSRAM_GPU_IDX,\r
PSRAM_SECOND_IDX,\r
#endif\r
NOR_FLASH_IDX,\r
+ BACKGROUND_IDX = 15,\r
MAX_REGION_NUM\r
} region_index_t;\r
\r
\r
static void pmp_init_config(void)\r
{\r
- /* bootrom 不可读不可写不可执行 */\r
+ /* bootrom 可读不可写不可执行 */\r
g_region_attr[BOOTROM_IDX].idx = BOOTROM_IDX;\r
g_region_attr[BOOTROM_IDX].addr = ROM_START;\r
- g_region_attr[BOOTROM_IDX].size = BOOTROM_PMP_LENGTH;\r
+ g_region_attr[BOOTROM_IDX].size = 0x100;\r
g_region_attr[BOOTROM_IDX].conf.pmp_attr = PMP_ATTR_NO_BUFFERABLE_AND_NO_CACHEABLE;\r
g_region_attr[BOOTROM_IDX].conf.rwx_permission = (rwx_permission_t)PMPCFG_READ_ONLY_NEXECUTE;\r
g_region_attr[BOOTROM_IDX].conf.addr_match = PMPCFG_ADDR_MATCH_NAPOT;\r
g_region_attr[DTCM_IDX].conf.addr_match = PMPCFG_ADDR_MATCH_NAPOT;\r
g_region_attr[DTCM_IDX].conf.lock = true;\r
\r
- /* DSP L2MEM 可读可执行可写 打开cache属性 */\r
- g_region_attr[L2RAM_DSP_IDX].idx = L2RAM_DSP_IDX;\r
- g_region_attr[L2RAM_DSP_IDX].addr = L2MEM_DSP_ADDR_START;\r
- g_region_attr[L2RAM_DSP_IDX].size = L2MEM_DSP_ADDR_LEN;\r
-#ifdef MEMORY_MINI\r
- g_region_attr[L2RAM_DSP_IDX].conf.pmp_attr = PMP_ATTR_NO_BUFFERABLE_AND_NO_CACHEABLE;\r
-#else\r
- g_region_attr[L2RAM_DSP_IDX].conf.pmp_attr = PMP_ATTR_WRITEBACK_RWALLOCATE;\r
-#endif\r
- g_region_attr[L2RAM_DSP_IDX].conf.rwx_permission = (rwx_permission_t)PMPCFG_RW_EXECUTE;\r
- g_region_attr[L2RAM_DSP_IDX].conf.addr_match = PMPCFG_ADDR_MATCH_NAPOT;\r
- g_region_attr[L2RAM_DSP_IDX].conf.lock = true;\r
-\r
- /* GPU L2MEM 可读可执行可写 打开cache属性 */\r
- g_region_attr[L2RAM_GPU_IDX].idx = L2RAM_GPU_IDX;\r
- g_region_attr[L2RAM_GPU_IDX].addr = L2MEM_GPU_ADDR_START;\r
- g_region_attr[L2RAM_GPU_IDX].size = L2MEM_GPU_ADDR_LEN;\r
-#ifdef MEMORY_MINI\r
- g_region_attr[L2RAM_GPU_IDX].conf.pmp_attr = PMP_ATTR_NO_BUFFERABLE_AND_NO_CACHEABLE;\r
-#else\r
- g_region_attr[L2RAM_GPU_IDX].conf.pmp_attr = PMP_ATTR_WRITEBACK_RWALLOCATE;\r
-#endif\r
- g_region_attr[L2RAM_GPU_IDX].conf.rwx_permission = (rwx_permission_t)PMPCFG_RW_EXECUTE;\r
- g_region_attr[L2RAM_GPU_IDX].conf.addr_match = PMPCFG_ADDR_MATCH_NAPOT;\r
- g_region_attr[L2RAM_GPU_IDX].conf.lock = true;\r
+ /* L2MEM 可读可执行可写 no cache属性 */\r
+ g_region_attr[L2RAM_IDX].idx = L2RAM_IDX;\r
+ g_region_attr[L2RAM_IDX].addr = 0x60000000;\r
+ g_region_attr[L2RAM_IDX].size = 0x2000000;\r
+ g_region_attr[L2RAM_IDX].conf.pmp_attr = PMP_ATTR_NO_BUFFERABLE_AND_NO_CACHEABLE;\r
+ g_region_attr[L2RAM_IDX].conf.rwx_permission = (rwx_permission_t)PMPCFG_RW_EXECUTE;\r
+ g_region_attr[L2RAM_IDX].conf.addr_match = PMPCFG_ADDR_MATCH_NAPOT;\r
+ g_region_attr[L2RAM_IDX].conf.lock = true;\r
+\r
+ /* SHARE_MEM_IDX 可读可写不可执行 不打开cache属性 */\r
+ g_region_attr[SHARE_MEM_IDX].idx = SHARE_MEM_IDX;\r
+ g_region_attr[SHARE_MEM_IDX].addr = 0x87000000;\r
+ g_region_attr[SHARE_MEM_IDX].size = 0x20000;\r
+ g_region_attr[SHARE_MEM_IDX].conf.pmp_attr = PMP_ATTR_NO_BUFFERABLE_AND_NO_CACHEABLE;\r
+ g_region_attr[SHARE_MEM_IDX].conf.rwx_permission = (rwx_permission_t)PMPCFG_RW_EXECUTE;\r
+ g_region_attr[SHARE_MEM_IDX].conf.addr_match = PMPCFG_ADDR_MATCH_NAPOT;\r
+ g_region_attr[SHARE_MEM_IDX].conf.lock = true;\r
+\r
+ /* BT_RAM_APP_MAPPING_IDX 可读可写不可执行 不打开cache属性 */\r
+ g_region_attr[BT_RAM_APP_MAPPING_IDX].idx = BT_RAM_APP_MAPPING_IDX;\r
+ g_region_attr[BT_RAM_APP_MAPPING_IDX].addr = 0xA6000000;\r
+ g_region_attr[BT_RAM_APP_MAPPING_IDX].size = 0x200000;\r
+ g_region_attr[BT_RAM_APP_MAPPING_IDX].conf.pmp_attr = PMP_ATTR_DEVICE_NO_BUFFERABLE;\r
+ g_region_attr[BT_RAM_APP_MAPPING_IDX].conf.rwx_permission = (rwx_permission_t)PMPCFG_RW_NEXECUTE;\r
+ g_region_attr[BT_RAM_APP_MAPPING_IDX].conf.addr_match = PMPCFG_ADDR_MATCH_NAPOT;\r
+ g_region_attr[BT_RAM_APP_MAPPING_IDX].conf.lock = true;\r
+\r
+ /* REG_ADDR_0_IDX 可读可写不可执行 不打开cache属性 */\r
+ g_region_attr[REG_ADDR_0_IDX].idx = REG_ADDR_0_IDX;\r
+ g_region_attr[REG_ADDR_0_IDX].addr = 0x50000000;\r
+ g_region_attr[REG_ADDR_0_IDX].size = 0x10000000;\r
+ g_region_attr[REG_ADDR_0_IDX].conf.pmp_attr = PMP_ATTR_DEVICE_NO_BUFFERABLE;\r
+ g_region_attr[REG_ADDR_0_IDX].conf.rwx_permission = (rwx_permission_t)PMPCFG_RW_NEXECUTE;\r
+ g_region_attr[REG_ADDR_0_IDX].conf.addr_match = PMPCFG_ADDR_MATCH_NAPOT;\r
+ g_region_attr[REG_ADDR_0_IDX].conf.lock = true;\r
+\r
+ /* REG_ADDR_1_IDX 可读可写不可执行 不打开cache属性 */\r
+ g_region_attr[REG_ADDR_1_IDX].idx = REG_ADDR_1_IDX;\r
+ g_region_attr[REG_ADDR_1_IDX].addr = 0xA3000000;\r
+ g_region_attr[REG_ADDR_1_IDX].size = 0x10000;\r
+ g_region_attr[REG_ADDR_1_IDX].conf.pmp_attr = PMP_ATTR_DEVICE_NO_BUFFERABLE;\r
+ g_region_attr[REG_ADDR_1_IDX].conf.rwx_permission = (rwx_permission_t)PMPCFG_RW_NEXECUTE;\r
+ g_region_attr[REG_ADDR_1_IDX].conf.addr_match = PMPCFG_ADDR_MATCH_NAPOT;\r
+ g_region_attr[REG_ADDR_1_IDX].conf.lock = true;\r
+\r
+ /* CPU_ADDR_IDX 可读可写不可执行 不打开cache属性 */\r
+ g_region_attr[CPU_ADDR_IDX].idx = CPU_ADDR_IDX;\r
+ g_region_attr[CPU_ADDR_IDX].addr = 0xB0000000;\r
+ g_region_attr[CPU_ADDR_IDX].size = 0x10000000;\r
+ g_region_attr[CPU_ADDR_IDX].conf.pmp_attr = PMP_ATTR_DEVICE_NO_BUFFERABLE;\r
+ g_region_attr[CPU_ADDR_IDX].conf.rwx_permission = (rwx_permission_t)PMPCFG_RW_NEXECUTE;\r
+ g_region_attr[CPU_ADDR_IDX].conf.addr_match = PMPCFG_ADDR_MATCH_NAPOT;\r
+ g_region_attr[CPU_ADDR_IDX].conf.lock = true;\r
\r
#if defined(CONFIG_PSRAM_SUPPORT) || defined(TEST_SUITE)\r
/* PSRAM 第一段 可读可写不可执行 打开cache属性 */\r
g_region_attr[PSRAM_IDX].idx = PSRAM_IDX;\r
g_region_attr[PSRAM_IDX].addr = PSRAM_ADDR_START;\r
g_region_attr[PSRAM_IDX].size = PSRAM_ADDR_LEN;\r
- g_region_attr[PSRAM_IDX].conf.pmp_attr = PMP_ATTR_WRITEBACK_NO_ALLOCATE;\r
+ g_region_attr[PSRAM_IDX].conf.pmp_attr = PMP_ATTR_WRITEBACK_RWALLOCATE;\r
g_region_attr[PSRAM_IDX].conf.rwx_permission = (rwx_permission_t)PMPCFG_RW_NEXECUTE;\r
g_region_attr[PSRAM_IDX].conf.addr_match = PMPCFG_ADDR_MATCH_NAPOT;\r
g_region_attr[PSRAM_IDX].conf.lock = true;\r
g_region_attr[NOR_FLASH_IDX].conf.rwx_permission = (rwx_permission_t)PMPCFG_READ_ONLY_EXECUTE;\r
g_region_attr[NOR_FLASH_IDX].conf.addr_match = PMPCFG_ADDR_MATCH_NAPOT;\r
g_region_attr[NOR_FLASH_IDX].conf.lock = true;\r
+\r
+ /* BACKGROUND_IDX 不可读不可写不可执行 */\r
+ g_region_attr[BACKGROUND_IDX].idx = BACKGROUND_IDX;\r
+ g_region_attr[BACKGROUND_IDX].addr = 0x0;\r
+ g_region_attr[BACKGROUND_IDX].size = 0xFFFFFFFF; /* 4GB */\r
+ g_region_attr[BACKGROUND_IDX].conf.pmp_attr = PMP_ATTR_DEVICE_NO_BUFFERABLE;\r
+ g_region_attr[BACKGROUND_IDX].conf.rwx_permission = (rwx_permission_t)PMPCFG_NO_ACCESS;\r
+ g_region_attr[BACKGROUND_IDX].conf.addr_match = PMPCFG_ADDR_MATCH_NAPOT;\r
+ g_region_attr[BACKGROUND_IDX].conf.lock = true;\r
}\r
\r
void pmp_init(void)\r
msg_size = msg_pkt_align_up(msg_size);
if (buf_size < msg_size) {
sap_err_log_u32(msg_size);
+ (td_void)ring_buf_flush(msg_inst->shrb_buf.data_buf);
return ERR_SYS_BUF_UNDERFLOW;
}
#define SAP_MSG_TASK_SIZE 0xB00
#define SAP_MSG_TASK_NAME "sap_msg"
-#define SAP_MSG_EVENT_NUM 64
+#define SAP_MSG_EVENT_NUM 128
#define SAP_MSG_EVENT_SIZE sizeof(td_u16)
#define SAP_MSG_QUEUE_TIMEOUT 0 /* Set 0 for ISR */
#define SAP_MSG_WAIT_FOREVER 0xFFFFFFFF
return EXT_ERR_SUCCESS;
}
+bool uapi_mipi_tx_is_in_ulps(void)
+{
+ mipi_tx_lane_state_t clk_lane = {};
+ mipi_tx_lane_state_t data_lane0 = {};
+ mipi_tx_hal_get_lane_state(MIPI_TX_LANE_DATA0, &data_lane0);
+ mipi_tx_hal_get_lane_state(MIPI_TX_LANE_CLK, &clk_lane);
+ mipi_tx_lane_status clk_stat = mipi_tx_get_lane_state(&clk_lane);
+ mipi_tx_lane_status data0_stat = mipi_tx_get_lane_state(&data_lane0);
+
+ bool is_in_ulps_status = false;
+
+ char *lane_mode[] = {"non_idle", "idle", "sdlp", "ulps"};
+ if ((clk_stat == MIPI_TX_LANE_STATE_ULPS) || (data0_stat == MIPI_TX_LANE_STATE_ULPS)) {
+ printf("clk_stat: %s data0_stat: %s\n", lane_mode[clk_stat], lane_mode[data0_stat]);
+ is_in_ulps_status = true;
+ }
+
+ return is_in_ulps_status;
+}
+
#ifdef __cplusplus
#if __cplusplus
}
uint32_t mipi_tx_partial_refresh(sync_info_t *dev_sync);
uint32_t mipi_tx_proc_show(uint32_t s);
+bool uapi_mipi_tx_is_in_ulps(void);
#endif
g_mmc_cur_info.emmc_cclk_reg = readw(EMMC_CCLK_DIV_REG);
g_mmc_cur_info.emmc_div_reg = readw(EMMC_DIV_REG);
g_mmc_cur_info.sd_bus_reg = readw(SDIO_BUS_CGDIV_REG);
- g_mmc_cur_info.mbiu_ctrl = readw(SDHCI_AXI_MBIIU_CTRL);
+ g_mmc_cur_info.mbiu_ctrl = readw(MBIIU_CTRL);
g_mmc_cur_info.host_ctrl1 = readb(HOST_CTRL1);
g_mmc_cur_info.host_ctrl2 = readw(HOST_CTRL2);
+
#if EMMC_BOARD_DEBUG_ON
PRINT("emmc save sdiom_reg=%x, emmc_cclk_reg=%x, emmc_div_reg=%x, timing=%d, phase=%d, bus_width=%d\r\n",
g_mmc_cur_info.sdiom_clk_reg, g_mmc_cur_info.emmc_cclk_reg, g_mmc_cur_info.emmc_div_reg,
static uint32_t get_pmp_napot_size(uint32_t value)
{
+ if (value == 0xFFFFFFFF) {
+ return 0x7FFFFFFF;
+ }
return ((value >> 1) - 1);
}
isb();\r
reg16_write(CFG_CACHE2HABM_OVER_TIME_H_REG, XIP_CACHE_OVER_TIME);\r
\r
+ reg16_write(CFG_XIP_OPI_READ_OVER_TIME_L_REG, 0xFFFF);\r
+ reg16_write(CFG_XIP_OPI_READ_OVER_TIME_H_REG, 0xFFFF);\r
+ reg16_write(CFG_XIP_WRITE_OVER_TIME_L_REG, 0xFFFF);\r
+ reg16_write(CFG_XIP_WRITE_OVER_TIME_H_REG, 0xFFFF);\r
+\r
+ reg16_setbit(XIP_WRITE_READ_ERROR_RESP_MASK_REG, 0x1);\r
+\r
for (uint32_t i = 0 ; i < g_psram_device_parm[g_psram_device].xip_param_num; i++) {\r
psram_device_e psramdevice = g_psram_device;\r
reg32_write((uintptr_t)((g_psram_device_parm[psramdevice].xip_param)[i].addr),\r
uint32_t irq_sts = osal_irq_lock();
uint8_t soft_rtc_num = g_rtcs_manager[index].soft_rtc_num;
for (uint32_t i = 0; i < soft_rtc_num; i++) {
+ if (g_rtcs_manager[index].rtcs[i].is_run == false) {
+ continue;
+ }
+
if (g_rtcs_manager[index].rtcs[i].cycle <= update_amount_cycle) {
g_rtcs_manager[index].rtcs[i].cycle = 0;
- if (g_rtcs_manager[index].rtcs[i].is_run == true) {
- has_new_rtc = true;
- }
+ has_new_rtc = true;
} else {
g_rtcs_manager[index].rtcs[i].cycle -= update_amount_cycle;
}
} else {\r
hal_xip_reg_cfg_flash_sel_set_flash_sel(xip_index, 0);\r
}\r
- hal_xip_reg_xip_read_error_resp_mask_set_all(xip_index, 0);\r
+ hal_xip_reg_xip_read_error_resp_mask_set_all(xip_index, 0xF);\r
/* chip_libra */\r
#if defined(CONFIG_XIP_ENABLE_READ_OVERTIME)\r
hal_xip_reg_cfg_xip_read_over_time_l_set_data(xip_index, 0xFFFF);\r
void hal_xip_disable(xip_id_t xip_index)\r
{\r
uint32_t irqs = osal_irq_lock();\r
+ osal_dsb();\r
+ osal_isb();\r
hal_xip_reg_xip_read_qspi_enable_set_read_qspi_enable(xip_index, 0);\r
while (hal_xip_reg_xip_read_qspi_enable_get_read_qspi_enable(xip_index) != 0) { }\r
if ((hal_xip_reg_xip_read_qspi_enable_get_read_qspi_enable(0) ||\r
hal_xip_reg_xip_read_qspi_enable_get_read_qspi_enable(1)) == 0) {\r
hal_xip_reg_xip_cache_en_set_cache_en(0);\r
}\r
+ osal_dsb();\r
+ osal_isb();\r
osal_irq_restore(irqs);\r
}\r
\r
{
xip_write_read_error_resp_mask_data_t xip_write_read_error_resp_mask;
xip_write_read_error_resp_mask.d32 = val;
- g_xip_regs->xip_cache_error_resp_mask = xip_write_read_error_resp_mask.d32;
+ g_xip_regs->xip_write_read_error_resp_mask = xip_write_read_error_resp_mask.d32;
}
/**
<MSG STRUCTURE="diag_log_msg0" NAME="OnBackgroundDone clean launcher record data @ability_service.cpp(492),INFO" ID="0xe01e0f65" />
<MSG STRUCTURE="diag_log_msg0" NAME="Js app exit, but has no js app. @ability_service.cpp(499),WARNING" ID="0xe01e0f9b" />
<MSG STRUCTURE="diag_log_msg1" NAME="OnDestroyDone [%u] @ability_service.cpp(504),INFO" ID="0xe01e0fc5" />
- <MSG STRUCTURE="diag_log_msg0" NAME="AbilityService::SchedulerLifecycleDone state: STATE_ACTIVE @ability_service.cpp(616),INFO" ID="0xe01e1345" />
- <MSG STRUCTURE="diag_log_msg0" NAME="AbilityService::SchedulerLifecycleDone state: STATE_BACKGROUND @ability_service.cpp(621),INFO" ID="0xe01e136d" />
- <MSG STRUCTURE="diag_log_msg0" NAME="AbilityService::SchedulerLifecycleDone state: STATE_UNINITIALIZED @ability_service.cpp(626),INFO" ID="0xe01e1395" />
- <MSG STRUCTURE="diag_log_msg0" NAME="AbilityService::SendGraphicTEEventToJsAbility topRecord is not js!! @ability_service.cpp(667),ERROR" ID="0xe01e14da" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="AbilityService::SchedulerLifecycleDone state: STATE_ACTIVE @ability_service.cpp(617),INFO" ID="0xe01e134d" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="AbilityService::SchedulerLifecycleDone state: STATE_BACKGROUND @ability_service.cpp(622),INFO" ID="0xe01e1375" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="AbilityService::SchedulerLifecycleDone state: STATE_UNINITIALIZED @ability_service.cpp(627),INFO" ID="0xe01e139d" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="AbilityService::SendGraphicTEEventToJsAbility topRecord is not js!! @ability_service.cpp(668),ERROR" ID="0xe01e14e2" />
</MSG_LOG>
\ No newline at end of file
<MSG_LOG><MSG STRUCTURE="diag_log_msg0" NAME="InitAppSysCmd aa! @appsys_ams_cmd.cpp(53),INFO" ID="0xe02201ad" />
<MSG STRUCTURE="diag_log_msg0" NAME="topAbility is null @appsys_ams_cmd.cpp(82),ERROR" ID="0xe0220292" />
<MSG STRUCTURE="diag_log_msg0" NAME="bundleName is not top active @appsys_ams_cmd.cpp(87),ERROR" ID="0xe02202ba" />
- <MSG STRUCTURE="diag_log_msg0" NAME="aa dump argc 2 only support topAbility, ERR!!! @appsys_ams_cmd.cpp(99),ERROR" ID="0xe022031a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="aa dump topAbility is native Launcher, ERR!!! @appsys_ams_cmd.cpp(105),ERROR" ID="0xe022034a" />
- <MSG STRUCTURE="diag_log_msg1" NAME="cmd_aa dump topAbilityInfo bundleName = %s @appsys_ams_cmd.cpp(126),DBG" ID="0xe02203f6" />
- <MSG STRUCTURE="diag_log_msg1" NAME="cmd_aa dump topAbilityInfo dataPath = %s @appsys_ams_cmd.cpp(127),DBG" ID="0xe02203fe" />
- <MSG STRUCTURE="diag_log_msg1" NAME="cmd_aa dump topAbilityInfo srcPath = %s @appsys_ams_cmd.cpp(128),DBG" ID="0xe0220406" />
- <MSG STRUCTURE="diag_log_msg0" NAME="cmd_aa start @appsys_ams_cmd.cpp(140),INFO" ID="0xe0220465" />
- <MSG STRUCTURE="diag_log_msg0" NAME="argc is not 2, ERR!!! @appsys_ams_cmd.cpp(142),ERROR" ID="0xe0220472" />
- <MSG STRUCTURE="diag_log_msg1" NAME="cmd_aa command = %s @appsys_ams_cmd.cpp(148),INFO" ID="0xe02204a5" />
- <MSG STRUCTURE="diag_log_msg0" NAME="cmd_aa no correct cmd!!! @appsys_ams_cmd.cpp(156),ERROR" ID="0xe02204e2" />
- <MSG STRUCTURE="diag_log_msg0" NAME="cmd_aa end @appsys_ams_cmd.cpp(159),INFO" ID="0xe02204fd" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="aa dump argc 2 only support topAbility, ERR!!! @appsys_ams_cmd.cpp(100),ERROR" ID="0xe0220322" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="aa dump topAbility is native Launcher, ERR!!! @appsys_ams_cmd.cpp(106),ERROR" ID="0xe0220352" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="cmd_aa dump topAbilityInfo bundleName = %s @appsys_ams_cmd.cpp(127),DBG" ID="0xe02203fe" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="cmd_aa dump topAbilityInfo dataPath = %s @appsys_ams_cmd.cpp(128),DBG" ID="0xe0220406" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="cmd_aa dump topAbilityInfo srcPath = %s @appsys_ams_cmd.cpp(129),DBG" ID="0xe022040e" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="cmd_aa start @appsys_ams_cmd.cpp(141),INFO" ID="0xe022046d" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="argc is not 2, ERR!!! @appsys_ams_cmd.cpp(143),ERROR" ID="0xe022047a" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="cmd_aa command = %s @appsys_ams_cmd.cpp(149),INFO" ID="0xe02204ad" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="cmd_aa no correct cmd!!! @appsys_ams_cmd.cpp(157),ERROR" ID="0xe02204ea" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="cmd_aa end @appsys_ams_cmd.cpp(160),INFO" ID="0xe0220505" />
</MSG_LOG>
\ No newline at end of file
-<MSG_LOG><MSG STRUCTURE="diag_log_msg0" NAME="[BMS] Initialize is failed @bundlems_slite_client.cpp(154),ERROR" ID="0xe03004d2" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] Initialize is failed @bundlems_slite_client.cpp(169),ERROR" ID="0xe030054a" />
+<MSG_LOG><MSG STRUCTURE="diag_log_msg0" NAME="[BMS] Initialize is failed @bundlems_slite_client.cpp(178),ERROR" ID="0xe0300592" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] Initialize is failed @bundlems_slite_client.cpp(193),ERROR" ID="0xe030060a" />
</MSG_LOG>
\ No newline at end of file
<MSG STRUCTURE="diag_log_msg0" NAME="Invalid Join Style! @display_vau.c(732),ERROR" ID="0xcb1e16e2" />
<MSG STRUCTURE="diag_log_msg0" NAME="HandlePaintStyle failed. @display_vau.c(746),ERROR" ID="0xcb1e1752" />
<MSG STRUCTURE="diag_log_msg1" NAME="uapi_vau_render failure, ret = 0x%x! @display_vau.c(929),ERROR" ID="0xcb1e1d0a" />
- <MSG STRUCTURE="diag_log_msg1" NAME="uapi_vau_render failure, ret = 0x%x! @display_vau.c(999),ERROR" ID="0xcb1e1f3a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="RenderPath with invalid path. @display_vau.c(1131),ERROR" ID="0xcb1e235a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="One of fill and stroke in path attr should be set! @display_vau.c(1136),ERROR" ID="0xcb1e2382" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[%d] DispMalloc for tmpTarget1 failed @display_vau.c(1168),ERROR" ID="0xcb1e2482" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[%d] DispMalloc for tmpTarget2 failed @display_vau.c(1176),ERROR" ID="0xcb1e24c2" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[%d] RenderPathInternal failed @display_vau.c(1182),ERROR" ID="0xcb1e24f2" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[%d] RenderPatternInternal failed @display_vau.c(1187),ERROR" ID="0xcb1e251a" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[%d] BlendToSurface failed @display_vau.c(1192),ERROR" ID="0xcb1e2542" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[%d] BlendToSurface failed @display_vau.c(1197),ERROR" ID="0xcb1e256a" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[%d] RenderPathInternal failed @display_vau.c(1222),ERROR" ID="0xcb1e2632" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[%d] BlendImgToSurface failed @display_vau.c(1226),ERROR" ID="0xcb1e2652" />
- <MSG STRUCTURE="diag_log_msg1" NAME="uapi_vau_submit failure, ret = 0x%x! @display_vau.c(1273),ERROR" ID="0xcb1e27ca" />
- <MSG STRUCTURE="diag_log_msg0" NAME="gFuncs is null @display_vau.c(1285),ERROR" ID="0xcb1e282a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="memset_s gFuncs failed @display_vau.c(1291),ERROR" ID="0xcb1e285a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="VGU initializes successfully @display_vau.c(1310),INFO" ID="0xcb1e28f5" />
- <MSG STRUCTURE="diag_log_msg0" NAME="VGU uninitializes successfully @display_vau.c(1319),INFO" ID="0xcb1e293d" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="uapi_vau_render failure, ret = 0x%x! @display_vau.c(996),ERROR" ID="0xcb1e1f22" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="RenderPath with invalid path. @display_vau.c(1128),ERROR" ID="0xcb1e2342" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="One of fill and stroke in path attr should be set! @display_vau.c(1133),ERROR" ID="0xcb1e236a" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[%d] DispMalloc for tmpTarget1 failed @display_vau.c(1165),ERROR" ID="0xcb1e246a" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[%d] DispMalloc for tmpTarget2 failed @display_vau.c(1173),ERROR" ID="0xcb1e24aa" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[%d] RenderPathInternal failed @display_vau.c(1179),ERROR" ID="0xcb1e24da" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[%d] RenderPatternInternal failed @display_vau.c(1184),ERROR" ID="0xcb1e2502" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[%d] BlendToSurface failed @display_vau.c(1189),ERROR" ID="0xcb1e252a" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[%d] BlendToSurface failed @display_vau.c(1194),ERROR" ID="0xcb1e2552" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[%d] RenderPathInternal failed @display_vau.c(1219),ERROR" ID="0xcb1e261a" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[%d] BlendImgToSurface failed @display_vau.c(1223),ERROR" ID="0xcb1e263a" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="uapi_vau_submit failure, ret = 0x%x! @display_vau.c(1270),ERROR" ID="0xcb1e27b2" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="gFuncs is null @display_vau.c(1282),ERROR" ID="0xcb1e2812" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="memset_s gFuncs failed @display_vau.c(1288),ERROR" ID="0xcb1e2842" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="VGU initializes successfully @display_vau.c(1307),INFO" ID="0xcb1e28dd" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="VGU uninitializes successfully @display_vau.c(1316),INFO" ID="0xcb1e2925" />
</MSG_LOG>
\ No newline at end of file
<MSG STRUCTURE="diag_log_msg1" NAME="[BMS] bundle num is %d @gt_bundle_installer.cpp(108),INFO" ID="0xe0420365" />
<MSG STRUCTURE="diag_log_msg0" NAME="[BMS] bundle quantity exceeds the limit! @gt_bundle_installer.cpp(111),ERROR" ID="0xe042037a" />
<MSG STRUCTURE="diag_log_msg1" NAME="[BMS] APPVERI_AppVerify is %d @gt_bundle_installer.cpp(127),INFO" ID="0xe04203fd" />
- <MSG STRUCTURE="diag_log_msg1" NAME="VINCENTSS::GtBundleInstaller::Install path = %s @gt_bundle_installer.cpp(182),INFO" ID="0xe04205b5" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] create random str fail! @gt_bundle_installer.cpp(209),ERROR" ID="0xe042068a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="VINCENTSS::GtBundleInstaller::Install 0002 @gt_bundle_installer.cpp(213),INFO" ID="0xe04206ad" />
- <MSG STRUCTURE="diag_log_msg1" NAME="errorCode3 = %d @gt_bundle_installer.cpp(217),INFO" ID="0xe04206cd" />
- <MSG STRUCTURE="diag_log_msg0" NAME="VINCENTSS::GtBundleInstaller::Install 003 @gt_bundle_installer.cpp(225),INFO" ID="0xe042070d" />
- <MSG STRUCTURE="diag_log_msg0" NAME="VINCENTSS::GtBundleInstaller::ProcessBundleInstall 001 @gt_bundle_installer.cpp(259),INFO" ID="0xe042081d" />
- <MSG STRUCTURE="diag_log_msg1" NAME="errorCode1 = %d @gt_bundle_installer.cpp(264),INFO" ID="0xe0420845" />
- <MSG STRUCTURE="diag_log_msg0" NAME="VINCENTSS::GtBundleInstaller::ProcessBundleInstall 002 @gt_bundle_installer.cpp(270),INFO" ID="0xe0420875" />
- <MSG STRUCTURE="diag_log_msg1" NAME="errorCode2 = %d @gt_bundle_installer.cpp(274),INFO" ID="0xe0420895" />
- <MSG STRUCTURE="diag_log_msg1" NAME="errorCode3 = %d @gt_bundle_installer.cpp(288),INFO" ID="0xe0420905" />
- <MSG STRUCTURE="diag_log_msg1" NAME="errorCode4 = %d @gt_bundle_installer.cpp(305),INFO" ID="0xe042098d" />
- <MSG STRUCTURE="diag_log_msg1" NAME="errorCode5 = %d @gt_bundle_installer.cpp(313),INFO" ID="0xe04209cd" />
- <MSG STRUCTURE="diag_log_msg1" NAME="errorCode6 = %d @gt_bundle_installer.cpp(318),INFO" ID="0xe04209f5" />
- <MSG STRUCTURE="diag_log_msg1" NAME="errorCode7 = %d @gt_bundle_installer.cpp(329),INFO" ID="0xe0420a4d" />
- <MSG STRUCTURE="diag_log_msg1" NAME="errorCode8 = %d @gt_bundle_installer.cpp(336),INFO" ID="0xe0420a85" />
- <MSG STRUCTURE="diag_log_msg1" NAME="errorCode9 = %d @gt_bundle_installer.cpp(346),INFO" ID="0xe0420ad5" />
- <MSG STRUCTURE="diag_log_msg1" NAME="errorCode10 = %d @gt_bundle_installer.cpp(353),INFO" ID="0xe0420b0d" />
- <MSG STRUCTURE="diag_log_msg1" NAME="errorCode11 = %d @gt_bundle_installer.cpp(362),INFO" ID="0xe0420b55" />
- <MSG STRUCTURE="diag_log_msg1" NAME="errorCode12 = %d @gt_bundle_installer.cpp(368),INFO" ID="0xe0420b85" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] UpdateBundleInfo errorCode = %d @gt_bundle_installer.cpp(370),INFO" ID="0xe0420b95" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] srcRawFilePath is nullptr @gt_bundle_installer.cpp(390),ERROR" ID="0xe0420c32" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] rawfile is not exists! @gt_bundle_installer.cpp(395),INFO" ID="0xe0420c5d" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] dstRawFilePath is nullptr @gt_bundle_installer.cpp(403),ERROR" ID="0xe0420c9a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] frename rawfile fail! @gt_bundle_installer.cpp(409),ERROR" ID="0xe0420cca" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] transform js to bc when install, result is %d @gt_bundle_installer.cpp(556),INFO" ID="0xe0421165" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] ConvertResInfoToBundleInfo errorCode = %d @gt_bundle_installer.cpp(581),INFO" ID="0xe042122d" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] delete permissions, result is %d @gt_bundle_installer.cpp(815),INFO" ID="0xe042197d" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="VINCENTSS::GtBundleInstaller::Install path = %s @gt_bundle_installer.cpp(188),INFO" ID="0xe04205e5" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] create random str fail! @gt_bundle_installer.cpp(215),ERROR" ID="0xe04206ba" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="VINCENTSS::GtBundleInstaller::Install 0002 @gt_bundle_installer.cpp(219),INFO" ID="0xe04206dd" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="errorCode3 = %d @gt_bundle_installer.cpp(224),INFO" ID="0xe0420705" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="VINCENTSS::GtBundleInstaller::Install 003 @gt_bundle_installer.cpp(232),INFO" ID="0xe0420745" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="VINCENTSS::GtBundleInstaller::ProcessBundleInstall 001 @gt_bundle_installer.cpp(266),INFO" ID="0xe0420855" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="errorCode1 = %d @gt_bundle_installer.cpp(271),INFO" ID="0xe042087d" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="VINCENTSS::GtBundleInstaller::ProcessBundleInstall 002 @gt_bundle_installer.cpp(277),INFO" ID="0xe04208ad" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="errorCode2 = %d @gt_bundle_installer.cpp(281),INFO" ID="0xe04208cd" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="errorCode3 = %d @gt_bundle_installer.cpp(295),INFO" ID="0xe042093d" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="errorCode4 = %d @gt_bundle_installer.cpp(311),INFO" ID="0xe04209bd" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="errorCode5 = %d @gt_bundle_installer.cpp(319),INFO" ID="0xe04209fd" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="errorCode6 = %d @gt_bundle_installer.cpp(324),INFO" ID="0xe0420a25" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="errorCode7 = %d @gt_bundle_installer.cpp(335),INFO" ID="0xe0420a7d" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="errorCode8 = %d @gt_bundle_installer.cpp(342),INFO" ID="0xe0420ab5" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="errorCode9 = %d @gt_bundle_installer.cpp(354),INFO" ID="0xe0420b15" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="errorCode10 = %d @gt_bundle_installer.cpp(361),INFO" ID="0xe0420b4d" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="errorCode11 = %d @gt_bundle_installer.cpp(370),INFO" ID="0xe0420b95" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="errorCode12 = %d @gt_bundle_installer.cpp(376),INFO" ID="0xe0420bc5" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] UpdateBundleInfo errorCode = %d @gt_bundle_installer.cpp(378),INFO" ID="0xe0420bd5" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] srcRawFilePath is nullptr @gt_bundle_installer.cpp(398),ERROR" ID="0xe0420c72" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] rawfile is not exists! @gt_bundle_installer.cpp(403),INFO" ID="0xe0420c9d" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] dstRawFilePath is nullptr @gt_bundle_installer.cpp(411),ERROR" ID="0xe0420cda" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] frename rawfile fail! @gt_bundle_installer.cpp(417),ERROR" ID="0xe0420d0a" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] transform js to bc when install, result is %d @gt_bundle_installer.cpp(564),INFO" ID="0xe04211a5" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] ConvertResInfoToBundleInfo errorCode = %d @gt_bundle_installer.cpp(589),INFO" ID="0xe042126d" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] delete permissions, result is %d @gt_bundle_installer.cpp(823),INFO" ID="0xe04219bd" />
</MSG_LOG>
\ No newline at end of file
<MSG STRUCTURE="diag_log_msg0" NAME="[BMS] InstallPreBundle uninstallRecord is nullptr! @gt_bundle_manager_service.cpp(289),INFO" ID="0xe044090d" />
<MSG STRUCTURE="diag_log_msg0" NAME="[BMS] Pre install file path is invalid @gt_bundle_manager_service.cpp(302),ERROR" ID="0xe0440972" />
<MSG STRUCTURE="diag_log_msg0" NAME="[BMS] InstallAllSystemBundle InitAllAppInfo fail, list is nullptr @gt_bundle_manager_service.cpp(318),ERROR" ID="0xe04409f2" />
- <MSG STRUCTURE="diag_log_msg1" NAME="VINCENTSS::GtManagerService::ScanPackages = %s @gt_bundle_manager_service.cpp(374),INFO" ID="0xe0440bb5" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] ScanSystemApp InitAllAppInfo fail, list is nullptr @gt_bundle_manager_service.cpp(417),ERROR" ID="0xe0440d0a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] memset fail when initialize bundle name! @gt_bundle_manager_service.cpp(487),ERROR" ID="0xe0440f3a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] failed to copy bundle name! @gt_bundle_manager_service.cpp(492),ERROR" ID="0xe0440f62" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] malloc fail when reload third app! @gt_bundle_manager_service.cpp(502),ERROR" ID="0xe0440fb2" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] strcat fail when reload third app! @gt_bundle_manager_service.cpp(507),ERROR" ID="0xe0440fda" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] app path is not dir when reload third app! @gt_bundle_manager_service.cpp(513),ERROR" ID="0xe044100a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] app path is not third bundle path! @gt_bundle_manager_service.cpp(519),INFO" ID="0xe044103d" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] third bundle reload number is to MAX_THIRD_BUNDLE_NUMBER! @gt_bundle_manager_service.cpp(526),INFO" ID="0xe0441075" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] parse bundle attr fail! @gt_bundle_manager_service.cpp(567),ERROR" ID="0xe04411ba" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] reload bundle info fail!, isSystemApp is %d @gt_bundle_manager_service.cpp(682),ERROR" ID="0xe0441552" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] get installRecord fail when restart! @gt_bundle_manager_service.cpp(738),ERROR" ID="0xe0441712" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] TransformJsToBcWhenRestart jsEngineVer_ is nullptr! @gt_bundle_manager_service.cpp(745),ERROR" ID="0xe044174a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] create string object fail when restart! @gt_bundle_manager_service.cpp(753),ERROR" ID="0xe044178a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] add js engine version record fail when restart! @gt_bundle_manager_service.cpp(768),ERROR" ID="0xe0441802" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] refresh js engine version fail when restart! @gt_bundle_manager_service.cpp(776),ERROR" ID="0xe0441842" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] transform js to bc, result is %d @gt_bundle_manager_service.cpp(803),INFO" ID="0xe044191d" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] delete byte code, result is %d @gt_bundle_manager_service.cpp(806),INFO" ID="0xe0441935" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] add transform result record fail when restart! @gt_bundle_manager_service.cpp(819),ERROR" ID="0xe044199a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] refresh transform result record fail when restart! @gt_bundle_manager_service.cpp(825),ERROR" ID="0xe04419ca" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="VINCENTSS::GtManagerService::ScanPackages = %s @gt_bundle_manager_service.cpp(376),INFO" ID="0xe0440bc5" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] ScanSystemApp InitAllAppInfo fail, list is nullptr @gt_bundle_manager_service.cpp(419),ERROR" ID="0xe0440d1a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] memset fail when initialize bundle name! @gt_bundle_manager_service.cpp(489),ERROR" ID="0xe0440f4a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] failed to copy bundle name! @gt_bundle_manager_service.cpp(494),ERROR" ID="0xe0440f72" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] malloc fail when reload third app! @gt_bundle_manager_service.cpp(504),ERROR" ID="0xe0440fc2" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] strcat fail when reload third app! @gt_bundle_manager_service.cpp(509),ERROR" ID="0xe0440fea" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] app path is not dir when reload third app! @gt_bundle_manager_service.cpp(515),ERROR" ID="0xe044101a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] app path is not third bundle path! @gt_bundle_manager_service.cpp(521),INFO" ID="0xe044104d" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] third bundle reload number is to MAX_THIRD_BUNDLE_NUMBER! @gt_bundle_manager_service.cpp(528),INFO" ID="0xe0441085" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] parse bundle attr fail! @gt_bundle_manager_service.cpp(573),ERROR" ID="0xe04411ea" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] reload bundle info fail!, isSystemApp is %d @gt_bundle_manager_service.cpp(688),ERROR" ID="0xe0441582" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] get installRecord fail when restart! @gt_bundle_manager_service.cpp(744),ERROR" ID="0xe0441742" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] TransformJsToBcWhenRestart jsEngineVer_ is nullptr! @gt_bundle_manager_service.cpp(751),ERROR" ID="0xe044177a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] create string object fail when restart! @gt_bundle_manager_service.cpp(759),ERROR" ID="0xe04417ba" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] add js engine version record fail when restart! @gt_bundle_manager_service.cpp(774),ERROR" ID="0xe0441832" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] refresh js engine version fail when restart! @gt_bundle_manager_service.cpp(782),ERROR" ID="0xe0441872" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] transform js to bc, result is %d @gt_bundle_manager_service.cpp(809),INFO" ID="0xe044194d" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[BMS] delete byte code, result is %d @gt_bundle_manager_service.cpp(812),INFO" ID="0xe0441965" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] add transform result record fail when restart! @gt_bundle_manager_service.cpp(825),ERROR" ID="0xe04419ca" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[BMS] refresh transform result record fail when restart! @gt_bundle_manager_service.cpp(831),ERROR" ID="0xe04419fa" />
</MSG_LOG>
\ No newline at end of file
<MSG STRUCTURE="diag_log_msg0" NAME="[BMS] ExtractHapProfile failed when excute parse bundle! @gt_bundle_parser.cpp(100),ERROR" ID="0xe0460322" />
<MSG STRUCTURE="diag_log_msg0" NAME="[BMS] cJSON_Parse failed when excute parse bundle! @gt_bundle_parser.cpp(108),ERROR" ID="0xe0460362" />
<MSG STRUCTURE="diag_log_msg0" NAME="[BMS] cJSON_GetObjectItem failed when excute parse bundle! @gt_bundle_parser.cpp(116),ERROR" ID="0xe04603a2" />
- <MSG STRUCTURE="diag_log_msg0" NAME="SetModuleInfoDeviceType fail! @gt_bundle_parser.cpp(684),ERROR" ID="0xe0461562" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="SetModuleInfoDeviceType fail! @gt_bundle_parser.cpp(703),ERROR" ID="0xe04615fa" />
</MSG_LOG>
\ No newline at end of file
-<MSG_LOG><MSG STRUCTURE="diag_log_msg1" NAME="unsupported BlendMode: %u. @lite_m_gfx_engine.cpp(74),ERROR" ID="0xcb0e0252" />
- <MSG STRUCTURE="diag_log_msg1" NAME="unsupported color format: %d @lite_m_gfx_engine.cpp(118),ERROR" ID="0xcb0e03b2" />
- <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUCap failed! Invalid Capstyle! @lite_m_gfx_engine.cpp(131),ERROR" ID="0xcb0e041a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(162),ERROR" ID="0xcb0e0512" />
- <MSG STRUCTURE="diag_log_msg0" NAME="Fill operation failed. @lite_m_gfx_engine.cpp(193),ERROR" ID="0xcb0e060a" />
- <MSG STRUCTURE="diag_log_msg1" NAME="font weight %u was not support @lite_m_gfx_engine.cpp(305),ERROR" ID="0xcb0e098a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="VGUPathAppendData failed. @lite_m_gfx_engine.cpp(346),ERROR" ID="0xcb0e0ad2" />
- <MSG STRUCTURE="diag_log_msg0" NAME="VGUPathSetData failed. @lite_m_gfx_engine.cpp(357),ERROR" ID="0xcb0e0b2a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(384),ERROR" ID="0xcb0e0c02" />
- <MSG STRUCTURE="diag_log_msg0" NAME="RenderPath failed. @lite_m_gfx_engine.cpp(395),ERROR" ID="0xcb0e0c5a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(416),ERROR" ID="0xcb0e0d02" />
- <MSG STRUCTURE="diag_log_msg0" NAME="RenderPath failed. @lite_m_gfx_engine.cpp(427),ERROR" ID="0xcb0e0d5a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(443),ERROR" ID="0xcb0e0dda" />
- <MSG STRUCTURE="diag_log_msg0" NAME="RenderPath failed. @lite_m_gfx_engine.cpp(469),ERROR" ID="0xcb0e0eaa" />
- <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(484),ERROR" ID="0xcb0e0f22" />
- <MSG STRUCTURE="diag_log_msg0" NAME="RenderPath failed. @lite_m_gfx_engine.cpp(496),ERROR" ID="0xcb0e0f82" />
- <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(606),ERROR" ID="0xcb0e12f2" />
- <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(633),ERROR" ID="0xcb0e13ca" />
- <MSG STRUCTURE="diag_log_msg0" NAME="RenderBlur failed! @lite_m_gfx_engine.cpp(649),ERROR" ID="0xcb0e144a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="RenderBlit failed! @lite_m_gfx_engine.cpp(705),ERROR" ID="0xcb0e160a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="DrawTransform failed. Software can only process uncompressed data. @lite_m_gfx_engine.cpp(740),ERROR" ID="0xcb0e1722" />
- <MSG STRUCTURE="diag_log_msg0" NAME="vguFuncs_ is null! @lite_m_gfx_engine.cpp(795),ERROR" ID="0xcb0e18da" />
- <MSG STRUCTURE="diag_log_msg0" NAME="InitVgu or RenderClearRect is null! @lite_m_gfx_engine.cpp(799),ERROR" ID="0xcb0e18fa" />
- <MSG STRUCTURE="diag_log_msg0" NAME="VGUPathInit, VGUPathAppendData, VGUPathClear or RenderPath is nullptr! @lite_m_gfx_engine.cpp(806),ERROR" ID="0xcb0e1932" />
- <MSG STRUCTURE="diag_log_msg0" NAME="VGUPathInit, VGUPathAppendData, VGUPathClear or RenderPath is nullptr! @lite_m_gfx_engine.cpp(812),ERROR" ID="0xcb0e1962" />
- <MSG STRUCTURE="diag_log_msg0" NAME="InitVgu failed! @lite_m_gfx_engine.cpp(817),ERROR" ID="0xcb0e198a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="vguFuncs_ is null! @lite_m_gfx_engine.cpp(828),INFO" ID="0xcb0e19e5" />
- <MSG STRUCTURE="diag_log_msg0" NAME="DeinitVgu failed! @lite_m_gfx_engine.cpp(833),ERROR" ID="0xcb0e1a0a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="AllocBuffer failed. @lite_m_gfx_engine.cpp(852),ERROR" ID="0xcb0e1aa2" />
- <MSG STRUCTURE="diag_log_msg1" NAME="unsupported PixelFormat: %d @lite_m_gfx_engine.cpp(879),ERROR" ID="0xcb0e1b7a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="bufferInfo_ is not inited. @lite_m_gfx_engine.cpp(984),ERROR" ID="0xcb0e1ec2" />
- <MSG STRUCTURE="diag_log_msg1" NAME="set value: %d @lite_m_gfx_engine.cpp(1038),DBG" ID="0xcb0e2076" />
+<MSG_LOG><MSG STRUCTURE="diag_log_msg1" NAME="unsupported BlendMode: %u. @lite_m_gfx_engine.cpp(75),ERROR" ID="0xcb0e025a" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="unsupported color format: %d @lite_m_gfx_engine.cpp(119),ERROR" ID="0xcb0e03ba" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUCap failed! Invalid Capstyle! @lite_m_gfx_engine.cpp(132),ERROR" ID="0xcb0e0422" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(163),ERROR" ID="0xcb0e051a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="Fill operation failed. @lite_m_gfx_engine.cpp(194),ERROR" ID="0xcb0e0612" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="font weight %u was not support @lite_m_gfx_engine.cpp(306),ERROR" ID="0xcb0e0992" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="VGUPathAppendData failed. @lite_m_gfx_engine.cpp(347),ERROR" ID="0xcb0e0ada" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="VGUPathSetData failed. @lite_m_gfx_engine.cpp(358),ERROR" ID="0xcb0e0b32" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(385),ERROR" ID="0xcb0e0c0a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="RenderPath failed. Sync previous task. @lite_m_gfx_engine.cpp(397),ERROR" ID="0xcb0e0c6a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(418),ERROR" ID="0xcb0e0d12" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="RenderPath failed. Sync previous task. @lite_m_gfx_engine.cpp(430),ERROR" ID="0xcb0e0d72" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(446),ERROR" ID="0xcb0e0df2" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="RenderPath failed. Sync previous task. @lite_m_gfx_engine.cpp(473),ERROR" ID="0xcb0e0eca" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(488),ERROR" ID="0xcb0e0f42" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="RenderPath failed. Sync previous task. @lite_m_gfx_engine.cpp(501),ERROR" ID="0xcb0e0faa" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(611),ERROR" ID="0xcb0e131a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="Convert2VGUBuffer failed. @lite_m_gfx_engine.cpp(638),ERROR" ID="0xcb0e13f2" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="RenderBlur failed! @lite_m_gfx_engine.cpp(654),ERROR" ID="0xcb0e1472" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="ignore js syncHwDraw when native ui task is already running! @lite_m_gfx_engine.cpp(669),WARNING" ID="0xcb0e14eb" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="ignore native syncHwDraw when js ui task is already running! @lite_m_gfx_engine.cpp(675),WARNING" ID="0xcb0e151b" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="RenderBlit failed! @lite_m_gfx_engine.cpp(723),ERROR" ID="0xcb0e169a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="DrawTransform failed. Software can only process uncompressed data. @lite_m_gfx_engine.cpp(758),ERROR" ID="0xcb0e17b2" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="vguFuncs_ is null! @lite_m_gfx_engine.cpp(813),ERROR" ID="0xcb0e196a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="InitVgu or RenderClearRect is null! @lite_m_gfx_engine.cpp(817),ERROR" ID="0xcb0e198a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="VGUPathInit, VGUPathAppendData, VGUPathClear or RenderPath is nullptr! @lite_m_gfx_engine.cpp(824),ERROR" ID="0xcb0e19c2" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="VGUPathInit, VGUPathAppendData, VGUPathClear or RenderPath is nullptr! @lite_m_gfx_engine.cpp(830),ERROR" ID="0xcb0e19f2" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="InitVgu failed! @lite_m_gfx_engine.cpp(835),ERROR" ID="0xcb0e1a1a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="vguFuncs_ is null! @lite_m_gfx_engine.cpp(846),INFO" ID="0xcb0e1a75" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="DeinitVgu failed! @lite_m_gfx_engine.cpp(851),ERROR" ID="0xcb0e1a9a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="AllocBuffer failed. @lite_m_gfx_engine.cpp(870),ERROR" ID="0xcb0e1b32" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="unsupported PixelFormat: %d @lite_m_gfx_engine.cpp(897),ERROR" ID="0xcb0e1c0a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="bufferInfo_ is not inited. @lite_m_gfx_engine.cpp(1002),ERROR" ID="0xcb0e1f52" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="set value: %d @lite_m_gfx_engine.cpp(1056),DBG" ID="0xcb0e2106" />
</MSG_LOG>
\ No newline at end of file
<MSG_LOG><MSG STRUCTURE="diag_log_msg0" NAME="RenderBlit failed! @lv_draw_vgu.c(155),ERROR" ID="0xc94804da" />
<MSG STRUCTURE="diag_log_msg0" NAME="InitVgu failed! @lv_draw_vgu.c(196),ERROR" ID="0xc9480622" />
<MSG STRUCTURE="diag_log_msg0" NAME="DeinitVgu failed! @lv_draw_vgu.c(212),ERROR" ID="0xc94806a2" />
- <MSG STRUCTURE="diag_log_msg0" NAME="LvFillRect failed. @lv_draw_vgu.c(503),ERROR" ID="0xc9480fba" />
- <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(732),ERROR" ID="0xc94816e2" />
- <MSG STRUCTURE="diag_log_msg3" NAME="lv_draw_letter: glyph dsc. not found for U+%" PRIX32, letter);#if LV_USE_FONT_PLACEHOLDER/* draw placeholder */lv_area_t glyphCoords;lv_draw_rect_dsc_t rectDsc;lv_coord_t beginX = pos->x + glyphDsc.ofs_x;lv_coord_t beginY = pos->y + glyphDsc.ofs_y;lv_area_set(&glyphCoords, beginX, beginY, beginX + glyphDsc.box_w, beginY + glyphDsc.box_h);lv_draw_rect_dsc_init(&rectDsc);rectDsc.bg_opa = LV_OPA_MIN;rectDsc.outline_opa = LV_OPA_MIN;rectDsc.shadow_opa = LV_OPA_MIN;rectDsc.bg_img_opa = LV_OPA_MIN;rectDsc.border_color = dsc->color;rectDsc.border_width = 1;drawCtx->draw_rect(drawCtx, &rectDsc, &glyphCoords);#endif}return;}if ((glyphDsc.box_h == 0) || (glyphDsc.box_w == 0)) {return;}#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_HW_DRAW_LETTER);#endifRenderGlyphPath(drawCtx, dsc, pos, letter, &glyphDsc);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {pos->x, pos->y, letter};FrameTraceEnd(FRAME_TRACE_HW_DRAW_LETTER, &area);#endif#elseLvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_LETTER);#endiflv_draw_sw_letter(drawCtx, dsc, pos, letter);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {pos->x, pos->y, letter};FrameTraceEnd(FRAME_TRACE_SW_DRAW_LETTER, &area);#endif#endif}static void LvDrawLine(struct _lv_draw_ctx_t* drawCtx, const lv_draw_line_dsc_t* dsc,const lv_point_t* point1, const lv_point_t* point2){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_LINE);#endiflv_draw_sw_line(drawCtx, dsc, point1, point2);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {point1->x, point1->y, point2->x, point2->y};FrameTraceEnd(FRAME_TRACE_SW_DRAW_LINE, &area);#endif}static void LvDrawPolygon(lv_draw_ctx_t* drawCtx, const lv_draw_rect_dsc_t* dsc,const lv_point_t* points, uint16_t pointCnt){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_POLYGON);#endiflv_draw_sw_polygon(drawCtx, dsc, points, pointCnt);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {points->x, points->y, pointCnt, 0};FrameTraceEnd(FRAME_TRACE_SW_DRAW_POLYGON, &area);#endif}static void LvDrawBufferCopy(lv_draw_ctx_t* drawCtx,void* dstBuf, lv_coord_t dstStride, const lv_area_t* dstArea,void* srcBuf, lv_coord_t srcStride, const lv_area_t* srcArea){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_BUFCOPY);#endiflv_draw_sw_buffer_copy(drawCtx, dstBuf, dstStride, dstArea, srcBuf, srcStride, srcArea);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceEnd(FRAME_TRACE_SW_DRAW_BUFCOPY, dstArea);#endif}static struct _lv_draw_layer_ctx_t* LvDrawLayerCreate(struct _lv_draw_ctx_t* drawCtx,lv_draw_layer_ctx_t* layerCtx, lv_draw_layer_flags_t flags){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_LAYERC);#endifstruct _lv_draw_layer_ctx_t* ret = lv_draw_sw_layer_create(drawCtx, layerCtx, flags);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {flags, 0, 0, 0};FrameTraceEnd(FRAME_TRACE_SW_DRAW_LAYERC, &area);#endifreturn ret;}static void LvDrawLayerAdjust(struct _lv_draw_ctx_t* drawCtx, struct _lv_draw_layer_ctx_t* layerCtx,lv_draw_layer_flags_t flags){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_LAYERA);#endiflv_draw_sw_layer_adjust(drawCtx, layerCtx, flags);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {flags, 0, 0, 0};FrameTraceEnd(FRAME_TRACE_SW_DRAW_LAYERA, &area);#endif}static void LvDrawLayerBlend(struct _lv_draw_ctx_t* drawCtx, struct _lv_draw_layer_ctx_t* layerCtx,const lv_draw_img_dsc_t* dsc){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_LAYERB);#endiflv_draw_sw_layer_blend(drawCtx, layerCtx, dsc);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {dsc->resId, 0, 0, 0};FrameTraceEnd(FRAME_TRACE_SW_DRAW_LAYERB, &area);#endif}static void LvDrawLayerDestroy(lv_draw_ctx_t* drawCtx, lv_draw_layer_ctx_t* layerCtx){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_LAYERD);#endiflv_draw_sw_layer_destroy(drawCtx, layerCtx);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceEnd(FRAME_TRACE_SW_DRAW_LAYERD, NULL);#endif}void LvDrawVguCtxInit(struct _lv_disp_drv_t* drv, lv_draw_ctx_t* drawCtx){if (g_vguFuncs == NULL) {LV_LOGE("[%s: %d] module is not inited. @lv_draw_vgu.c(892),ERROR" ID="0xc9481be2" />
- <MSG STRUCTURE="diag_log_msg0" NAME="drawCtx is null. @lv_draw_vgu.c(961),ERROR" ID="0xc9481e0a" />
- <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(966),ERROR" ID="0xc9481e32" />
- <MSG STRUCTURE="diag_log_msg0" NAME="RenderBlur failed! @lv_draw_vgu.c(997),ERROR" ID="0xc9481f2a" />
- <MSG STRUCTURE="diag_log_msg1" NAME="unsupported color format: %u @lv_draw_vgu.c(1041),ERROR" ID="0xc948208a" />
- <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(1110),ERROR" ID="0xc94822b2" />
- <MSG STRUCTURE="diag_log_msg0" NAME="Not support mask @lv_draw_vgu.c(1117),ERROR" ID="0xc94822ea" />
- <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(1229),ERROR" ID="0xc948266a" />
- <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(1302),ERROR" ID="0xc94828b2" />
- <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(1353),ERROR" ID="0xc9482a4a" />
- <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(1375),ERROR" ID="0xc9482afa" />
- <MSG STRUCTURE="diag_log_msg0" NAME="VGUPathSetData failed. @lv_draw_vgu.c(1380),ERROR" ID="0xc9482b22" />
- <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(1393),ERROR" ID="0xc9482b8a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="RenderPath failed. @lv_draw_vgu.c(1418),ERROR" ID="0xc9482c52" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="LvFillRect failed. @lv_draw_vgu.c(506),ERROR" ID="0xc9480fd2" />
+ <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(735),ERROR" ID="0xc94816fa" />
+ <MSG STRUCTURE="diag_log_msg3" NAME="lv_draw_letter: glyph dsc. not found for U+%" PRIX32, letter);#if LV_USE_FONT_PLACEHOLDER/* draw placeholder */lv_area_t glyphCoords;lv_draw_rect_dsc_t rectDsc;lv_coord_t beginX = pos->x + glyphDsc.ofs_x;lv_coord_t beginY = pos->y + glyphDsc.ofs_y;lv_area_set(&glyphCoords, beginX, beginY, beginX + glyphDsc.box_w, beginY + glyphDsc.box_h);lv_draw_rect_dsc_init(&rectDsc);rectDsc.bg_opa = LV_OPA_MIN;rectDsc.outline_opa = LV_OPA_MIN;rectDsc.shadow_opa = LV_OPA_MIN;rectDsc.bg_img_opa = LV_OPA_MIN;rectDsc.border_color = dsc->color;rectDsc.border_width = 1;drawCtx->draw_rect(drawCtx, &rectDsc, &glyphCoords);#endif}return;}if ((glyphDsc.box_h == 0) || (glyphDsc.box_w == 0)) {return;}#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_HW_DRAW_LETTER);#endifRenderGlyphPath(drawCtx, dsc, pos, letter, &glyphDsc);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {pos->x, pos->y, letter};FrameTraceEnd(FRAME_TRACE_HW_DRAW_LETTER, &area);#endif#elseLvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_LETTER);#endiflv_draw_sw_letter(drawCtx, dsc, pos, letter);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {pos->x, pos->y, letter};FrameTraceEnd(FRAME_TRACE_SW_DRAW_LETTER, &area);#endif#endif}static void LvDrawLine(struct _lv_draw_ctx_t* drawCtx, const lv_draw_line_dsc_t* dsc,const lv_point_t* point1, const lv_point_t* point2){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_LINE);#endiflv_draw_sw_line(drawCtx, dsc, point1, point2);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {point1->x, point1->y, point2->x, point2->y};FrameTraceEnd(FRAME_TRACE_SW_DRAW_LINE, &area);#endif}static void LvDrawPolygon(lv_draw_ctx_t* drawCtx, const lv_draw_rect_dsc_t* dsc,const lv_point_t* points, uint16_t pointCnt){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_POLYGON);#endiflv_draw_sw_polygon(drawCtx, dsc, points, pointCnt);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {points->x, points->y, pointCnt, 0};FrameTraceEnd(FRAME_TRACE_SW_DRAW_POLYGON, &area);#endif}static void LvDrawBufferCopy(lv_draw_ctx_t* drawCtx,void* dstBuf, lv_coord_t dstStride, const lv_area_t* dstArea,void* srcBuf, lv_coord_t srcStride, const lv_area_t* srcArea){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_BUFCOPY);#endiflv_draw_sw_buffer_copy(drawCtx, dstBuf, dstStride, dstArea, srcBuf, srcStride, srcArea);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceEnd(FRAME_TRACE_SW_DRAW_BUFCOPY, dstArea);#endif}static struct _lv_draw_layer_ctx_t* LvDrawLayerCreate(struct _lv_draw_ctx_t* drawCtx,lv_draw_layer_ctx_t* layerCtx, lv_draw_layer_flags_t flags){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_LAYERC);#endifstruct _lv_draw_layer_ctx_t* ret = lv_draw_sw_layer_create(drawCtx, layerCtx, flags);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {flags, 0, 0, 0};FrameTraceEnd(FRAME_TRACE_SW_DRAW_LAYERC, &area);#endifreturn ret;}static void LvDrawLayerAdjust(struct _lv_draw_ctx_t* drawCtx, struct _lv_draw_layer_ctx_t* layerCtx,lv_draw_layer_flags_t flags){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_LAYERA);#endiflv_draw_sw_layer_adjust(drawCtx, layerCtx, flags);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {flags, 0, 0, 0};FrameTraceEnd(FRAME_TRACE_SW_DRAW_LAYERA, &area);#endif}static void LvDrawLayerBlend(struct _lv_draw_ctx_t* drawCtx, struct _lv_draw_layer_ctx_t* layerCtx,const lv_draw_img_dsc_t* dsc){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_LAYERB);#endiflv_draw_sw_layer_blend(drawCtx, layerCtx, dsc);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACElv_area_t area = {dsc->resId, 0, 0, 0};FrameTraceEnd(FRAME_TRACE_SW_DRAW_LAYERB, &area);#endif}static void LvDrawLayerDestroy(lv_draw_ctx_t* drawCtx, lv_draw_layer_ctx_t* layerCtx){BlitPendingImgs();LvSubmitHwDraw(true);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceStart(FRAME_TRACE_SW_DRAW_LAYERD);#endiflv_draw_sw_layer_destroy(drawCtx, layerCtx);#if LV_USE_DFX_CMD && LV_USE_DFX_TRACEFrameTraceEnd(FRAME_TRACE_SW_DRAW_LAYERD, NULL);#endif}void LvDrawVguCtxInit(struct _lv_disp_drv_t* drv, lv_draw_ctx_t* drawCtx){if (g_vguFuncs == NULL) {LV_LOGE("[%s: %d] module is not inited. @lv_draw_vgu.c(895),ERROR" ID="0xc9481bfa" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="drawCtx is null. @lv_draw_vgu.c(964),ERROR" ID="0xc9481e22" />
+ <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(969),ERROR" ID="0xc9481e4a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="RenderBlur failed! @lv_draw_vgu.c(1000),ERROR" ID="0xc9481f42" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="unsupported color format: %u @lv_draw_vgu.c(1044),ERROR" ID="0xc94820a2" />
+ <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(1113),ERROR" ID="0xc94822ca" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="Not support mask @lv_draw_vgu.c(1120),ERROR" ID="0xc9482302" />
+ <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(1232),ERROR" ID="0xc9482682" />
+ <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(1305),ERROR" ID="0xc94828ca" />
+ <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(1356),ERROR" ID="0xc9482a62" />
+ <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(1378),ERROR" ID="0xc9482b12" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="VGUPathSetData failed. @lv_draw_vgu.c(1383),ERROR" ID="0xc9482b3a" />
+ <MSG STRUCTURE="diag_log_msg2" NAME="[%s: %d] cannot support draw layer. @lv_draw_vgu.c(1396),ERROR" ID="0xc9482ba2" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="RenderPath failed. @lv_draw_vgu.c(1421),ERROR" ID="0xc9482c6a" />
</MSG_LOG>
\ No newline at end of file
-<MSG_LOG><MSG STRUCTURE="diag_log_msg1" NAME="the fontName %s no register @text_ext.cpp(63),ERROR" ID="0xcae201fa" />
- <MSG STRUCTURE="diag_log_msg0" NAME="malloc buffer for utf16Text failed. @text_ext.cpp(98),ERROR" ID="0xcae20312" />
- <MSG STRUCTURE="diag_log_msg0" NAME="text_ is nullptr. @text_ext.cpp(122),ERROR" ID="0xcae203d2" />
- <MSG STRUCTURE="diag_log_msg0" NAME="malloc for shapingLineText failed. @text_ext.cpp(245),ERROR" ID="0xcae207aa" />
+<MSG_LOG><MSG STRUCTURE="diag_log_msg1" NAME="the fontName %s no register, use default font @text_ext.cpp(74),ERROR" ID="0xcae20252" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="malloc buffer for utf16Text failed. @text_ext.cpp(109),ERROR" ID="0xcae2036a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="text_ is nullptr. @text_ext.cpp(133),ERROR" ID="0xcae2042a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="malloc for shapingLineText failed. @text_ext.cpp(256),ERROR" ID="0xcae20802" />
</MSG_LOG>
\ No newline at end of file
<MSG STRUCTURE="diag_log_msg1" NAME="[hifi]write_pos = %u @core_msg.c(290),ERROR" ID="0x98180912" />
<MSG STRUCTURE="diag_log_msg1" NAME="[hifi]msg_size = %u @core_msg.c(291),ERROR" ID="0x9818091a" />
<MSG STRUCTURE="diag_log_msg1" NAME="[hifi]msg_size = %u @core_msg.c(327),ERROR" ID="0x98180a3a" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]msg_crc = %u @core_msg.c(333),ERROR" ID="0x98180a6a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(376),INFO" ID="0x98180bc5" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_alloc Failed, Error Code: [0x%08X] @core_msg.c(382),ERROR" ID="0x98180bf2" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_attach Failed, Error Code: [0x%08X] @core_msg.c(388),ERROR" ID="0x98180c22" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(396),INFO" ID="0x98180c65" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(405),INFO" ID="0x98180cad" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_get_id Failed, Error Code: [0x%08X] @core_msg.c(413),ERROR" ID="0x98180cea" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_detach Failed, Error Code: [0x%08X] @core_msg.c(419),ERROR" ID="0x98180d1a" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_free Failed, Error Code: [0x%08X] @core_msg.c(425),ERROR" ID="0x98180d4a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(433),INFO" ID="0x98180d8d" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(442),INFO" ID="0x98180dd5" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_get_id Failed, Error Code: [0x%08X] @core_msg.c(446),ERROR" ID="0x98180df2" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_attach Failed, Error Code: [0x%08X] @core_msg.c(452),ERROR" ID="0x98180e22" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(458),INFO" ID="0x98180e55" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(467),INFO" ID="0x98180e9d" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_get_id Failed, Error Code: [0x%08X] @core_msg.c(471),ERROR" ID="0x98180eba" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_detach Failed, Error Code: [0x%08X] @core_msg.c(477),ERROR" ID="0x98180eea" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(484),INFO" ID="0x98180f25" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(492),INFO" ID="0x98180f65" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(495),INFO" ID="0x98180f7d" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_mod_init Failed, Error Code: [0x%08X] @core_msg.c(501),ERROR" ID="0x98180faa" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(508),INFO" ID="0x98180fe5" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(516),INFO" ID="0x98181025" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(518),INFO" ID="0x98181035" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(523),INFO" ID="0x9818105d" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_mod_deinit Failed, Error Code: [0x%08X] @core_msg.c(529),ERROR" ID="0x9818108a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(535),INFO" ID="0x981810bd" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(545),INFO" ID="0x9818110d" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_mod_alloc Failed, Error Code: [0x%08X] @core_msg.c(556),ERROR" ID="0x98181162" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]msg_inst->qid.u32 = 0x%08X @core_msg.c(563),INFO" ID="0x9818119d" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_alloc_shrb Failed, Error Code: [0x%08X] @core_msg.c(568),ERROR" ID="0x981811c2" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]msg_inst->shrb_buf.data_buf = 0x%08X @core_msg.c(572),INFO" ID="0x981811e5" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_attach_shrb Failed, Error Code: [0x%08X] @core_msg.c(576),ERROR" ID="0x98181202" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]msg_inst->shrb_buf.data_buf = 0x%08X @core_msg.c(580),INFO" ID="0x98181225" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(585),INFO" ID="0x9818124d" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(593),INFO" ID="0x9818128d" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_free_shrb Failed, Error Code: [0x%08X] @core_msg.c(598),ERROR" ID="0x981812b2" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_detach_shrb Failed, Error Code: [0x%08X] @core_msg.c(605),ERROR" ID="0x981812ea" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_mod_free Failed, Error Code: [0x%08X] @core_msg.c(615),ERROR" ID="0x9818133a" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(619),INFO" ID="0x9818135d" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_init Failed, Error Code: [0x%08X] @core_msg.c(668),ERROR" ID="0x981814e2" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_create Failed, Error Code: [0x%08X] @core_msg.c(679),ERROR" ID="0x9818153a" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_destroy Failed, Error Code: [0x%08X] @core_msg.c(700),ERROR" ID="0x981815e2" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]ret = 0x%08X @core_msg.c(789),ERROR" ID="0x981818aa" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]msg_crc = %u @core_msg.c(334),ERROR" ID="0x98180a72" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(377),INFO" ID="0x98180bcd" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_alloc Failed, Error Code: [0x%08X] @core_msg.c(383),ERROR" ID="0x98180bfa" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_attach Failed, Error Code: [0x%08X] @core_msg.c(389),ERROR" ID="0x98180c2a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(397),INFO" ID="0x98180c6d" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(406),INFO" ID="0x98180cb5" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_get_id Failed, Error Code: [0x%08X] @core_msg.c(414),ERROR" ID="0x98180cf2" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_detach Failed, Error Code: [0x%08X] @core_msg.c(420),ERROR" ID="0x98180d22" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_free Failed, Error Code: [0x%08X] @core_msg.c(426),ERROR" ID="0x98180d52" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(434),INFO" ID="0x98180d95" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(443),INFO" ID="0x98180ddd" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_get_id Failed, Error Code: [0x%08X] @core_msg.c(447),ERROR" ID="0x98180dfa" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_attach Failed, Error Code: [0x%08X] @core_msg.c(453),ERROR" ID="0x98180e2a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(459),INFO" ID="0x98180e5d" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(468),INFO" ID="0x98180ea5" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_get_id Failed, Error Code: [0x%08X] @core_msg.c(472),ERROR" ID="0x98180ec2" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_shrb_detach Failed, Error Code: [0x%08X] @core_msg.c(478),ERROR" ID="0x98180ef2" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(485),INFO" ID="0x98180f2d" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(493),INFO" ID="0x98180f6d" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(496),INFO" ID="0x98180f85" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_mod_init Failed, Error Code: [0x%08X] @core_msg.c(502),ERROR" ID="0x98180fb2" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(509),INFO" ID="0x98180fed" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(517),INFO" ID="0x9818102d" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(519),INFO" ID="0x9818103d" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(524),INFO" ID="0x98181065" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_mod_deinit Failed, Error Code: [0x%08X] @core_msg.c(530),ERROR" ID="0x98181092" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(536),INFO" ID="0x981810c5" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(546),INFO" ID="0x98181115" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_mod_alloc Failed, Error Code: [0x%08X] @core_msg.c(557),ERROR" ID="0x9818116a" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]msg_inst->qid.u32 = 0x%08X @core_msg.c(564),INFO" ID="0x981811a5" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_alloc_shrb Failed, Error Code: [0x%08X] @core_msg.c(569),ERROR" ID="0x981811ca" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]msg_inst->shrb_buf.data_buf = 0x%08X @core_msg.c(573),INFO" ID="0x981811ed" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_attach_shrb Failed, Error Code: [0x%08X] @core_msg.c(577),ERROR" ID="0x9818120a" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]msg_inst->shrb_buf.data_buf = 0x%08X @core_msg.c(581),INFO" ID="0x9818122d" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(586),INFO" ID="0x98181255" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]enter... @core_msg.c(594),INFO" ID="0x98181295" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_free_shrb Failed, Error Code: [0x%08X] @core_msg.c(599),ERROR" ID="0x981812ba" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_detach_shrb Failed, Error Code: [0x%08X] @core_msg.c(606),ERROR" ID="0x981812f2" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call core_mod_free Failed, Error Code: [0x%08X] @core_msg.c(616),ERROR" ID="0x98181342" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[hifi]exit... @core_msg.c(620),INFO" ID="0x98181365" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_init Failed, Error Code: [0x%08X] @core_msg.c(669),ERROR" ID="0x981814ea" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_create Failed, Error Code: [0x%08X] @core_msg.c(680),ERROR" ID="0x98181542" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]Call msg_fifo_destroy Failed, Error Code: [0x%08X] @core_msg.c(701),ERROR" ID="0x981815ea" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[hifi]ret = 0x%08X @core_msg.c(790),ERROR" ID="0x981818b2" />
</MSG_LOG>
\ No newline at end of file
<MSG STRUCTURE="diag_log_msg2" NAME="[WARNING] llcp_channel_map_req_handler, INSTANT_PASSED, instant=%d, counter=%d @llc_llcp.c(3624),WARNING" ID="0x88387143" />
<MSG STRUCTURE="diag_log_msg2" NAME="[INFO][LLC]llc_channel_map_instant_exec:dummy=%d,opcode=%d @llc_llcp.c(3663),INFO" ID="0x8838727d" />
<MSG STRUCTURE="diag_log_msg0" NAME="[WARNING][LLC]llcp_channel_map_req_handler:llc_env_ptr is null @llc_llcp.c(3693),WARNING" ID="0x8838736b" />
- <MSG STRUCTURE="diag_log_msg0" NAME="smp_pair_new_patch @patch_bth.c(49),INFO" ID="0x8d54018d" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[AVDTP][GET_SEP_FAIL] Can not get sep info @patch_bth.c(153),WARNING" ID="0x8d5404cb" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[STACK][RECV_RING_STOP] @patch_bth.c(241),INFO" ID="0x8d54078d" />
- <MSG STRUCTURE="diag_log_msg3" NAME="[ATT_GATT] att error rsp opcode:0x%x handle:%d error:0x%x @patch_bth.c(274),ERROR" ID="0x8d540892" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[SMP]PAIRING_REQ_RECV @patch_bth.c(467),ERROR" ID="0x8d540e9a" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="smp_pair_new_patch @patch_bth.c(52),INFO" ID="0x8d5401a5" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[AVDTP][GET_SEP_FAIL] Can not get sep info @patch_bth.c(156),WARNING" ID="0x8d5404e3" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[STACK][RECV_RING_STOP] @patch_bth.c(244),INFO" ID="0x8d5407a5" />
+ <MSG STRUCTURE="diag_log_msg3" NAME="[ATT_GATT] att error rsp opcode:0x%x handle:%d error:0x%x @patch_bth.c(277),ERROR" ID="0x8d5408aa" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[SMP]PAIRING_REQ_RECV @patch_bth.c(506),ERROR" ID="0x8d540fd2" />
<MSG STRUCTURE="diag_log_msg1" NAME="ble add ble white list fail: %d @bt_mpc_adpt_gap.c(53),ERROR" ID="0x8dd401aa" />
<MSG STRUCTURE="diag_log_msg1" NAME="ble add ble white list params err! len = %d @bt_mpc_adpt_gap.c(57),ERROR" ID="0x8dd401ca" />
<MSG STRUCTURE="diag_log_msg1" NAME="ble remove all ble white list fail: %d @bt_mpc_adpt_gap.c(72),ERROR" ID="0x8dd40242" />
<MSG STRUCTURE="diag_log_msg1" NAME="GdkTimer Create TimerId:%d @gdk_cmsis.c(79),INFO" ID="0x8cb0027d" />
<MSG STRUCTURE="diag_log_msg1" NAME="GdkTimer Start TimerId:%d @gdk_cmsis.c(99),DBG" ID="0x8cb0031e" />
<MSG STRUCTURE="diag_log_msg1" NAME="GdkTimer Stop TimerId:%d @gdk_cmsis.c(111),DBG" ID="0x8cb0037e" />
- <MSG STRUCTURE="diag_log_msg0" NAME="gdk os malloc size 0 @gdk_cmsis.c(146),ERROR" ID="0x8cb00492" />
- <MSG STRUCTURE="diag_log_msg1" NAME="gdk os malloc FAIL size:%d @gdk_cmsis.c(153),ERROR" ID="0x8cb004ca" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="gdk os malloc size 0 @gdk_cmsis.c(152),ERROR" ID="0x8cb004c2" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="gdk os malloc FAIL size:%d @gdk_cmsis.c(159),ERROR" ID="0x8cb004fa" />
<MSG STRUCTURE="diag_log_msg4" NAME="[diff_sched_prog illegal] diff_sched_prog=%d timestamp=%d, rx_win_size=%d, last_sync=%d @ld_acl_sniff_ram.c(101),WARNING" ID="0x8a0a032b" />
<MSG STRUCTURE="diag_log_msg2" NAME="[ERROR]ld_acl_sniff_evt_start_cbk:cs_idx = %d, att_nb = %d @ld_acl_sniff_ram.c(151),ERROR" ID="0x8a0a04ba" />
<MSG STRUCTURE="diag_log_msg4" NAME="ld_acl_sniff_evt_start_cbk clock(0x%x)prog_clock(0x%x)last_sync_ts(0x%x)link_id(%d) @ld_acl_sniff_ram.c(183),INFO" ID="0x8a0a05bd" />
<MSG STRUCTURE="diag_log_msg0" NAME="[WARNING][BIS]current role is master @llc_bis_hci.c(497),WARNING" ID="0x89560f8b" />
<MSG STRUCTURE="diag_log_msg0" NAME="[WARNING][BIS]big trigger is false @llc_bis_hci.c(503),WARNING" ID="0x89560fbb" />
<MSG STRUCTURE="diag_log_msg0" NAME="[BTOS][MEM_INTEGRITY_CHECK]Not support! @osdep.c(680),INFO" ID="0x8b981545" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[BTOS][MEM_NEW]ALLOC_SIZE=%u alloc fail! @osdep.c(721),ERROR" ID="0x8b98168a" />
- <MSG STRUCTURE="diag_log_msg4" NAME="[BTOS][MEM_NEW]fsm_count=%u fsm_limit=%u fsm_limit_max=%u hci_slice_rx=%u! @osdep.c(725),ERROR" ID="0x8b9816aa" />
- <MSG STRUCTURE="diag_log_msg3" NAME="[MEM_FREE][%d][0x%p], caller:0x%x @osdep.c(762),INFO" ID="0x8b9817d5" />
- <MSG STRUCTURE="diag_log_msg3" NAME="[BTOS][MEM_FREE]ERROR_CODE=%u, addr:0x%p, caller:0x%x free fail! @osdep.c(770),WARNING" ID="0x8b981813" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[BTOS][MEM_NEW]ALLOC_SIZE=%u, alloc fail! @osdep.c(783),WARNING" ID="0x8b98187b" />
- <MSG STRUCTURE="diag_log_msg3" NAME="[BTOS][MEM_FREE]ERROR_CODE=%u, addr:0x%p, caller:0x%x, free fail! @osdep.c(798),WARNING" ID="0x8b9818f3" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[BTOS][MEM_NEW_S]AVAILABLE_MEMORY=%u, alloc fail because under secure threshold size! @osdep.c(829),WARNING" ID="0x8b9819eb" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[BTOS][MEM_NEW]ALLOC_SIZE=%u alloc fail! @osdep.c(724),ERROR" ID="0x8b9816a2" />
+ <MSG STRUCTURE="diag_log_msg4" NAME="[BTOS][MEM_NEW]fsm_count=%u fsm_limit=%u fsm_limit_max=%u hci_slice_rx=%u! @osdep.c(728),ERROR" ID="0x8b9816c2" />
+ <MSG STRUCTURE="diag_log_msg3" NAME="[MEM_FREE][%d][0x%p], caller:0x%x @osdep.c(765),INFO" ID="0x8b9817ed" />
+ <MSG STRUCTURE="diag_log_msg3" NAME="[BTOS][MEM_FREE]ERROR_CODE=%u, addr:0x%p, caller:0x%x free fail! @osdep.c(773),WARNING" ID="0x8b98182b" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[BTOS][MEM_NEW]ALLOC_SIZE=%u, alloc fail! @osdep.c(786),WARNING" ID="0x8b981893" />
+ <MSG STRUCTURE="diag_log_msg3" NAME="[BTOS][MEM_FREE]ERROR_CODE=%u, addr:0x%p, caller:0x%x, free fail! @osdep.c(801),WARNING" ID="0x8b98190b" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[BTOS][MEM_NEW_S]AVAILABLE_MEMORY=%u, alloc fail because under secure threshold size! @osdep.c(832),WARNING" ID="0x8b981a03" />
<MSG STRUCTURE="diag_log_msg1" NAME="[FRONTEND]bt_tx_power_get param level is %d, OUT OF RANGE @bt_mdmrfabb_config.c(97),ERROR" ID="0x88f8030a" />
<MSG STRUCTURE="diag_log_msg0" NAME="memory alloc failed @sdk_spp.c(176),ERROR" ID="0x8b6c0582" />
<MSG STRUCTURE="diag_log_msg1" NAME="[sdk][spp]read_stream failed ret=0x%x @sdk_spp.c(181),INFO" ID="0x8b6c05ad" />
<MSG STRUCTURE="diag_log_msg1" NAME="GdkTimer Create TimerId:%d @gdk_cmsis.c(79),INFO" ID="0x8cb0027d" />
<MSG STRUCTURE="diag_log_msg1" NAME="GdkTimer Start TimerId:%d @gdk_cmsis.c(99),DBG" ID="0x8cb0031e" />
<MSG STRUCTURE="diag_log_msg1" NAME="GdkTimer Stop TimerId:%d @gdk_cmsis.c(111),DBG" ID="0x8cb0037e" />
- <MSG STRUCTURE="diag_log_msg0" NAME="gdk os malloc size 0 @gdk_cmsis.c(146),ERROR" ID="0x8cb00492" />
- <MSG STRUCTURE="diag_log_msg1" NAME="gdk os malloc FAIL size:%d @gdk_cmsis.c(153),ERROR" ID="0x8cb004ca" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="gdk os malloc size 0 @gdk_cmsis.c(152),ERROR" ID="0x8cb004c2" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="gdk os malloc FAIL size:%d @gdk_cmsis.c(159),ERROR" ID="0x8cb004fa" />
</MSG_LOG>
\ No newline at end of file
<MSG_LOG><MSG STRUCTURE="diag_log_msg0" NAME="[BTOS][MEM_INTEGRITY_CHECK]Not support! @osdep.c(680),INFO" ID="0x8b981545" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[BTOS][MEM_NEW]ALLOC_SIZE=%u alloc fail! @osdep.c(721),ERROR" ID="0x8b98168a" />
- <MSG STRUCTURE="diag_log_msg4" NAME="[BTOS][MEM_NEW]fsm_count=%u fsm_limit=%u fsm_limit_max=%u hci_slice_rx=%u! @osdep.c(725),ERROR" ID="0x8b9816aa" />
- <MSG STRUCTURE="diag_log_msg3" NAME="[MEM_FREE][%d][0x%p], caller:0x%x @osdep.c(762),INFO" ID="0x8b9817d5" />
- <MSG STRUCTURE="diag_log_msg3" NAME="[BTOS][MEM_FREE]ERROR_CODE=%u, addr:0x%p, caller:0x%x free fail! @osdep.c(770),WARNING" ID="0x8b981813" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[BTOS][MEM_NEW]ALLOC_SIZE=%u, alloc fail! @osdep.c(783),WARNING" ID="0x8b98187b" />
- <MSG STRUCTURE="diag_log_msg3" NAME="[BTOS][MEM_FREE]ERROR_CODE=%u, addr:0x%p, caller:0x%x, free fail! @osdep.c(798),WARNING" ID="0x8b9818f3" />
- <MSG STRUCTURE="diag_log_msg1" NAME="[BTOS][MEM_NEW_S]AVAILABLE_MEMORY=%u, alloc fail because under secure threshold size! @osdep.c(829),WARNING" ID="0x8b9819eb" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[BTOS][MEM_NEW]ALLOC_SIZE=%u alloc fail! @osdep.c(724),ERROR" ID="0x8b9816a2" />
+ <MSG STRUCTURE="diag_log_msg4" NAME="[BTOS][MEM_NEW]fsm_count=%u fsm_limit=%u fsm_limit_max=%u hci_slice_rx=%u! @osdep.c(728),ERROR" ID="0x8b9816c2" />
+ <MSG STRUCTURE="diag_log_msg3" NAME="[MEM_FREE][%d][0x%p], caller:0x%x @osdep.c(765),INFO" ID="0x8b9817ed" />
+ <MSG STRUCTURE="diag_log_msg3" NAME="[BTOS][MEM_FREE]ERROR_CODE=%u, addr:0x%p, caller:0x%x free fail! @osdep.c(773),WARNING" ID="0x8b98182b" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[BTOS][MEM_NEW]ALLOC_SIZE=%u, alloc fail! @osdep.c(786),WARNING" ID="0x8b981893" />
+ <MSG STRUCTURE="diag_log_msg3" NAME="[BTOS][MEM_FREE]ERROR_CODE=%u, addr:0x%p, caller:0x%x, free fail! @osdep.c(801),WARNING" ID="0x8b98190b" />
+ <MSG STRUCTURE="diag_log_msg1" NAME="[BTOS][MEM_NEW_S]AVAILABLE_MEMORY=%u, alloc fail because under secure threshold size! @osdep.c(832),WARNING" ID="0x8b981a03" />
</MSG_LOG>
\ No newline at end of file
-<MSG_LOG><MSG STRUCTURE="diag_log_msg0" NAME="smp_pair_new_patch @patch_bth.c(49),INFO" ID="0x8d54018d" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[AVDTP][GET_SEP_FAIL] Can not get sep info @patch_bth.c(153),WARNING" ID="0x8d5404cb" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[STACK][RECV_RING_STOP] @patch_bth.c(241),INFO" ID="0x8d54078d" />
- <MSG STRUCTURE="diag_log_msg3" NAME="[ATT_GATT] att error rsp opcode:0x%x handle:%d error:0x%x @patch_bth.c(274),ERROR" ID="0x8d540892" />
- <MSG STRUCTURE="diag_log_msg0" NAME="[SMP]PAIRING_REQ_RECV @patch_bth.c(467),ERROR" ID="0x8d540e9a" />
+<MSG_LOG><MSG STRUCTURE="diag_log_msg0" NAME="smp_pair_new_patch @patch_bth.c(52),INFO" ID="0x8d5401a5" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[AVDTP][GET_SEP_FAIL] Can not get sep info @patch_bth.c(156),WARNING" ID="0x8d5404e3" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[STACK][RECV_RING_STOP] @patch_bth.c(244),INFO" ID="0x8d5407a5" />
+ <MSG STRUCTURE="diag_log_msg3" NAME="[ATT_GATT] att error rsp opcode:0x%x handle:%d error:0x%x @patch_bth.c(277),ERROR" ID="0x8d5408aa" />
+ <MSG STRUCTURE="diag_log_msg0" NAME="[SMP]PAIRING_REQ_RECV @patch_bth.c(506),ERROR" ID="0x8d540fd2" />
</MSG_LOG>
\ No newline at end of file
void do_hard_fault_handler(exc_context_t *exc_buf_addr);
#if defined(__LITEOS__)
void do_fault_handler(uint32_t exc_type, exc_context_t *exc_buff_addr);
+void nmi_fault_handler(uint32_t exc_type, exc_context_t *exc_buff_addr);
#endif
#if defined(__FREERTOS__)
void do_fault_handler_freertos(void);
/* Do not need to manually set false at the end. */\r
g_is_repeat_exc = true;\r
#endif\r
-#if defined(BUILD_APPLICATION_STANDARD) && !defined(BUILD_RECOVERY_IMAGE)\r
- (void)uapi_nv_flush();\r
-#endif\r
+\r
uint32_t exc_type = exc_buf_addr->mcause;\r
#if (ARCH == RISCV70)\r
exc_type &= MCAUSE_MASK;\r
}\r
#endif\r
}\r
+\r
+#if defined(BUILD_APPLICATION_STANDARD) && !defined(BUILD_RECOVERY_IMAGE)\r
+ (void)uapi_nv_flush();\r
+#endif\r
+\r
#if (SLAVE_BY_BS25_ONLY || SLAVE_BY_WS53_ONLY) && (!defined(NO_TIMEOUT))\r
g_bt_nmi_reboot = non_os_get_bnmi_mask_status();\r
g_bt_nmi_mask = non_os_get_bnmi_mask_value();\r
void do_fault_handler(uint32_t exc_type, exc_context_t *exc_buff_addr)\r
{\r
UNUSED(exc_type);\r
+ g_taskScheduled = 0;\r
do_hard_fault_handler(exc_buff_addr);\r
}\r
+\r
+void nmi_fault_handler(uint32_t exc_type, exc_context_t *exc_buff_addr)\r
+{\r
+ UNUSED(exc_type);\r
+ g_taskScheduled = 0;\r
+ uint16_t nmi_raw_status = non_os_get_nmi_raw_status();\r
+ uint16_t xip_cache_int_sts = readw(XIP_CACHE_CTL_INTR_STS);\r
+ uint16_t xip_int_sts = readw(XIP_CTL_INTR_STS);\r
+\r
+ PRINT("nmi fault reg is 0x%x 0x%x 0x%x"NEWLINE, nmi_raw_status, xip_cache_int_sts, xip_int_sts);\r
+\r
+ if (nmi_raw_status & NON_OS_NMI_CWDT_INT_FLAG) {\r
+ do_hard_fault_handler(exc_buff_addr);\r
+ } else {\r
+ cpu_trace_disable();\r
+\r
+ reboot_cause_t reset_cause = hal_set_reset_cause(NMI_INTERRUPT);\r
+ if (reset_cause == REBOOT_CAUSE_APPLICATION_XIP_CACHE) {\r
+ set_fault_reason(readw(XIP_CACHE_CTL_INTR_STS));\r
+ } else if (reset_cause == REBOOT_CAUSE_APPLICATION_XIP_CTRL) {\r
+ set_fault_reason(readw(XIP_CTL_INTR_STS));\r
+ }\r
+\r
+ cpu_utils_reset_chip_with_log((cores_t)MASTER_BY_ALL, reset_cause);\r
+ }\r
+}\r
+\r
#endif\r
\r
void hal_register_exception_dump_callback(hal_exception_dump_callback callback)\r
cpu_trace_enable_mcpu_repeat();
storage_device_resume();
display_resume();
+ if (non_os_get_nmi_raw_status() == 0x2) {
+ uapi_watchdog_kick();
+ }
pm_misc_regs_resume();
pm_core_restore_reset_pc();
}
#define XIP_CACHE_INTR_MASK 0xa3006128
#define XIP_CACHE_WRITE_DATA_DELAY_INTR_MASK 0x8
#define XIP_CACHE_ENABLE_WRITE_INTR_MASK 0x1
+#define XIP_CACHE_2AHBM_INTR_MASK 0x2
#define PM_DISPLAY_LOGIC_CRG_RESET 0x570000c0
#define PM_DISPLAY_PWR_EN_CFG 0x57004034
#define PM_DISPLAY_PWR_CLOSE_POWER 0x100
int ret = bus_api->bus_resume();
if (ret != 0) { PRINT("bus resume ret =%d\n", ret); }
#ifndef QSPI_DISPLAY
- ret = drv_dpu_resume(NULL);
- if (ret != 0) { PRINT("drv dpu resume ret =%d\n", ret); }
+ (void)drv_dpu_resume(NULL);
#endif
#ifdef SUPPORT_GPU_JPEG
(void)drv_jpeg_resume(NULL);
#endif
- ret = drv_vau_resume(NULL);
- if (ret != 0) { PRINT("drv vau resume ret =%d\n", ret); }
+ (void)drv_vau_resume(NULL);
#ifdef SUPPORT_GPU_GMMU
- ret = drv_gmmu_resume(NULL);
- if (ret != 0) { PRINT("drv_gmmu_resume ret =%d\n", ret); }
+ (void)drv_gmmu_resume(NULL);
#endif
if (g_resume_touch_flag != 0) { touch_resume_for_i2c(); }
}
}
void pm_misc_regs_resume(void)
{
- // xip config param needs to re-config
- non_os_nmi_config(NMI_CWDT, true);
- non_os_nmi_config(NMI_XIP_CTRL, true);
- non_os_nmi_config(NMI_XIP_CACHE, true);
reg16_clrbit(XIP_CACHE_INTR_MASK, XIP_CACHE_WRITE_DATA_DELAY_INTR_MASK);
reg16_clrbit(XIP_CACHE_INTR_MASK, XIP_CACHE_ENABLE_WRITE_INTR_MASK);
-
+ reg16_clrbit(XIP_CACHE_INTR_MASK, XIP_CACHE_2AHBM_INTR_MASK);
+
+ // xip config param needs to re-config
+ non_os_nmi_config(NMI_CWDT, true);
+ hal_xip_config_interrupt_type(XIP_0, XIP_INTR_NMI);
+
// set l2ram for dsp
pmu1_dsp_l2ram_config(DSP_L2RAM_AREA_SIZE);
return;
}
uapi_rtc_get_current_time_us(0, &rtc_times);
+ if (rtc_times < PM_OS_US_TO_MS && rtc_times > 0) {
+ return;
+ }
rtc_times /= PM_OS_US_TO_MS;
if (sleep_ms > rtc_times && rtc_times != 0 && sleep_ms <= g_pm_sleep_threshold) {
sleep_ms = rtc_times;
void uapi_pm_enter_sleep(void)
{
+ uint32_t status = pm_os_irq_lock();
uint32_t sleep_ms = pm_os_get_sleep_ms();
pm_enter_sleep(sleep_ms);
+ pm_os_irq_restore(status);
}
#ifdef NO_UART_DEBUG
#define jpeg_err(fmt, args...) uapi_diag_error_log(0, fmt, ##args)
#else
-#define jpeg_err(info) printf("[ERR-JPEG]:%s[%d] %s\n", __FUNCTION__, __LINE__, info)
+#define jpeg_err(fmt, args...) printf("[JPEG_ERROR][%s %d]"#fmt"\n", __func__, __LINE__, ##args)
#endif
/*-------------------------------- struct define ------------------------------------------*/
#include "securec.h"
#include "soc_osal.h"
#include "psram.h"
+#include "jpeg_struct.h"
/*-------------------------------------- macro define -------------------------------------*/
errno_t ret;
if (mem->size == 0) {
+ jpeg_err("mem->size = 0\n");
return EXT_FAILURE;
}
mem->vir_buf = (td_char *)malloc(mem->size);
if (mem->vir_buf == TD_NULL) {
+ jpeg_err("mem alloc fail, size = %u\n", mem->size);
return EXT_FAILURE;
}
ret = memset_s(mem->vir_buf, mem->size, 0x0, mem->size);
if (ret != EOK) {
+ jpeg_err("memset_s fail, mem size = %u\n", mem->size);
free(mem->vir_buf);
return EXT_FAILURE;
}
errno_t ret;
if ((mem->size < JPEG_MEM_SIZE_MIN) || (mem->size > JPEG_MEM_SIZE_MAX)) {
+ jpeg_err("mem size = %u is invalid, need in range[%u, %u]\n", mem->size, JPEG_MEM_SIZE_MIN, JPEG_MEM_SIZE_MAX);
return EXT_FAILURE;
}
mem->phy_buf = PSRAM_RESERVE_ADDR;
if (mem->phy_buf == 0) {
+ jpeg_err("mem->phy_buf = 0, addr = %#X\n", PSRAM_RESERVE_ADDR);
return EXT_FAILURE;
}
#define GPU_SRAM_PRE_SIZE (1 * 1024) /* 1K for vau ip tmp dcmp */
#define GPU_SRAM_PRE_ADDR (GPU_SRAM_END + 1 - GPU_SRAM_PRE_SIZE) /* 0x6039FC00 ~ 0x6039FFFF */
-#define GPU_SRAM_DRAW_SIZE (63 * 1024) /* 63K for cmd/data */
-#define GPU_SRAM_DRAW_ADDR (GPU_SRAM_PRE_ADDR - GPU_SRAM_DRAW_SIZE) /* 0x60390000 ~ 0x6039FC00 */
+#define GPU_SRAM_DRAW_SIZE (127 * 1024) /* 127K for cmd/data */
+#define GPU_SRAM_DRAW_ADDR (GPU_SRAM_PRE_ADDR - GPU_SRAM_DRAW_SIZE) /* 0x60380000 ~ 0x6039FC00 */
#define GPU_SRAM_NODE_SIZE (80 * 1024) /* 80K for node/handle */
-#define GPU_SRAM_NODE_ADDR (GPU_SRAM_DRAW_ADDR - GPU_SRAM_NODE_SIZE) /* 0x6037C000 ~ 0x60390000 */
+#define GPU_SRAM_NODE_ADDR (GPU_SRAM_DRAW_ADDR - GPU_SRAM_NODE_SIZE) /* 0x6036C000 ~ 0x60380000 */
#define GPU_SRAM_CMD_SIZE (GPU_SRAM_PRE_SIZE + GPU_SRAM_DRAW_SIZE + GPU_SRAM_NODE_SIZE)
#include "dpu_disp.h"\r
#include "dpu_layer.h"\r
#include "dpu_hal.h"\r
+#include "drv_dpu.h"\r
\r
#define SAVE_FILE_DIR "/user"\r
\r
#if defined(SUPPORT_AT_CMD) || defined(SUPPORT_TEST_COMMON) || defined(CONFIG_DIAG_GPU_PROC_SUPPORT)\r
static td_void dfx_disp_proc_read(void)\r
{\r
- td_u32 chksum_y = 0;\r
- td_u32 chksum_u = 0;\r
- td_u32 chksum_v = 0;\r
dpu_disp_info *disp_dev = dpu_disp_get_info();\r
\r
- dpu_hal_disp_get_chksum(&chksum_y, &chksum_u, &chksum_v);\r
-\r
dpu_print("\n-----------DISP proc-----------\n");\r
dpu_print("work_mode :%-6d\n", disp_dev->timing.is_cmd_mode ? 1 : 0);\r
dpu_print("disp_open :%-6d\n", disp_dev->is_open ? 1 : 0);\r
g_dpu_dfx_info.frm_done_cnt, g_dpu_dfx_info.te_signal_cnt);\r
\r
dpu_print("suspend/resume :%-6u/%-6u\n", g_dpu_dfx_info.suspend_cnt, g_dpu_dfx_info.resume_cnt);\r
+\r
+ td_u32 chksum_y = 0;\r
+ td_u32 chksum_u = 0;\r
+ td_u32 chksum_v = 0;\r
+ if (drv_dpu_get_suspend_flag() == TD_FALSE) {\r
+ dpu_hal_disp_get_chksum(&chksum_y, &chksum_u, &chksum_v);\r
+ } else {\r
+ dpu_print("dpu is in lowpower state, chksum_out is invalid!");\r
+ }\r
dpu_print("chksum[RGB] :%#x/%#x/%#x\n", chksum_y, chksum_u, chksum_v);\r
\r
return;\r
\r
static td_void dfx_layer_proc_read(td_u32 layer_id)\r
{\r
- td_u32 chksum_ar = 0;\r
- td_u32 chksum_gb = 0;\r
dpu_layer_dev *layer_dev = TD_NULL;\r
\r
if (layer_id < DRV_DPU_LAYER_ID1 || layer_id > DRV_DPU_MAX_LAYER_ID) {\r
return;\r
}\r
\r
- dpu_hal_layer_get_fdr_chksum(layer_id, &chksum_ar, &chksum_gb);\r
-\r
layer_dev = dpu_layer_get_dev(layer_id);\r
if (layer_dev != TD_NULL) {\r
dpu_print("-----------LAYER%u proc---------\n", layer_id);\r
dpu_print("format :%-6u\n", layer_dev->run_info.fmt);\r
dpu_print("cmp_mode :%-6u\n", layer_dev->run_info.compress_mode);\r
dpu_print("vblank :%-6d\n", layer_dev->vblank ? 1 : 0);\r
- dpu_print("chksum[ar/gb] :%#x/%#x\n", chksum_ar, chksum_gb);\r
\r
dpu_print("disp_rect :%-6d/%-6d/%-6u/%-6u\n",\r
layer_dev->run_info.disp_rect.x, layer_dev->run_info.disp_rect.y,\r
layer_dev->run_info.crop_rect.width, layer_dev->run_info.crop_rect.height);\r
}\r
\r
+ td_u32 chksum_ar = 0;\r
+ td_u32 chksum_gb = 0;\r
+ if (drv_dpu_get_suspend_flag() == TD_FALSE) {\r
+ dpu_hal_layer_get_fdr_chksum(layer_id, &chksum_ar, &chksum_gb);\r
+ } else {\r
+ dpu_print("dpu is in lowpower state, chksum_in is invalid!");\r
+ }\r
+ dpu_print("chksum[ar/gb] :%#x/%#x\n", chksum_ar, chksum_gb);\r
+\r
return;\r
}\r
\r
}\r
#endif\r
\r
+td_void dpu_dfx_proc_read(td_void)\r
+{\r
+#if defined(SUPPORT_AT_CMD) || defined(SUPPORT_TEST_COMMON) || defined(CONFIG_DIAG_GPU_PROC_SUPPORT)\r
+ dfx_layer_proc_read(0);\r
+ dfx_layer_proc_read(1);\r
+ dfx_disp_proc_read();\r
+#endif\r
+}\r
+\r
static td_void dpu_dfx_save_fb_data_all(const drv_dpu_surface *surface)\r
{\r
if (surface == TD_NULL) {\r
dpu_dfx_save_fb_data_part(surface);\r
}\r
}\r
+\r
+static td_void read_reg_with_cnt(td_u32 addr, td_u32 cnt)\r
+{\r
+ for (uint32_t i = 0; i < cnt; i++) {\r
+ volatile uint32_t value;\r
+ uapi_reg_read(addr + i * 4, value); // 4: 4byte\r
+ if (i % 4 == 0) { // 4: 4byte\r
+ if (i != 0) {\r
+ dpu_print("\n");\r
+ }\r
+ dpu_print("%X =", addr + i * 4); // 4: 4byte\r
+ }\r
+ dpu_print(" %08X", value);\r
+ if (i == cnt - 1) {\r
+ dpu_print("\n");\r
+ }\r
+ }\r
+}\r
+\r
+td_void print_mipi_and_dpu_reg(int argc, const char *argv[])\r
+{\r
+ uapi_unused(argc);\r
+ uapi_unused(argv);\r
+\r
+ printf("----------------mipi reg--------------------\n");\r
+ read_reg_with_cnt(0x56000000, 0x100);\r
+ printf("----------------dpu reg--------------------\n");\r
+ read_reg_with_cnt(0x56020000, 0x24);\r
+ read_reg_with_cnt(0x56020300, 0x10);\r
+ read_reg_with_cnt(0x56020400, 0x20);\r
+ read_reg_with_cnt(0x56020c00, 0x10);\r
+ read_reg_with_cnt(0x56027000, 0x50);\r
+ read_reg_with_cnt(0x56027800, 0x50);\r
+ read_reg_with_cnt(0x5602d000, 0x100);\r
+ read_reg_with_cnt(0x56030e00, 0x100);\r
+ read_reg_with_cnt(0x56031000, 0x100);\r
+}\r
#define dpu_dbg(fmt, args...)\r
#endif\r
\r
+typedef struct {\r
+ td_u32 phy_addr;\r
+ td_u32 width;\r
+ td_u32 height;\r
+ td_u32 stride;\r
+} dpu_dfx_layer_info;\r
+\r
typedef struct {\r
td_bool print_en;\r
td_bool save_en;\r
td_u32 last_te_time_us;\r
\r
td_u32 one_sec_ago; /* for fps calculate */\r
+\r
+ dpu_dfx_layer_info layer_info[DRV_DPU_MAX_LAYER_ID + 1];\r
} dpu_dfx_info;\r
\r
td_void dpu_dfx_print_info(void);\r
td_s32 dfx_dpu_print(int argc, const char *argv[]);\r
td_s32 dfx_dpu_save_fb_enable(int argc, const char *argv[]);\r
td_void dfx_dpu_save_fb_to_file(drv_dpu_layer_id layer_id, drv_dpu_surface *surface);\r
+td_void dpu_dfx_proc_read(td_void);\r
+td_void print_mipi_and_dpu_reg(int argc, const char *argv[]);\r
\r
static inline td_void dpu_dfx_get_time_us(td_u32 *time_us)\r
{\r
osal_spin_unlock_irqrestore(&disp_info->disp_lock, &flags);\r
}\r
\r
+td_bool drv_dpu_get_suspend_flag(td_void)\r
+{\r
+ unsigned long flags = 0;\r
+ dpu_disp_info *disp_info = dpu_disp_get_info();\r
+\r
+ osal_spin_lock_irqsave(&disp_info->disp_lock, &flags);\r
+ td_bool suspend_flag = g_dpu_suspend_flag;\r
+ osal_spin_unlock_irqrestore(&disp_info->disp_lock, &flags);\r
+ return suspend_flag;\r
+}\r
+\r
+\r
td_s32 drv_dpu_suspend(td_void *private_data)\r
{\r
uapi_unused(private_data);\r
td_void dpu_isr_wait_finish(void)\r
{\r
td_s32 ret;\r
+ static td_u32 dpu_timeout_cnt = 0;\r
dpu_dfx_info *dfx_info = dpu_dfx_get_info();\r
\r
ret = osal_wait_timeout_interruptible(&g_dpu_isr_info.finish_event,\r
isr_get_finish_done, TD_NULL, 500); /* 500 ms */\r
if (ret <= 0) {\r
+ if (dpu_timeout_cnt < 0x3) {\r
+ dpu_dfx_proc_read();\r
+ print_mipi_and_dpu_reg(0, TD_NULL);\r
+ }\r
+ dpu_timeout_cnt++;\r
dfx_info->refresh_total = 0;\r
dfx_info->frm_done_total = 0;\r
dpu_err("osal_wait_timeout!!!!");\r
return;\r
}\r
-\r
- return;\r
}\r
\r
td_void dpu_isr_wait_te_signal(void)\r
dpu_dfx_info *dfx_info = dpu_dfx_get_info();\r
const td_u32 wait_time = 200;\r
td_u32 cnt = 0;\r
+ static td_u32 dpu_timeout_cnt = 0;\r
\r
while (cnt++ < wait_time) {\r
osal_spin_lock_irqsave(&g_dpu_isr_info.isr_lock, &flag);\r
}\r
if (cnt >= wait_time) {\r
dpu_err("dpu_wait_all_finish timeout!!!!");\r
+ if (dpu_timeout_cnt < 0x2) {\r
+ dpu_dfx_proc_read();\r
+ print_mipi_and_dpu_reg(0, TD_NULL);\r
+ }\r
+ dpu_timeout_cnt++;\r
return EXT_FAILURE;\r
}\r
return EXT_SUCCESS;\r
#include "dpu_hal.h"\r
#include "dpu_dfx.h"\r
#include "pm.h"\r
+#include "mipi_tx.h"\r
\r
#define DRV_DPU_MAX_LAYER_WIDTH 640\r
#define DRV_DPU_MAX_LAYER_HEIGHT 640\r
\r
layer_dev->create_cnt++;\r
layer_dev->is_create = TD_TRUE;\r
+ layer_dev->update_flag = TD_TRUE;\r
\r
osal_spin_unlock_irqrestore(&layer_dev->layer_lock, &flag);\r
\r
dpu_layer_update_layer_info(layer_dev, surface);\r
osal_spin_unlock_irqrestore(&layer_dev->layer_lock, &flag);\r
\r
+ dpu_dfx_info *dfx_info = dpu_dfx_get_info();\r
+ dfx_info->layer_info[layer_id].phy_addr = surface->phy_addr;\r
+ dfx_info->layer_info[layer_id].width = surface->width;\r
+ dfx_info->layer_info[layer_id].height = surface->height;\r
+ dfx_info->layer_info[layer_id].stride = surface->stride;\r
+\r
return EXT_SUCCESS;\r
}\r
\r
dpu_disp_set_timing_and_screen_region();\r
dpu_disp_set_chnl_reg_up();\r
dpu_isr_clear_finish_flag();\r
+\r
+ if (uapi_mipi_tx_is_in_ulps() == true) {\r
+ dpu_err("mipi_tx_is_not_exit_ulps, can not flush\n");\r
+ }\r
dpu_hal_disp_set_frame_ready();\r
\r
if (need_cur_done == TD_TRUE) {\r
\r
td_s32 drv_dpu_suspend(td_void *private_data);\r
td_s32 drv_dpu_resume(td_void *private_data);\r
+td_bool drv_dpu_get_suspend_flag(td_void);\r
\r
td_s32 uapi_dpu_module_init(void);\r
td_void uapi_dpu_module_exit(void);\r
\r
td_s32 drv_vau_suspend(td_void *private_data);\r
td_s32 drv_vau_resume(td_void *private_data);\r
+td_bool drv_vau_get_suspend_flag(td_void);\r
\r
td_s32 uapi_vau_module_init(td_void);\r
td_void uapi_vau_module_exit(td_void);\r
#include "soc_osal.h"\r
#include "vau_list.h"\r
#include "vau_mem.h"\r
+#include "drv_vau.h"\r
\r
/*-------------------------------- macro define -------------------------------------------*/\r
\r
\r
static td_void vau_dfx_print_func_time_info(td_void)\r
{\r
- uapi_reg_read(HAL_VAU_LIST_PFCNT, g_vau_dfx_info.func_info.time_info.list_pfcnt);\r
-\r
vau_print("-----------time info-----------\n");\r
vau_print("create_cost(us) :%u\n", (td_u32)(g_vau_dfx_info.func_info.time_info.create_cost));\r
vau_print("destroy_cost(us) :%u\n", (td_u32)(g_vau_dfx_info.func_info.time_info.destroy_cost));\r
vau_print("compose_cost(us) :%u\n", (td_u32)(g_vau_dfx_info.func_info.time_info.compose_cost));\r
vau_print("submit_cost(us) :%u\n", (td_u32)(g_vau_dfx_info.func_info.time_info.submit_cost));\r
vau_print("wait done cose(us) :%u\n", (td_u32)(g_vau_dfx_info.func_info.time_info.wait_for_done_cost));\r
+ vau_print("suspend/resume :%u/%u\n", g_vau_dfx_info.suspend_cnt, g_vau_dfx_info.resume_cnt);\r
+\r
+ if (drv_vau_get_suspend_flag() == TD_FALSE) {\r
+ uapi_reg_read(HAL_VAU_LIST_PFCNT, g_vau_dfx_info.func_info.time_info.list_pfcnt);\r
+ } else {\r
+ vau_print("vau is in lowpower state, list pfcnt is invalid!");\r
+ }\r
vau_print("list pfcnt/time_us :%u/%u\n", g_vau_dfx_info.func_info.time_info.list_pfcnt,\r
g_vau_dfx_info.func_info.time_info.list_pfcnt / 176); /* 0.9V AXI 176M */\r
- vau_print("suspend/resume :%u/%u\n", g_vau_dfx_info.suspend_cnt, g_vau_dfx_info.resume_cnt);\r
}\r
\r
static td_void vau_dfx_print_func_cnt_info(td_void)\r
{\r
td_u32 cnt = g_vau_dfx_info.func_info.func_cnt.submit_cnt - g_vau_dfx_info.func_info.func_cnt.submit_usr_cnt;\r
- td_u32 hard_start_cnt;\r
- td_u32 hard_list_finish_cnt;\r
- td_u32 hard_int_cnt;\r
- uapi_reg_read(HAL_VAU_START_CNT, hard_start_cnt);\r
- uapi_reg_read(HAL_VAU_LIST_FINISH_CNT, hard_list_finish_cnt);\r
- uapi_reg_read(HAL_VAU_INT_CNT, hard_int_cnt);\r
\r
vau_print("-----------call count info-----------\n");\r
vau_print("create_cnt :%u\n", g_vau_dfx_info.func_info.func_cnt.create_cnt);\r
vau_print(" isr zero value :%u)\n", g_vau_dfx_info.func_info.isr_cnt.isr_status_zero_value_cnt);\r
vau_print("tasklet_func_cnt :%u\n", g_vau_dfx_info.func_info.func_cnt.tasklet_func_cnt);\r
vau_print("execute_node_cnt :%u\n", g_vau_dfx_info.func_info.func_cnt.execute_node_cnt);\r
+\r
+ td_u32 hard_start_cnt = 0;\r
+ td_u32 hard_list_finish_cnt = 0;\r
+ td_u32 hard_int_cnt = 0;\r
+ if (drv_vau_get_suspend_flag() == TD_FALSE) {\r
+ uapi_reg_read(HAL_VAU_START_CNT, hard_start_cnt);\r
+ uapi_reg_read(HAL_VAU_LIST_FINISH_CNT, hard_list_finish_cnt);\r
+ uapi_reg_read(HAL_VAU_INT_CNT, hard_int_cnt);\r
+ } else {\r
+ vau_print("vau is in lowpower state, hard_int_cnt/hard_start_cnt/hard_list_finish_cnt is invalid!");\r
+ }\r
+\r
// hard int count\r
vau_print("hard int cnt :%u ", hard_int_cnt);\r
vau_print("(hard start cnt :%u", hard_start_cnt);\r
{\r
return &g_vau_dfx_info;\r
}\r
+\r
+td_s32 vau_dfx_enable_api_print(int argc, const char *argv[])\r
+{\r
+ if (argc < 1) {\r
+ vau_print("should input enable switch 0/1\n");\r
+ return EXT_FAILURE;\r
+ }\r
+\r
+ g_vau_dfx_info.is_print_vau_api = (td_bool)strtoul(argv[0x0], TD_NULL, 10); /* 10: index */\r
+ if (g_vau_dfx_info.is_print_vau_api) {\r
+ vau_print("open vau_api_print\n");\r
+ } else {\r
+ vau_print("close vau_api_print\n");\r
+ }\r
+\r
+ return EXT_SUCCESS;\r
+}\r
td_u32 resume_cnt;\r
dfx_mem_info mem_info;\r
dfx_func_info func_info;\r
+ td_bool is_print_vau_api;\r
} vau_dfx_info;\r
\r
/*-------------------------------- func declares ------------------------------------------*/\r
return;\r
}\r
\r
-#ifdef CONFIG_VAU_DFX_DEBUG\r
td_void vau_hal_apb_print_reg(td_u32 base, td_u32 start, td_u32 end)\r
{\r
volatile td_u32 value;\r
addr[i * 4], addr[i * 4 + 1], addr[i * 4 + 2], addr[i * 4 + 3]); /* 2,3,4:index */\r
}\r
\r
- if (vau_dfx_check_mask(VAU_DBG_MASK_PRINT_PATH)) {\r
- uapi_reg_read(HAL_VAU_DRAW_PATH_CMD_ADDR, value);\r
- td_u8 *cmds = (td_u8 *)(uintptr_t)value;\r
- uapi_reg_read(HAL_VAU_DRAW_PATH_DATA_ADDR, value);\r
- td_float *datas = (td_float *)(uintptr_t)value;\r
- uapi_reg_read(HAL_VAU_DRAW_PATH_NUM_ADDR, value);\r
- u_vau_draw_path_num num = { .u32 = value };\r
+ uapi_reg_read(HAL_VAU_DRAW_PATH_CMD_ADDR, value);\r
+ td_u8 *cmds = (td_u8 *)(uintptr_t)value;\r
+ uapi_reg_read(HAL_VAU_DRAW_PATH_DATA_ADDR, value);\r
+ td_float *datas = (td_float *)(uintptr_t)value;\r
+ uapi_reg_read(HAL_VAU_DRAW_PATH_NUM_ADDR, value);\r
+ u_vau_draw_path_num num = { .u32 = value };\r
\r
- vau_dfx_print_path(cmds, datas, num.bits.cmd_num, num.bits.data_num);\r
- }\r
+ vau_dfx_print_path(cmds, datas, num.bits.cmd_num, num.bits.data_num);\r
\r
return;\r
}\r
vau_hal_apb_print_reg(HAL_VAU_REG_BASEADDR, 0, 0x40AC);\r
return;\r
}\r
-\r
-#endif\r
-\r
#include "vau_dfx.h"\r
#include "vau_pre_process.h"\r
#include "vau_handle.h"\r
+#include "drv_vau_struct.h"\r
\r
#define DRV_VAU_IOCTL_CMD_NUM 20\r
\r
osal_spin_unlock_irqrestore(&vau_handle_list->lock, &flags);\r
}\r
\r
+td_bool drv_vau_get_suspend_flag(td_void)\r
+{\r
+ unsigned long flags = 0;\r
+ vau_handle_mgr *vau_handle_list = vau_handle_list_get();\r
+\r
+ osal_spin_lock_irqsave(&vau_handle_list->lock, &flags);\r
+ td_bool suspend_flag = g_vau_suspend_flag;\r
+ osal_spin_unlock_irqrestore(&vau_handle_list->lock, &flags);\r
+ return suspend_flag;\r
+}\r
+\r
td_s32 drv_vau_suspend(td_void *private_data)\r
{\r
uapi_unused(private_data);\r
.pmops = &g_vau_ops,\r
};\r
\r
+static td_void vau_print_api(td_u32 ioctl_cmd, td_void *para)\r
+{\r
+ td_handle handle = *(td_handle *)para;\r
+\r
+ if (ioctl_cmd == DRV_VAU_CMD_CREATE) {\r
+ vau_err("uapi_vau_create:handle = %u", handle);\r
+ } else if (ioctl_cmd == DRV_VAU_CMD_DESTROY) {\r
+ vau_err("uapi_vau_destroy:handle = %u", handle);\r
+ } else if (ioctl_cmd == DRV_VAU_CMD_CANCEL) {\r
+ vau_err("uapi_vau_cancel:handle = %u", handle);\r
+ } else if (ioctl_cmd == DRV_VAU_CMD_WAIT_FOR_DONE) {\r
+ vau_err("uapi_vau_wait_for_done:handle = %u", handle);\r
+ } else if (ioctl_cmd == DRV_VAU_CMD_FILL) {\r
+ drv_vau_blit_cmd *blit_cmd = (drv_vau_blit_cmd *)para;\r
+ handle = blit_cmd->hanlde;\r
+ vau_err("uapi_vau_fill:handle = %u", handle);\r
+ } else if (ioctl_cmd == DRV_VAU_CMD_BLIT) {\r
+ drv_vau_blit_cmd *blit_cmd = (drv_vau_blit_cmd *)para;\r
+ handle = blit_cmd->hanlde;\r
+ vau_err("uapi_vau_render:handle = %u", handle);\r
+ } else if (ioctl_cmd == DRV_VAU_CMD_COMPOSE) {\r
+ drv_vau_blit_cmd *blit_cmd = (drv_vau_blit_cmd *)para;\r
+ handle = blit_cmd->hanlde;\r
+ vau_err("uapi_vau_compose:handle = %u", handle);\r
+ } else if (ioctl_cmd == DRV_VAU_CMD_SUBMIT) {\r
+ drv_vau_submit_cmd *submit_cmd = (drv_vau_submit_cmd *)para;\r
+ handle = submit_cmd->handle;\r
+ vau_err("uapi_vau_submit:handle = %u", handle);\r
+ } else {\r
+ }\r
+}\r
td_s32 vau_ioctl(td_s32 module_idx, td_ulong ioctl_cmd, td_void *para)\r
{\r
uapi_unused(module_idx);\r
return EXT_FAILURE;\r
}\r
\r
- return (td_s32)g_vau_ioctl_cmd_list[ioctl_cmd].handler((td_u32)ioctl_cmd, para, TD_NULL);\r
+ td_s32 ret = (td_s32)g_vau_ioctl_cmd_list[ioctl_cmd].handler((td_u32)ioctl_cmd, para, TD_NULL);\r
+ \r
+ vau_dfx_info *vau_info = vau_dfx_get_info();\r
+ if (vau_info->is_print_vau_api) {\r
+ vau_print_api((td_u32)ioctl_cmd, para);\r
+ }\r
+ return ret;\r
}\r
\r
static td_s32 vau_register_device(td_void)\r
#include "vau_handle.h"
#include "vau_hal.h"
#include "vau_hal_apb.h"
+#include "drv_vau.h"
static osal_wait g_vau_block_job_wq; /* wait queue used to block */
static vau_sw_job_mgr *g_vau_sw_job_list;
vau_mem_check_psram_addr();
vau_dfx_proc_read(0, TD_NULL);
-#ifdef CONFIG_VAU_DFX_DEBUG
- if (vau_dfx_check_mask(VAU_DBG_MASK_PRINT_ERROR_REG)) {
- vau_hal_apb_print_all_reg();
- }
-#endif
+ vau_hal_apb_print_all_reg();
if (!g_vau_sw_job_list->dbg.no_reset) {
vau_hal_init();
} else {
#endif
#define CAPABILITY_HW_SUPPORT_EMOJI 1
+#define CAPABILITY_SW_DFX_FRAME_TRACE 1
#endif // GRAPHIC_HARDWARE_CONFIG_H
#if LV_USE_LOW_POWER_MANAGER
#include "lv_low_power_manager.h"
#endif
+#include "misc/lv_assert.h"
static lv_ll_t g_keyInjectorDataLL;
*/
#include "lv_input_device.h"
-#include "input_manager.h"
#if LV_USE_LOW_POWER_MANAGER
#include "lv_low_power_manager.h"
#endif
+#include "input_manager.h"
+#include "stdlib.h"
static lv_indev_data_t g_curTouchData = {0};
static bool g_isPendingTouchData = false;
*/
~TextExt() override;
+ void SetText(const char* text) override;
+
#if ENABLE_FONT_VECTOR_GLOBAL
/**
* @brief Set the text string by text id.
*
* @param textId Index of text array.
*/
- void SetText(uint16_t textId);
+ void SetTextId(uint16_t textId);
/**
* @brief Reset text string by text id.
#endif
private:
- using Text::SetText;
uint16_t textId_ = FontGlobalManager::INVALID_TEXT_ID;
#if ENABLE_SHAPING
bool isNeedShaping_ = 0;
blurRadius_ = radius;
}
+ /**
+ * @brief Set the compensation distance after a finger lifts the screen.
+ * @param value Indicates the compensation distance to set.
+ * @param direction The target direction: 0 means horizontal direction, 1 means vertical direction.
+ * @since 1.0
+ * @version 1.0
+ */
+ void SetSwipeACCLevel(uint8_t value, uint8_t direction = 0);
+
private:
using UIViewGroup::Remove;
uint16_t blurRadius_ = 10;
#define GRAPHIC_UI_LIST_EXT_H\r
#include "graphic_config.h"\r
#include "components/ui_list.h"\r
+#include "gfx_utils/vector.h"\r
\r
namespace OHOS {\r
/**\r
scaleFactor_ = value;\r
}\r
\r
+ /**\r
+ * @brief Sets the spacing between items.\r
+ *\r
+ * @param value Indicates spacing between items.\r
+ */\r
+ void SetItemSpace(uint16_t value)\r
+ {\r
+ space_ = value;\r
+ }\r
+\r
void ReMeasure() override;\r
\r
private:\r
+ void ModifyItemSpace(int16_t centerIndex);\r
+ void ModifyMidAdjSpace(int16_t centerIndex, int16_t& prevIndex, int16_t& nextIndex);\r
int16_t scaleFactor_ = 400; // 400: default scale factor.\r
+ uint16_t space_ = 0;\r
+ Graphic::Vector<UIView*> items_;\r
};\r
} // OHOS\r
#endif // GRAPHIC_UI_LIST_EXT_H\r
* @since 1.0\r
* @version 1.0\r
*/\r
- Vector2<float> GetScaleCenter()\r
- {\r
- return itemScaleCenter_;\r
- }\r
+ Vector2<float> GetScaleCenter();\r
\r
void ReMeasure() override;\r
void OnDraw(BufferInfo& gfxDstBuffer, const Rect& invalidatedArea) override;\r
private:\r
void InitUILabelExt();\r
void InitUIImageView();\r
- void SetScaleCenter();\r
\r
UIImageView* image_;\r
UILabelExt* label_;\r
- Rect textOrigRect_;\r
- Rect imgOrigRect_;\r
uint8_t labelLineBreakMode_;\r
bool needRefresh_;\r
int16_t imgOffset_ = 0;\r
int16_t textOffset_ = 20; // 20: default text offset.\r
- Vector2<float> textScaleCenter_ = {0.0, 0.0};\r
- Vector2<float> imgScaleCenter_ = {0.0, 0.0};\r
- Vector2<float> itemScaleCenter_ = {0.0, 0.0};\r
ScaleAlignMode transAlignMode_ = ScaleAlignMode::ALIGN_ITEM_CENTER;\r
UIImageView::ImageResizeMode resizeMode_ = UIImageView::CONTAIN;\r
};\r
void ReMeasure() override;\r
\r
private:\r
+ void ModifyMidAdjSpace(int16_t centerIndex, int16_t& prevIndex, int16_t& nextIndex);\r
TransformFunc transformFunc_;\r
uint16_t space_;\r
Graphic::Vector<UIView*> items_;\r
#include <cstdlib>
#include "tcxo.h"
#include "graphic_config.h"
-#include "gfx_utils/vector.h"
#include "components/ui_view.h"
#include "components/root_view.h"
#include "common/graphic_utils.h"
#define FRAME_TRACE_SET_RECT(rect) DfxFrameTrace::GetInstance().SetDrawRect(rect)
#define FRAME_TRACE_END_TRACE() DfxFrameTrace::GetInstance().EndTrace()
#define FRAME_TRACE_SHOW() DfxFrameTrace::GetInstance().ShowFrameTrace()
+#define EVENT_TRACE_START() DfxFrameTrace::GetInstance().EventTraceStart()
+#define EVENT_TRACE_END() DfxFrameTrace::GetInstance().EventTraceEnd()
+#define TASK_TRACE_START() DfxFrameTrace::GetInstance().TaskTraceStart()
+#define TASK_TRACE_END() DfxFrameTrace::GetInstance().TaskTraceEnd()
#else
#define FRAME_TRACE_START(type)
#define FRAME_TRACE_END(type, prect)
#define FRAME_TRACE_SET_RECT(rect)
#define FRAME_TRACE_END_TRACE()
#define FRAME_TRACE_SHOW()
+#define EVENT_TRACE_START()
+#define EVENT_TRACE_END()
+#define TASK_TRACE_START()
+#define TASK_TRACE_END()
#endif
namespace OHOS {
DfxFrameTrace& operator=(DfxFrameTrace&) = delete;
void EnableFrameTrace(int enable)
{
- enableTrace_ = enable;
+ traceCount_ = enable;
}
void BeginTrace()
{
- beginTrace_ = enableTrace_ > 0 ? true : false;
+ beginTrace_ = traceCount_ > 0 ? true : false;
if (beginTrace_) {
isNativeRunning_ = IsNativeRunning();
freq_ = GetFrequence();
- --enableTrace_;
+ --traceCount_;
}
}
void FrameTraceStart(FrameTraceType type);
void FrameTraceEnd(FrameTraceType type, const Rect *rect = nullptr);
- void ShowFrameTrace() const;
+ void ShowFrameTrace();
+
+ void EventTraceStart();
+ void EventTraceEnd();
+ void TaskTraceStart();
+ void TaskTraceEnd();
private:
DfxFrameTrace()
void RecordStart(FrameTraceType type);
void RecordEnd(FrameTraceType type, const Rect *rect);
static constexpr int32_t DRAW_RECORD_MAX = 128;
- struct {
+ struct FrameTrace {
FrameTraceType cmd;
uint64_t preTime;
uint64_t costTime;
bool isNeedWait;
} trace_[DRAW_RECORD_MAX];
+
+ struct FrameRecord {
+ FrameRecord() : totalTime(0), isNativeRunning(0), freq(0), pathCnt(0),
+ drawCount(0), trace(nullptr), rect(nullptr)
+ {
+ ++frmCnt_;
+ }
+
+ ~FrameRecord()
+ {
+ if (trace != nullptr) {
+ delete []trace;
+ trace = nullptr;
+ }
+ if (rect != nullptr) {
+ delete []rect;
+ rect = nullptr;
+ }
+ --frmCnt_;
+ }
+ uint64_t totalTime;
+ int isNativeRunning;
+ int freq;
+ int pathCnt;
+ int drawCount;
+ Rect drawRect;
+ FrameTrace *trace;
+ Rect *rect;
+ };
+
+ struct TaskRecord {
+ TaskRecord() : startTime(0), endTime(0), frameInfo(nullptr), next(nullptr)
+ {
+ ++tskCnt_;
+ }
+ ~TaskRecord()
+ {
+ if (frameInfo != nullptr) {
+ delete frameInfo;
+ frameInfo = nullptr;
+ }
+ --tskCnt_;
+ }
+ uint64_t startTime;
+ uint64_t endTime;
+ FrameRecord *frameInfo;
+ TaskRecord *next;
+ };
+
+ struct EventRecord {
+ EventRecord() : startTime(0), endTime(0), tasks(nullptr), tailTsk(nullptr), next(nullptr)
+ {
+ ++evtCnt_;
+ }
+ ~EventRecord()
+ {
+ --evtCnt_;
+ }
+ uint64_t startTime;
+ uint64_t endTime;
+ TaskRecord *tasks;
+ TaskRecord *tailTsk;
+ EventRecord *next;
+ };
+
+ void WriteFrameRecord(FrameRecord *frame) const;
+ void ShowFrameRecord(FrameRecord *frame) const;
+ void ShowEventRecord() const;
+ void ClearEvents();
+
+ static int evtCnt_;
+ static int tskCnt_;
+ static int frmCnt_;
Rect rect_[DRAW_RECORD_MAX];
int pathCnt_ = 0;
int pathIndex_ = -1;
uint64_t endTime_ = 0;
int32_t drawCount_ = 0;
int32_t drawStack_ = 0;
- int enableTrace_ = 0;
+ int traceCount_ = 0;
bool beginTrace_ = false;
int isNativeRunning_ = 0;
int freq_ = 0;
+ EventRecord *events_ = nullptr;
+ EventRecord *tailEvt_ = nullptr;
+ bool eventRecording_ = false;
+ bool taskRecording_ = false;
};
} // OHOS
#endif // GRAPHIC_LITE_DFX_FRAME_TRACE_H
*/\r
int IsNativeRunning() const;\r
\r
+ /**\r
+ * @brief Return whether current task is native ui task\r
+ */\r
+ static bool IsNativeUITask();\r
+\r
/**\r
* @brief Return whether screen is on or not.\r
*/\r
*/\r
void GpuResetEnd(void);\r
\r
-#ifdef ENABLE_CMSIS\r
static void NativeMainThread(void* args);\r
static void RtcEventThread(void* args);\r
-#else\r
- static void* NativeMainThread(void* args);\r
- static void* RtcEventThread(void* args);\r
-#endif\r
\r
+ OHOS::GraphicMutex switchMutex_; // ensure that js syncHwDraw and native SetNativeUIRunning run in sync\r
private:\r
friend class GraphicEventHandler;\r
static VsyncCallback jsVsyncCallback_;\r
static osal_atomic isScreenOn_;\r
static OHOS::GraphicMutex rtcEventMutex_;\r
static OHOS::GraphicCond rtcEventCond_;\r
+ static bool isJsTaskFinished_; // ensure that native task run after js task is finished\r
bool isGpuReseting = false;\r
void DecreaseTriggerCount();\r
void SetUpRootView();\r
\r
#include "graphic_event_handler.h"\r
#include "dfx/dfx_record.h"\r
+#include "dfx/dfx_frame_trace.h"\r
#include "common/low_power_manager.h"\r
#include "gfx_utils/graphic_log.h"\r
\r
GraphicEvent event = std::move(eventQueue_.front());\r
eventQueue_.pop();\r
queueMutex_.Unlock();\r
+ EVENT_TRACE_START();\r
event();\r
+ EVENT_TRACE_END();\r
DfxRecordShow();\r
}\r
}\r
#ifdef SUPPORT_GPU_JPEG\r
#include "drv_jpeg_intf.h"\r
#endif\r
+#include "cmsis_os2.h"\r
\r
VsyncCallback GraphicService::jsVsyncCallback_;\r
osal_atomic GraphicService::isNativeRunning_{1};\r
osal_atomic GraphicService::isScreenOn_{0};\r
OHOS::GraphicMutex GraphicService::rtcEventMutex_;\r
OHOS::GraphicCond GraphicService::rtcEventCond_;\r
+bool GraphicService::isJsTaskFinished_ = true;\r
+#ifdef _WIN32\r
+static uint32_t nativeUITaskId_ = 0xFFFFFFFF;\r
+#endif\r
static ThreadId g_rtcEventThreadId;\r
static ThreadId g_mainThreadId;\r
-\r
GraphicService::GraphicService() {}\r
\r
GraphicService::~GraphicService() {}\r
GRAPHIC_LOGI("Trigger JS Task failed. Native is running or Graphic Task is already triggered.");\r
return false;\r
}\r
-\r
+ isJsTaskFinished_ = false;\r
OHOS::TaskManager::GetInstance()->TaskHandler();\r
+ isJsTaskFinished_ = true;\r
return true;\r
}\r
\r
osal_atomic_inc(&graphicTaskTriggeredCount_);\r
OHOS::GraphicEventHandler::GetInstance()->PostGraphicEvent(\r
[] {\r
- if (GraphicService::GetInstance()->IsScreenOn()) {\r
+ if (GraphicService::GetInstance()->IsScreenOn() && isJsTaskFinished_) {\r
OHOS::TaskManager::GetInstance()->TaskHandler();\r
} else {\r
- GRAPHIC_LOGW("ignore redundant task when screen is off\n");\r
+ GRAPHIC_LOGW("ignore redundant task when screen is off or js task is not finished\n");\r
}\r
GraphicService::GetInstance()->DecreaseTriggerCount();\r
},\r
\r
void GraphicService::SetNativeUIRunning(bool isRunning)\r
{\r
+ switchMutex_.Lock();\r
if (isRunning) {\r
osal_atomic_set(&isNativeRunning_, 1);\r
} else {\r
OHOS::GraphicEventHandler::GetInstance()->ClearGraphicEvent();\r
osal_atomic_set(&graphicTaskTriggeredCount_, 0);\r
}\r
+ switchMutex_.Unlock();\r
}\r
\r
int GraphicService::IsNativeRunning() const\r
OHOS::LiteMGfxEngine::GetInstance()->EnableAsyncMode(enable);\r
}\r
\r
-#ifdef ENABLE_CMSIS\r
-void GraphicService::NativeMainThread(void* args)\r
+bool GraphicService::IsNativeUITask()\r
{\r
- OHOS::GraphicEventHandler::GetInstance()->Run();\r
-}\r
+#ifdef _WIN32\r
+ return nativeUITaskId_ == GetCurrentThreadId();\r
#else\r
-void* GraphicService::NativeMainThread(void* args)\r
+ return (strcmp(osThreadGetName(osThreadGetId()), "GuiMainThread") == 0);\r
+#endif\r
+}\r
+\r
+void GraphicService::NativeMainThread(void* args)\r
{\r
+#ifdef _WIN32\r
+ nativeUITaskId_ = GetCurrentThreadId();\r
+#endif\r
OHOS::GraphicEventHandler::GetInstance()->Run();\r
- return nullptr;\r
}\r
-#endif\r
\r
void GraphicService::UpdateGraphicEvent()\r
{\r
rtcEventCond_.Signal();\r
}\r
\r
-#ifdef ENABLE_CMSIS\r
void GraphicService::RtcEventThread(void* args)\r
-#else\r
-void* GraphicService::RtcEventThread(void* args)\r
-#endif\r
{\r
while (true) {\r
rtcEventMutex_.Lock();\r
jsVsyncCallback_();\r
}\r
}\r
-#if !defined(ENABLE_CMSIS)\r
- return nullptr;\r
-#endif\r
}\r
\r
void GraphicService::SetUpRootView(void)\r
UIThreadAttr rtcAttr;\r
rtcAttr.name = "RtcEventThread";\r
rtcAttr.stackSize = 0x800u;\r
-#ifdef ENABLE_CMSIS\r
rtcAttr.priority = static_cast<uint8_t>(osPriorityAboveNormal2);\r
-#endif\r
g_rtcEventThreadId = (ThreadId)ThreadCreate((Runnable)GraphicService::RtcEventThread, nullptr, &rtcAttr);\r
if (g_rtcEventThreadId == nullptr) {\r
GRAPHIC_LOGE("%s: create thread fail\n", __func__);\r
UIThreadAttr mainAttr;\r
mainAttr.name = "GuiMainThread";\r
mainAttr.stackSize = 0x6000u;\r
-#ifdef ENABLE_CMSIS\r
mainAttr.priority = static_cast<uint8_t>(osPriorityAboveNormal2);\r
-#endif\r
g_mainThreadId = (ThreadId)ThreadCreate((Runnable)GraphicService::NativeMainThread, nullptr, &mainAttr);\r
if (g_mainThreadId == nullptr) {\r
GRAPHIC_LOGE("create thread fail\n");\r
-/*\r
- * Copyright (c) 2023 CompanyNameMagicTag.\r
- * Licensed under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- *\r
- * http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * Unless required by applicable law or agreed to in writing, software\r
- * distributed under the License is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- */\r
-\r
-#include "components/ui_list_ext.h"\r
-#include "animator/easing_equation.h"\r
-#include "components/ui_menu_item.h"\r
-\r
-namespace OHOS {\r
-void UIListExt::ReMeasure()\r
-{\r
- UIMenuItem* view = static_cast<UIMenuItem*>(GetChildrenHead());\r
- if (view == nullptr) {\r
- return;\r
- }\r
-\r
- int16_t x;\r
- int16_t y;\r
- int16_t midX = GetX() + GetWidth() / 2;\r
- int16_t midY = GetY() + GetHeight() / 2;\r
- do {\r
- x = view->GetX();\r
- y = view->GetY();\r
- if (direction_ == VERTICAL) {\r
- int offset = (y + view->GetHeight() / 2 - midY);\r
- int temp = EasingEquation::SineEaseIn(0, scaleFactor_, abs(offset), scaleFactor_);\r
- float scale = 1.0 - (static_cast<float>(temp) / scaleFactor_);\r
- view->Scale(Vector2<float>(scale, scale), view->GetScaleCenter());\r
- } else {\r
- int offset = (x + view->GetWidth() / 2 - midX);\r
- int temp = EasingEquation::SineEaseIn(0, scaleFactor_, abs(offset), scaleFactor_);\r
- float scale = 1.0 - (static_cast<float>(temp) / scaleFactor_);\r
- view->Scale(Vector2<float>(scale, scale), view->GetScaleCenter());\r
- }\r
- view = static_cast<UIMenuItem*>(view->GetNextSibling());\r
- } while (view != nullptr);\r
-}\r
-} // namespace OHOS\r
+/*
+ * Copyright (c) 2023 CompanyNameMagicTag.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "components/ui_list_ext.h"
+#include "animator/easing_equation.h"
+#include "components/ui_menu_item.h"
+
+namespace OHOS {
+void UIListExt::ReMeasure()
+{
+ UIMenuItem* view = static_cast<UIMenuItem*>(GetChildrenHead());
+ if (view == nullptr) {
+ return;
+ }
+
+ int16_t x;
+ int16_t y;
+ int16_t midX = GetX() + GetWidth() / 2;
+ int16_t midY = GetY() + GetHeight() / 2;
+ items_.Clear();
+ int16_t centerIndex;
+ do {
+ x = view->GetX();
+ y = view->GetY();
+ items_.PushBack(view);
+ view->Translate(Vector2<int16_t>(0, 0)); // ignore previous translate to set right transform
+ if (direction_ == VERTICAL) {
+ int offset = (y + view->GetHeight() / 2 - midY);
+ int temp = EasingEquation::SineEaseIn(0, scaleFactor_, abs(offset), scaleFactor_);
+ float scale = 1.0 - (static_cast<float>(temp) / scaleFactor_);
+ view->Scale(Vector2<float>(scale, scale), view->GetScaleCenter());
+ if ((y <= midY) && (y + view->GetHeight() > midY)) {
+ centerIndex = items_.Size() - 1;
+ }
+ } else {
+ int offset = (x + view->GetWidth() / 2 - midX);
+ int temp = EasingEquation::SineEaseIn(0, scaleFactor_, abs(offset), scaleFactor_);
+ float scale = 1.0 - (static_cast<float>(temp) / scaleFactor_);
+ view->Scale(Vector2<float>(scale, scale), view->GetScaleCenter());
+ if ((x <= midX) && (x + view->GetWidth() > midX)) {
+ centerIndex = items_.Size() - 1;
+ }
+ }
+ view = static_cast<UIMenuItem*>(view->GetNextSibling());
+ } while (view != nullptr);
+ ModifyItemSpace(centerIndex);
+}
+
+void UIListExt::ModifyMidAdjSpace(int16_t centerIndex, int16_t& prevIndex, int16_t& nextIndex)
+{
+ Rect centerRect = items_[centerIndex]->GetRect();
+ if (direction_ == VERTICAL) {
+ int16_t centerY = centerRect.GetTop() + (centerRect.GetHeight() >> 1);
+ int16_t midY = GetHeight() / 2;
+ if (centerY == midY) {
+ return;
+ }
+ if (centerY > midY) {
+ prevIndex = centerIndex - 1;
+ } else {
+ nextIndex = centerIndex + 1;
+ }
+ if ((prevIndex >= 0) && (nextIndex < items_.Size())) {
+ Rect prevRect = items_[prevIndex]->GetRect();
+ Rect nextRect = items_[nextIndex]->GetRect();
+ int16_t prevMidY = prevRect.GetTop() + (prevRect.GetHeight() >> 1);
+ int16_t nextMidY = nextRect.GetTop() + (nextRect.GetHeight() >> 1);
+ int16_t delta = space_ - (nextRect.GetTop() - prevRect.GetBottom());
+ int16_t prevOffst = (midY - prevMidY) * delta * 1.0f / (nextMidY - prevMidY);
+ int16_t nextOffst = (nextMidY - midY) * delta * 1.0f / (nextMidY - prevMidY);
+ items_[prevIndex]->Translate(Vector2<int16_t>(0, -prevOffst));
+ items_[nextIndex]->Translate(Vector2<int16_t>(0, nextOffst));
+ }
+ } else {
+ int16_t centerX = centerRect.GetLeft() + (centerRect.GetWidth() >> 1);
+ int16_t midX = GetWidth() / 2;
+ if (centerX == midX) {
+ return;
+ }
+ if (centerX > midX) {
+ prevIndex = centerIndex - 1;
+ } else {
+ nextIndex = centerIndex + 1;
+ }
+ if ((prevIndex >= 0) && (nextIndex < items_.Size())) {
+ Rect prevRect = items_[prevIndex]->GetRect();
+ Rect nextRect = items_[nextIndex]->GetRect();
+ int16_t prevMidX = prevRect.GetLeft() + (prevRect.GetWidth() >> 1);
+ int16_t nextMidX = nextRect.GetLeft() + (nextRect.GetWidth() >> 1);
+ int16_t delta = space_ - (nextRect.GetLeft() - prevRect.GetRight());
+ int16_t prevOffst = (midX - prevMidX) * delta * 1.0f / (nextMidX - prevMidX);
+ int16_t nextOffst = (nextMidX - midX) * delta * 1.0f / (nextMidX - prevMidX);
+ items_[prevIndex]->Translate(Vector2<int16_t>(-prevOffst, 0));
+ items_[nextIndex]->Translate(Vector2<int16_t>(nextOffst, 0));
+ }
+ }
+}
+
+void UIListExt::ModifyItemSpace(int16_t centerIndex)
+{
+ int16_t prevIndex = centerIndex;
+ int16_t nextIndex = centerIndex;
+ // Step 1. only modify two neighboring items in the middle to ensure smoothly scrolling
+ ModifyMidAdjSpace(centerIndex, prevIndex, nextIndex);
+ Rect curRect;
+ Rect preRect;
+ int16_t diff = 0;
+ // Step 2. modify other items space
+ if (direction_ == VERTICAL) {
+ for (int16_t i = prevIndex - 1; i >= 0; i--) {
+ curRect = items_[i]->GetRect();
+ preRect = items_[i + 1]->GetRect();
+ diff = preRect.GetTop() - space_ - curRect.GetBottom();
+ items_[i]->Translate(Vector2<int16_t>(0, diff));
+ }
+ for (int16_t i = nextIndex + 1; i < items_.Size(); i++) {
+ curRect = items_[i]->GetRect();
+ preRect = items_[i - 1]->GetRect();
+ diff = preRect.GetBottom() + space_ - curRect.GetTop();
+ items_[i]->Translate(Vector2<int16_t>(0, diff));
+ }
+ } else {
+ for (int16_t i = prevIndex - 1; i >= 0; i--) {
+ curRect = items_[i]->GetRect();
+ preRect = items_[i + 1]->GetRect();
+ diff = preRect.GetLeft() - space_ - curRect.GetRight();
+ items_[i]->SetX(items_[i]->GetX() + diff);
+ }
+ for (int16_t i = nextIndex + 1; i < items_.Size(); i++) {
+ curRect = items_[i]->GetRect();
+ preRect = items_[i - 1]->GetRect();
+ diff = preRect.GetRight() + space_ - curRect.GetLeft();
+ items_[i]->SetX(items_[i]->GetX() + diff);
+ }
+ }
+}
+} // namespace OHOS
GraphicService::GetInstance()->PostGraphicEvent(\r
[&, ws] {\r
if (!ws.expired()) {\r
+ if (!GraphicService::GetInstance()->IsScreenOn()) {\r
+ isStopped_ = true; // Do not process video frame, when screen off and dpu suspended.\r
+ return;\r
+ }\r
LiteMGfxEngine::GetInstance()->EnableAsyncMode(false);\r
LiteMGfxEngine::GetInstance()->AddHardwareLayer(this);\r
DisplayDev::GetInstance()->SetLayerColorKey(LAYER_0, true, colorKey_.full);\r
}\r
}\r
\r
-void UIMenuItem::SetScaleCenter()\r
+Vector2<float> UIMenuItem::GetScaleCenter()\r
{\r
- int16_t itemOrigX = GetContentRect().GetX();\r
- int16_t itemOrigY = GetContentRect().GetY();\r
+ int16_t itemOrigX = GetOrigRect().GetX();\r
+ int16_t itemOrigY = GetOrigRect().GetY();\r
if (transAlignMode_ == ScaleAlignMode::ALIGN_TEXT_LEFT) {\r
- textScaleCenter_ = Vector2<float>{0.0, textOrigRect_.GetHeight() / 2.0f};\r
- imgScaleCenter_ = Vector2<float>{textOrigRect_.GetLeft() - imgOrigRect_.GetLeft(),\r
- textOrigRect_.GetTop() + textScaleCenter_.y_ - imgOrigRect_.GetTop()};\r
- itemScaleCenter_ = Vector2<float>{textOrigRect_.GetLeft() - itemOrigX,\r
- textOrigRect_.GetTop() + textScaleCenter_.y_ - itemOrigY};\r
+ return Vector2<float>{label_->GetX(), label_->GetHeight() / 2.0f};\r
} else if (transAlignMode_ == ScaleAlignMode::ALIGN_IMAGE_LEFT) {\r
- imgScaleCenter_ = Vector2<float>{0.0, imgOrigRect_.GetHeight() / 2.0f};\r
- textScaleCenter_ = Vector2<float>{imgOrigRect_.GetLeft() - textOrigRect_.GetLeft(),\r
- imgOrigRect_.GetTop() + imgScaleCenter_.y_ - textOrigRect_.GetTop()};\r
- itemScaleCenter_ = Vector2<float>{imgOrigRect_.GetLeft() - itemOrigX,\r
- imgOrigRect_.GetTop() + imgScaleCenter_.y_ - itemOrigY};\r
- } else if (transAlignMode_ == ScaleAlignMode::ALIGN_ITEM_CENTER) {\r
- itemScaleCenter_ = Vector2<float>{GetWidth() / 2.0f, GetHeight() / 2.0f};\r
- textScaleCenter_ = Vector2<float>{itemOrigX + itemScaleCenter_.x_ - textOrigRect_.GetLeft(),\r
- itemOrigY + itemScaleCenter_.y_ - textOrigRect_.GetTop()};\r
- imgScaleCenter_ = Vector2<float>{itemOrigX + itemScaleCenter_.x_ - imgOrigRect_.GetLeft(),\r
- itemOrigY + itemScaleCenter_.y_ - imgOrigRect_.GetTop()};\r
+ return Vector2<float>{image_->GetX(), image_->GetHeight() / 2.0f};\r
+ } else {\r
+ return Vector2<float>{GetWidth() / 2.0f, GetHeight() / 2.0f};\r
}\r
}\r
\r
void UIMenuItem::ReMeasure()\r
{\r
- Rect contentRect = GetContentRect();\r
if (needRefresh_) {\r
if (image_ != nullptr) {\r
image_->SetPosition(imgOffset_, 0, GetHeight(), GetHeight());\r
}\r
}\r
needRefresh_ = false;\r
- if (image_ != nullptr) {\r
- imgOrigRect_ = contentRect;\r
- imgOrigRect_.SetX(contentRect.GetX() + imgOffset_);\r
- imgOrigRect_.SetWidth(GetHeight());\r
- }\r
-\r
- if (label_ != nullptr) {\r
- textOrigRect_ = contentRect;\r
- textOrigRect_.SetLeft(imgOrigRect_.GetRight() + textOffset_);\r
- }\r
-\r
- SetScaleCenter();\r
\r
- TransformMap transMap = GetTransformMap();\r
+ TransformMap transMap;\r
if (image_ != nullptr) {\r
- transMap.SetTransMapRect(imgOrigRect_);\r
- transMap.Scale(transMap.GetScaleCoef(), Vector3<float>{imgScaleCenter_.x_, imgScaleCenter_.y_, 0.0});\r
+ transMap.SetMatrix(GetTransformMap().GetOrigTransformMatrix());\r
image_->SetTransformMap(transMap);\r
}\r
\r
if (label_ != nullptr) {\r
- transMap.SetTransMapRect(textOrigRect_);\r
- transMap.Scale(transMap.GetScaleCoef(), Vector3<float>{textScaleCenter_.x_, textScaleCenter_.y_, 0.0});\r
+ transMap.SetMatrix(GetTransformMap().GetOrigTransformMatrix());\r
label_->SetTransformMap(transMap);\r
}\r
}\r
{FrameTraceType::HW_DRAW_ARC_RECT, "hw_arc_rect"},
};
+int DfxFrameTrace::evtCnt_ = 0;
+int DfxFrameTrace::tskCnt_ = 0;
+int DfxFrameTrace::frmCnt_ = 0;
+
uint64_t DfxFrameTrace::GetDuration(uint64_t start, uint64_t end) const
{
uint64_t dur = end >= start ? end - start : UINT64_MAX - start + end + 1;
++drawCount_;
}
-void DfxFrameTrace::ShowFrameTrace() const
+void DfxFrameTrace::ShowFrameTrace()
{
if (!beginTrace_) {
return;
}
- uint64_t totalTime = GetDuration(firstDrawTime_, endTime_);
- printf("\nisNativeRunning %d, freq %d", isNativeRunning_, freq_);
- printf("\nCmd count: %d time: %llu, {%d %d %d %d}\n", drawCount_, totalTime,
- drawRect_.GetLeft(), drawRect_.GetTop(), drawRect_.GetRight(), drawRect_.GetBottom());
- for (int32_t i = 0; i < drawCount_; ++i) {
- if (trace_[i].cmd == FrameTraceType::HW_DRAW_PATH) {
- printf("%d. %s: %llu, %llu, %d\n",
- i, ToString(trace_[i].cmd).c_str(), trace_[i].preTime, trace_[i].costTime, pathCnt_);
- continue;
- }
- if (trace_[i].cmd == FrameTraceType::HW_DRAW_SUBMIT) {
- printf("%d. %s: %llu, %llu, %d\n",
- i, ToString(trace_[i].cmd).c_str(), trace_[i].preTime, trace_[i].costTime, trace_[i].isNeedWait);
- continue;
- }
- if (!rect_[i].IsValid()) {
- printf("%d. %s: %llu, %llu\n", i, ToString(trace_[i].cmd).c_str(), trace_[i].preTime, trace_[i].costTime);
- continue;
- }
- printf("%d. %s: %llu, %llu, {%d, %d, %d, %d}\n",
- i, ToString(trace_[i].cmd).c_str(), trace_[i].preTime, trace_[i].costTime,
- rect_[i].GetLeft(), rect_[i].GetTop(), rect_[i].GetRight(), rect_[i].GetBottom());
+ if (events_ == nullptr || !eventRecording_ || !taskRecording_) {
+ return;
+ }
+ EventRecord &curEvt = *tailEvt_;
+ if (curEvt.tasks == nullptr) {
+ return;
}
+
+ FrameRecord *record = new (std::nothrow) FrameRecord;
+ if (record == nullptr) {
+ return;
+ }
+ WriteFrameRecord(record);
+ TaskRecord &curTask = *curEvt.tailTsk;
+ curTask.frameInfo = record;
}
void DfxFrameTrace::ClearState()
}
return "";
}
+
+void DfxFrameTrace::WriteFrameRecord(FrameRecord *frame) const
+{
+ if (frame == nullptr) {
+ return;
+ }
+ uint64_t totalTime = GetDuration(firstDrawTime_, endTime_);
+ frame->totalTime = totalTime;
+ frame->isNativeRunning = isNativeRunning_;
+ frame->freq = freq_;
+ frame->pathCnt = pathCnt_;
+ frame->drawRect = drawRect_;
+ if (drawCount_ <= 0) {
+ return;
+ }
+ frame->drawCount = drawCount_;
+ frame->trace = new (std::nothrow) FrameTrace[drawCount_];
+ frame->rect = new (std::nothrow) Rect[drawCount_];
+ if (frame->trace == nullptr || frame->rect == nullptr) {
+ return;
+ }
+ for (int i = 0; i < drawCount_; ++i) {
+ frame->trace[i] = trace_[i];
+ frame->rect[i] = rect_[i];
+ }
+}
+
+void DfxFrameTrace::ShowFrameRecord(FrameRecord *frame) const
+{
+ if (frame == nullptr) {
+ return;
+ }
+ int drawCnt = frame->drawCount;
+ printf(" isNativeRunning %d, freq %d\n", frame->isNativeRunning, frame->freq);
+ printf(" Cmd count: %d time: %llu, {%d %d %d %d}\n", drawCnt, frame->totalTime,
+ frame->drawRect.GetLeft(), frame->drawRect.GetTop(), frame->drawRect.GetRight(), frame->drawRect.GetBottom());
+ if (frame->trace == nullptr || frame->rect == nullptr) {
+ return;
+ }
+ for (int32_t i = 0; i < drawCnt; ++i) {
+ if (frame->trace[i].cmd == FrameTraceType::HW_DRAW_PATH) {
+ printf(" %d. %s: %llu, %llu, %d\n",
+ i, ToString(frame->trace[i].cmd).c_str(),
+ frame->trace[i].preTime, frame->trace[i].costTime, frame->pathCnt);
+ continue;
+ }
+ if (frame->trace[i].cmd == FrameTraceType::HW_DRAW_SUBMIT) {
+ printf(" %d. %s: %llu, %llu, %d\n",
+ i, ToString(frame->trace[i].cmd).c_str(),
+ frame->trace[i].preTime, frame->trace[i].costTime, frame->trace[i].isNeedWait);
+ continue;
+ }
+ if (!frame->rect[i].IsValid()) {
+ printf(" %d. %s: %llu, %llu\n", i, ToString(frame->trace[i].cmd).c_str(),
+ frame->trace[i].preTime, frame->trace[i].costTime);
+ continue;
+ }
+ printf(" %d. %s: %llu, %llu, {%d, %d, %d, %d}\n",
+ i, ToString(frame->trace[i].cmd).c_str(), frame->trace[i].preTime, frame->trace[i].costTime,
+ frame->rect[i].GetLeft(), frame->rect[i].GetTop(), frame->rect[i].GetRight(), frame->rect[i].GetBottom());
+ }
+}
+
+void DfxFrameTrace::ShowEventRecord() const
+{
+ int evtIndex = 0;
+ int taskIndex = 0;
+ printf("Total: E %d, T %d, F %d\n", evtCnt_, tskCnt_, frmCnt_);
+ for (EventRecord *it = events_; it != nullptr; it = it->next) {
+ EventRecord &evt = *it;
+ printf("\nE %d: %llu\n", evtIndex, GetDuration(evt.startTime, evt.endTime));
+ taskIndex = 0;
+ for (TaskRecord *it1 = evt.tasks; it1 != nullptr; it1 = it1->next) {
+ TaskRecord &tsk = *it1;
+ printf(" T %d: %llu\n", taskIndex, GetDuration(tsk.startTime, tsk.endTime));
+ if (tsk.frameInfo != nullptr) {
+ ShowFrameRecord(tsk.frameInfo);
+ }
+ taskIndex++;
+ }
+ evtIndex++;
+ }
+}
+
+void DfxFrameTrace::ClearEvents()
+{
+ for (EventRecord *it = events_; it != nullptr;) {
+ EventRecord &evt = *it;
+ for (TaskRecord *it1 = evt.tasks; it1 != nullptr;) {
+ TaskRecord *tskTmp = it1;
+ it1 = it1->next;
+ delete tskTmp;
+ }
+ EventRecord *tmp = it;
+ it = it->next;
+ delete tmp;
+ }
+ tailEvt_ = nullptr;
+ events_ = nullptr;
+}
+
+void DfxFrameTrace::EventTraceStart()
+{
+ if (traceCount_ <= 0) {
+ return;
+ }
+ EventRecord *event = new (std::nothrow) EventRecord;
+ if (event == nullptr) {
+ return;
+ }
+ event->startTime = uapi_tcxo_get_us();
+ if (events_ != nullptr) {
+ tailEvt_->next = event;
+ } else {
+ events_ = event;
+ }
+ tailEvt_ = event;
+ eventRecording_ = true;
+}
+
+void DfxFrameTrace::EventTraceEnd()
+{
+ if (events_ == nullptr || !eventRecording_) {
+ return;
+ }
+ EventRecord &curEvt = *tailEvt_;
+ curEvt.endTime = uapi_tcxo_get_us();
+ eventRecording_ = false;
+ if (traceCount_ == 0) {
+ ShowEventRecord();
+ ClearEvents();
+ }
+}
+
+void DfxFrameTrace::TaskTraceStart()
+{
+ if (events_ == nullptr || !eventRecording_) {
+ return;
+ }
+ EventRecord &curEvt = *tailEvt_;
+ TaskRecord *task = new (std::nothrow) TaskRecord;
+ if (task == nullptr) {
+ return;
+ }
+ task->startTime = uapi_tcxo_get_us();
+ if (curEvt.tasks != nullptr) {
+ curEvt.tailTsk->next = task;
+ } else {
+ curEvt.tasks = task;
+ }
+ curEvt.tailTsk = task;
+ taskRecording_ = true;
+}
+
+void DfxFrameTrace::TaskTraceEnd()
+{
+ if (events_ == nullptr || !eventRecording_ || !taskRecording_) {
+ return;
+ }
+ EventRecord &curEvt = *tailEvt_;
+ if (curEvt.tasks == nullptr) {
+ return;
+ }
+ TaskRecord &task = *curEvt.tailTsk;
+ task.endTime = uapi_tcxo_get_us();
+ taskRecording_ = false;
+}
+
} // OHOS
list_->SetThrowDrag(true);
list_->SetStyle(STYLE_BACKGROUND_OPA, OPA_TRANSPARENT);
list_->SetMaxScrollDistance(1000); // 1000: max scroll distance
- list_->SetSwipeACCLevel(800); // 800: compensation distance
+ list_->SetSwipeACCLevel(200); // 200: compensation distance
list_->SetDragACCLevel(5); // 5: drag acceleration
list_->SetYScrollBarVisible(true);
if (animator_ == nullptr) {
list_->SetThrowDrag(true);
list_->SetStyle(STYLE_BACKGROUND_OPA, OPA_TRANSPARENT);
list_->SetMaxScrollDistance(1000); // 1000: max scroll distance
- list_->SetSwipeACCLevel(800); // 800: compensation distance
+ list_->SetSwipeACCLevel(200); // 200: compensation distance
list_->SetDragACCLevel(5); // 5: drag acceleration
list_->SetYScrollBarVisible(true);
if (animator_ == nullptr) {
int16_t x1 = rect.GetRight();\r
int16_t xMid = static_cast<int16_t>(x + (x1 - x + 1) / DIVISOR_TWO);\r
int16_t distance = MATH_ABS(xMid - contMidX);\r
- newCenterIndex = i;\r
- minOffset = distance;\r
- }\r
- if (newCenterIndex != lastIndex_) {\r
- lastIndex_ = newCenterIndex;\r
- label_->SetText(slipflow_->GetViewByIndex(lastIndex_)->GetViewId());\r
+ if (distance < minOffset) {\r
+ newCenterIndex = i;\r
+ minOffset = distance;\r
+ }\r
}\r
+ lastIndex_ = newCenterIndex;\r
+ label_->SetText(slipflow_->GetViewByIndex(lastIndex_)->GetViewId());\r
\r
Rect curViewRect = slipflow_->GetViewByIndex(lastIndex_)->GetOrigRect();\r
int16_t centerMid = curViewRect.GetLeft() + curViewRect.GetWidth() / DIVISOR_TWO;\r
list_->SetThrowDrag(true);
list_->SetStyle(STYLE_BACKGROUND_OPA, OPA_TRANSPARENT);
list_->SetMaxScrollDistance(1000); // 1000: max scroll distance
- list_->SetSwipeACCLevel(800); // 800: compensation distance
+ list_->SetSwipeACCLevel(200); // 200: compensation distance
list_->SetDragACCLevel(5); // 5: drag acceleration
if (animator_ == nullptr) {
animator_ = new Animator(&callback_, list_, DEFAULT_TASK_PERIOD, true);
list_->SetThrowDrag(true);\r
list_->SetStyle(STYLE_BACKGROUND_OPA, OPA_TRANSPARENT);\r
list_->SetMaxScrollDistance(1000); // 1000: max scroll distance\r
- list_->SetSwipeACCLevel(800); // 800: compensation distance\r
+ list_->SetSwipeACCLevel(200); // 200: compensation distance\r
list_->SetDragACCLevel(5); // 5: drag acceleration\r
list_->SetYScrollBarVisible(true);\r
}\r
void Text::SetFont(const char* name, uint8_t size)
{
if (name == nullptr) {
+ if (UIFont::GetInstance()->IsVectorFont() && (fontSize_ != size)) {
+ fontSize_ = size;
+ needRefresh_ = true;
+ }
return;
}
if (UIFont::GetInstance()->IsVectorFont()) {
{
InitLabelText();
labelText_->SetAlign(horizontalAlign, verticalAlign);
+ horAlign_ = horizontalAlign;
if (labelText_->IsNeedRefresh()) {
RefreshLabel();
}
animator_.animator->Start();
} else {
offsetX_ = 0;
+ labelText_->SetAlign(horAlign_, labelText_->GetVerAlign());
if (hasAnimator_) {
animator_.animator->Stop();
}
*/
#include "common/task_manager.h"
+#if CAPABILITY_SW_DFX_FRAME_TRACE
+#include "dfx/dfx_frame_trace.h"
+#endif
#include "gfx_utils/graphic_log.h"
#include "hal_tick.h"
while (node != list_.End()) {
Task* currentTask = node->data_;
+#if CAPABILITY_SW_DFX_FRAME_TRACE
+ TASK_TRACE_START();
+#endif
currentTask->TaskExecute();
+#if CAPABILITY_SW_DFX_FRAME_TRACE
+ TASK_TRACE_END();
+#endif
node = node->next_;
}
} else { // to avoid vau error (srcRect is not euqal to dstRect) when no scale
int16_t srcLeft = mask.GetLeft() - posX;
int16_t srcTop = mask.GetTop() - posY;
- src.rect = {srcLeft, srcTop, srcLeft + mask.GetWidth() - 1, srcTop + mask.GetWidth() - 1};
+ src.rect = {srcLeft, srcTop, srcLeft + mask.GetWidth() - 1, srcTop + mask.GetHeight() - 1};
}
if (!mask.IsValid()) {
}
}
if (index == -1) {
- index = len - 1;
+ return false;
}
ImageInfo *info = ImageCacheManager::GetInstance().LoadOneInMultiRes(EMOJI_TABLE[index].resId, EMOJI_PATH);
if (info == nullptr) {
* @since 1.0
* @version 1.0
*/
- void SetDragACCLevel(uint16_t value)
+ void SetDragACCLevel(uint8_t value)
{
if (value != 0) {
dragAccCoefficient_ = value;
* @since 1.0
* @version 1.0
*/
- void SetSwipeACCLevel(uint16_t value)
+ void SetSwipeACCLevel(uint8_t value)
{
swipeAccCoefficient_ = value;
}
/**
* @brief Sets the font for this label.
*
- * @param name Indicates the pointer to the font name.
+ * @param name Indicates the pointer to the font name, name can be nullptr in order to only config font size
* @param size Indicates the font size to set.
* @since 1.0
* @version 1.0
int16_t pos;
};
} animator_;
+
+ UITextLanguageAlignment horAlign_ = TEXT_ALIGNMENT_LEFT;
};
} // namespace OHOS
#endif // GRAPHIC_LITE_UI_LABEL_H
/**
* @brief Sets the font for this text.
*
- * @param name Indicates the pointer to the font name.
+ * @param name Indicates the pointer to the font name, name can be nullptr in order to only config font size
* @param size Indicates the font size to set.
* @since 1.0
* @version 1.0
#include "audio_manager.h"
#include "bundlems_slite_client.h"
#include "abilityms_slite_client.h"
-
+#include "js_ability.h"
#define DELETE_NOT_NULL(pointer) \
- if ((pointer) != nullptr) \
- { \
- delete (pointer); \
- (pointer) = nullptr; \
+ if ((pointer) != nullptr) { \
+ delete (pointer); \
+ (pointer) = nullptr; \
}
namespace OHOS {
constexpr uint32_t MAX_PATH_LEN = 128;
char absPath[MAX_PATH_LEN] = {0};
-static Audio::AudioManager& g_amInstance = Audio::AudioManager::GetInstance();
+static Audio::AudioManager &g_amInstance = Audio::AudioManager::GetInstance();
void TriggerEventListener(const AudioEventListener *listener)
{
listener->OnTrigger();
}
-AudioEventListener::AudioEventListener(JSIValue callback) : callback_(JSI::AcquireValue(callback)) {}
+AudioEventListener::AudioEventListener(JSIValue callback) : callback_(JSI::AcquireValue(callback))
+{}
AudioEventListener::~AudioEventListener()
{
}
}
-AudioPlayerCallback::AudioPlayerCallback(AudioPlayer *audioPlayer) : PlayerCallback(), audioPlayer_(audioPlayer) {}
+AudioPlayerCallback::AudioPlayerCallback(AudioPlayer *audioPlayer) : PlayerCallback(), audioPlayer_(audioPlayer)
+{}
void AudioPlayerCallback::OnPlaybackComplete()
{
return &audioPlayer;
}
-AudioPlayer::AudioPlayer() : player_(nullptr),
- onPlayListener_(nullptr),
- onPauseListener_(nullptr),
- onStopListener_(nullptr),
- onLoadedDataListener_(nullptr),
- onEndedListener_(nullptr),
- onErrorListener_(nullptr),
- onTimeUpdateListener_(nullptr),
- src_(nullptr),
- srcInner_(nullptr),
- status_(STATUS_STOP),
- volume_(DEFAULT_VOLUME),
- autoPlay_(false),
- muted_(false),
- isRunning_(false),
- isSysSrc_(false),
- updateTimeProcess_(nullptr) {}
+AudioPlayer::AudioPlayer()
+ : player_(nullptr), onPlayListener_(nullptr), onPauseListener_(nullptr), onStopListener_(nullptr),
+ onLoadedDataListener_(nullptr), onEndedListener_(nullptr), onErrorListener_(nullptr),
+ onTimeUpdateListener_(nullptr), src_(nullptr), srcInner_(nullptr), status_(STATUS_STOP), volume_(DEFAULT_VOLUME),
+ autoPlay_(false), muted_(false), isRunning_(false), isSysSrc_(false), updateTimeProcess_(nullptr)
+{}
void AudioPlayer::ForkUpdateTimeThread()
{
lock_ = MediaMutexCreate(nullptr);
condition_ = MediaThreadCondCreate();
- MediaThreadattr attr = { "UpdateTimeHandler", 0x1000, THREAD_SCHED_INVALID, 0, false };
+ MediaThreadattr attr = {"UpdateTimeHandler", 0x1000, THREAD_SCHED_INVALID, 0, false};
updateTimeProcess_ = MediaThreadCreate(AudioPlayer::UpdateTimeHandler, this, &attr);
if (updateTimeProcess_ == nullptr) {
MEDIA_ERR_LOG("fork thread failed.");
int AudioPlayer::GetSrcInnerPrefix(char *src, char *dest)
{
- int ret;
- ElementName* topAbility = OHOS::AbilityMsClient::GetInstance().GetTopAbility();
- if (topAbility != nullptr) {
+ int ret = -1;
+ const char *bundleName = OHOS::ACELite::JSAbility::GetPackageName();
+ if (bundleName != nullptr) {
BundleInfo bundleInfo;
- ret = BundleMsClient::GetInstance().GetBundleInfo(topAbility->bundleName, 0, &bundleInfo);
+ ret = BundleMsClient::GetInstance().GetBundleInfo(bundleName, 0, &bundleInfo);
if (ret == 0) {
- (void)sprintf_s(dest, MAX_PATH_LEN - 1, "%s/assets/entry/%s", bundleInfo.codePath, src);
- return 0;
+ int size = sprintf_s(dest, MAX_PATH_LEN - 1, "%s/assets/entry/%s", bundleInfo.codePath, src);
+ ret = (size < 0) ? -1 : 0;
} else {
MEDIA_ERR_LOG("failed to get bundleInfo!");
}
} else {
- MEDIA_ERR_LOG("failed to get top ability!");
+ MEDIA_ERR_LOG("failed to get jsapp's bundleName!");
}
- return -1;
+ return ret;
}
void AudioPlayer::StopUpdateTimeThread()
ace_free(src_);
src_ = nullptr;
}
- if (srcInner_ != nullptr && isSysSrc_ == false) {
+ if (srcInner_ != nullptr) {
ace_free(srcInner_);
srcInner_ = nullptr;
}
}
onTimeUpdateListener_ = onTimeUpdateListener;
}
-} // namespace ACELite
-} // namespace OHOS
+} // namespace ACELite
+} // namespace OHOS
uint8_t data[AT_CMD_BUFSIZE];\r
} ipc_payload_atcmd_t;\r
\r
-static unsigned long g_at_cmd_msg_queue;\r
+static unsigned long g_at_cmd_msg_queue = 0xFFFFFFFF;\r
\r
static at_cmd_set_t g_at_cmd_module_list[AT_CMD_MODULE_MAX_NUM];\r
static uint8_t g_at_cmd_module_index = 0;\r
kv_attributes_t attributes = {0};
uint16_t hash_crc_size;
- if (attr->encrypted) {
+ if ((attr != NULL) && (attr->encrypted)) {
hash_crc_size = KV_CRYPTO_HASH_SIZE;
attributes = KV_ATTRIBUTE_ENCRYPTED;
} else {
cur_key->encrypted = 1;
cur_key->non_upgrade = 1;
}
-
+
/* 可升级属性支持属性更改 */
if (attr->non_upgrade) {
cur_key->non_upgrade = 1;
#define OS_FULL_NAME_LEN 128\r
\r
static char g_roBuildOs[] = {"OpenHarmony-4.1.7.5"};\r
-static char g_roBuildVerShow[] = {"OpenHarmony-4.1.7.5"};\r
+static char g_roBuildVerShow[] = {"1.0.0"};\r
static char g_roSdkApiLevel[] = {"11"};\r
static char g_roFirstApiLevel[] = {"1"};\r
static const char OHOS_OS_NAME[] = { "OpenHarmony" };\r
${ROOT_DIR}/open_source/openharmony/third_party/jerryscript/jerry-ext/include/jerryscript-ext
${ROOT_DIR}/open_source/openharmony/third_party/jerryscript/jerry-port/default/include
${ROOT_DIR}/open_source/openharmony/third_party/jerryscript/jerry-libm/include
- ${ROOT_DIR}/open_source/openharmony/foundation/ace/ace_engine_lite/modules/keyinput
)
if("JS_ENABLE" IN_LIST DEFINES)
${CMAKE_CURRENT_SOURCE_DIR}/stylemgr/app_style_sheet.cpp
${CMAKE_CURRENT_SOURCE_DIR}/targets/platform_adapter.cpp
${CMAKE_CURRENT_SOURCE_DIR}/wrapper/js.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/modules/keyinput/keyinput.cpp
)
else()
set(SOURCES
${ROOT_DIR}/open_source/openharmony/base/global/i18n_lite/interfaces/kits/i18n/include
${ROOT_DIR}/open_source/openharmony/base/global/resmgr_lite/frameworks/resmgr_lite/include
${ROOT_DIR}/open_source/openharmony/base/global/resmgr_lite/interfaces/innerkits/include
+ ${ROOT_DIR}/open_source/openharmony/foundation/ace/ace_engine_lite/modules/keyinput
)
if("JS_ENABLE" IN_LIST DEFINES)
${CMAKE_CURRENT_SOURCE_DIR}/modules/presets/version_module.cpp
${CMAKE_CURRENT_SOURCE_DIR}/modules/router_module.cpp
${CMAKE_CURRENT_SOURCE_DIR}/modules/sample_module.cpp
+ ${CMAKE_CURRENT_SOURCE_DIR}/modules/keyinput/keyinput.cpp
)
endif()
#ifdef SUPPORT_BAIDU\r
char *json_color = MallocStringOf(args[0]);\r
MapComponentApi::getInstance().set_map_background_color(json_color);\r
+ ACE_FREE(json_color);\r
#endif\r
return UNDEFINED;\r
}\r
#ifdef SUPPORT_BAIDU\r
char *json_lat_lng = MallocStringOf(args[0]);\r
MapComponentApi::getInstance().new_lat_lng(json_lat_lng);\r
+ ACE_FREE(json_lat_lng);\r
#endif\r
return UNDEFINED;\r
}\r
char *json_lat_lng = MallocStringOf(args[0]);\r
int zoom = IntegerOf(args[1]);\r
MapComponentApi::getInstance().new_lat_lng_zoom(json_lat_lng,zoom);\r
+ ACE_FREE(json_lat_lng);\r
#endif\r
return UNDEFINED;\r
}\r
#ifdef SUPPORT_BAIDU\r
char *json_marker = MallocStringOf(args[0]);\r
MapComponentApi::getInstance().draw_marker(json_marker);\r
+ ACE_FREE(json_marker);\r
#endif\r
return UNDEFINED;\r
}\r
#ifdef SUPPORT_BAIDU\r
char *json_navi_marker = MallocStringOf(args[0]);\r
MapComponentApi::getInstance().draw_navi_marker(json_navi_marker);\r
+ ACE_FREE(json_navi_marker);\r
#endif\r
return UNDEFINED;\r
}\r
#ifdef SUPPORT_BAIDU\r
char *json_polygon = MallocStringOf(args[0]);\r
MapComponentApi::getInstance().draw_polygon(json_polygon);\r
+ ACE_FREE(json_polygon);\r
#endif\r
return UNDEFINED;\r
}\r
#ifdef SUPPORT_BAIDU\r
char *json_path = MallocStringOf(args[0]);\r
MapComponentApi::getInstance().draw_path(json_path);\r
+ ACE_FREE(json_path);\r
#endif\r
return UNDEFINED;\r
}\r
#ifdef SUPPORT_BAIDU\r
char *json_circle = MallocStringOf(args[0]);\r
MapComponentApi::getInstance().draw_circle(json_circle);\r
+ ACE_FREE(json_circle);\r
#endif\r
return UNDEFINED;\r
}\r
#ifdef SUPPORT_BAIDU\r
char *json_text = MallocStringOf(args[0]);\r
MapComponentApi::getInstance().draw_text(json_text);\r
+ ACE_FREE(json_text);\r
#endif\r
return UNDEFINED;\r
}\r
} BaiduMapAsyncMsgParams;
typedef struct : public OHOS::HeapBase {
- double lon;
- double lat;
+ double lon;
+ double lat;
} BaiduMapJSCoordinate;
constexpr char LON[] = "lon";
constexpr char LAT[] = "lat";
-//BT_CONNECT
+// BT_CONNECT
constexpr char CONNECT[] = "connectcallback";
constexpr char DISCONNECT[] = "disconnectcallback";
namespace OHOS {
namespace ACELite {
-static int32_t DmsLiteCpoyStr(char **destStr, const char *srcStr);
+static int32_t DmsLiteCopyStr(char **destStr, const char *srcStr);
static void ExecuteSendMsgToJS(void *data);
static bool CheckIsJsValueFunction(OHOS::ACELite::JSIValue jsValue);
-//poi_nearby_search
+// poi_nearby_search
OHOS::ACELite::JSIValue poi_successCallback = nullptr;
OHOS::ACELite::JSIValue poi_failCallback = nullptr;
OHOS::ACELite::JSIValue poi_callbackContext = nullptr;
-//route_riding_search
+// route_riding_search
OHOS::ACELite::JSIValue route_riding_successCallback = nullptr;
OHOS::ACELite::JSIValue route_riding_failCallback = nullptr;
OHOS::ACELite::JSIValue route_riding_callbackContext = nullptr;
-//route_walking_search
+// route_walking_search
OHOS::ACELite::JSIValue route_walking_successCallback = nullptr;
OHOS::ACELite::JSIValue route_walking_failCallback = nullptr;
OHOS::ACELite::JSIValue route_walking_callbackContext = nullptr;
-//route_transit_search
+// route_transit_search
OHOS::ACELite::JSIValue route_transit_successCallback = nullptr;
OHOS::ACELite::JSIValue route_transit_failCallback = nullptr;
OHOS::ACELite::JSIValue route_transit_callbackContext = nullptr;
-//auth_license
+// auth_license
OHOS::ACELite::JSIValue auth_successCallback = nullptr;
OHOS::ACELite::JSIValue auth_failCallback = nullptr;
OHOS::ACELite::JSIValue auth_callbackContext = nullptr;
-//naviInit
+// naviInit
OHOS::ACELite::JSIValue nav_successCallback = nullptr;
OHOS::ACELite::JSIValue nav_failCallback = nullptr;
OHOS::ACELite::JSIValue nav_callbackContext = nullptr;
-//getGeolocation
+// getGeolocation
OHOS::ACELite::JSIValue geo_location_Callback = nullptr;
OHOS::ACELite::JSIValue geo_location_callbackContext = nullptr;
-//onRoutePlanStart
+// onRoutePlanStart
OHOS::ACELite::JSIValue route_plan_start_Callback = nullptr;
OHOS::ACELite::JSIValue route_plan_start_callbackContext = nullptr;
-//onRoutePlanSuccess
+// onRoutePlanSuccess
OHOS::ACELite::JSIValue route_plan_success_Callback = nullptr;
OHOS::ACELite::JSIValue route_plan_success_callbackContext = nullptr;
-//onRoutePlanFail
+// onRoutePlanFail
OHOS::ACELite::JSIValue route_plan_fail_Callback = nullptr;
OHOS::ACELite::JSIValue route_plan_fail_callbackContext = nullptr;
-//onNaviStart
+// onNaviStart
OHOS::ACELite::JSIValue navi_start_Callback = nullptr;
OHOS::ACELite::JSIValue navi_start_callbackContext = nullptr;
-//onNaviDestroy
+// onNaviDestroy
OHOS::ACELite::JSIValue navi_destroy_Callback = nullptr;
OHOS::ACELite::JSIValue navi_destroy_callbackContext = nullptr;
-//onRoadGuideTextUpdate
+// onRoadGuideTextUpdate
OHOS::ACELite::JSIValue road_guide_text_update_Callback = nullptr;
OHOS::ACELite::JSIValue road_guide_text_update_callbackContext = nullptr;
-//onRouteGuideIconUpdate
+// onRouteGuideIconUpdate
OHOS::ACELite::JSIValue road_guide_icon_update_Callback = nullptr;
OHOS::ACELite::JSIValue road_guide_icon_update_callbackContext = nullptr;
-//onRemainTimeUpdate
+// onRemainTimeUpdate
OHOS::ACELite::JSIValue remain_time_Callback = nullptr;
OHOS::ACELite::JSIValue remain_time_callbackContext = nullptr;
-//onRemainDistanceUpdate
+// onRemainDistanceUpdate
OHOS::ACELite::JSIValue remain_distance_Callback = nullptr;
OHOS::ACELite::JSIValue remain_distance_callbackContext = nullptr;
-//onRemainRouteUpdate
+// onRemainRouteUpdate
OHOS::ACELite::JSIValue remain_route_Callback = nullptr;
OHOS::ACELite::JSIValue remain_route_callbackContext = nullptr;
-//onGpsStatusChange
+// onGpsStatusChange
OHOS::ACELite::JSIValue gps_status_Callback = nullptr;
OHOS::ACELite::JSIValue gps_status_callbackContext = nullptr;
-//onRouteFarAway
+// onRouteFarAway
OHOS::ACELite::JSIValue route_far_Callback = nullptr;
OHOS::ACELite::JSIValue route_far_callbackContext = nullptr;
-//onRoutePlanYawing
+// onRoutePlanYawing
OHOS::ACELite::JSIValue route_plan_yawing_Callback = nullptr;
OHOS::ACELite::JSIValue route_plan_yawing_callbackContext = nullptr;
-//onReRouteComplete
+// onReRouteComplete
OHOS::ACELite::JSIValue reroute_Callback = nullptr;
OHOS::ACELite::JSIValue reroute_callbackContext = nullptr;
-//onArriveDest
+// onArriveDest
OHOS::ACELite::JSIValue arrivedest_Callback = nullptr;
OHOS::ACELite::JSIValue arrivedest_callbackContext = nullptr;
-//poi_sug_search
+// poi_sug_search
OHOS::ACELite::JSIValue poi_sug_successCallback = nullptr;
OHOS::ACELite::JSIValue poi_sug_failCallback = nullptr;
OHOS::ACELite::JSIValue poi_sug_callbackContext = nullptr;
-//geocode_search
+// geocode_search
OHOS::ACELite::JSIValue geocode_search_successCallback = nullptr;
OHOS::ACELite::JSIValue geocode_search_failCallback = nullptr;
OHOS::ACELite::JSIValue geocode_search_callbackContext = nullptr;
-//regeocode_search
+// regeocode_search
OHOS::ACELite::JSIValue regeocode_search_successCallback = nullptr;
OHOS::ACELite::JSIValue regeocode_search_failCallback = nullptr;
OHOS::ACELite::JSIValue regeocode_search_callbackContext = nullptr;
-//BT_connect
+// BT_connect
OHOS::ACELite::JSIValue bt_connect_successCallback = nullptr;
OHOS::ACELite::JSIValue bt_connect_failCallback = nullptr;
OHOS::ACELite::JSIValue bt_connect_callbackContext = nullptr;
return true;
}
-
-static int32_t DmsLiteCpoyStr(char **destStr, const char *srcStr)
+static int32_t DmsLiteCopyStr(char **destStr, const char *srcStr)
{
if (destStr == nullptr || srcStr == nullptr) {
return -1;
return 0;
}
-
-
static void ExecuteSendMsgToJS(void *data)
{
BaiduMapAsyncMsgParams *params = static_cast<BaiduMapAsyncMsgParams *>(data);
context = route_transit_callbackContext;
break;
case MSGCENTER_TYPE_ID_VECTOR_NAVI_REC_POI_SUG_SEARCH:
- success = poi_sug_successCallback;
+ success = poi_sug_successCallback;
fail = poi_sug_failCallback;
context = poi_sug_callbackContext;
break;
default:
HILOG_ERROR(HILOG_MODULE_ACE, "Invalid command type");
break;
-
}
char *msgBody = params->msgBody;
delete params;
params = nullptr;
-
OHOS::ACELite::JSIValue dataInfo = OHOS::ACELite::JSI::CreateObject();
OHOS::ACELite::JSI::SetBooleanProperty(dataInfo, "isFileType", false);
OHOS::ACELite::JSI::SetBooleanProperty(dataInfo, "isRegister", false);
OHOS::ACELite::JSI::SetStringProperty(dataInfo, "message", msgBody);
- if (flag) {
- if ((!CheckIsJsValueFunction(success)) || (!CheckIsJsValueDefined(context))) {
+ HILOG_INFO(HILOG_MODULE_ACE, "ExecuteSendMsgToJS type = %d flag = %d", type, flag);
+ if (!flag) {
+ if ((!CheckIsJsValueFunction(fail)) || (!CheckIsJsValueDefined(context))) {
HILOG_ERROR(HILOG_MODULE_ACE, "Error in ExecuteSendMsgToJS. Invalid params detected!");
- if (msgBody != nullptr) {
- AdapterFree(msgBody);
- msgBody = nullptr;
- }
+ AdapterFree(msgBody);
return;
}
- OHOS::ACELite::JSIValue successArgv[OHOS::ACELite::ARGC_ONE] = { dataInfo };
- OHOS::ACELite::JSI::CallFunction(success, context, successArgv, OHOS::ACELite::ARGC_ONE);
+ OHOS::ACELite::JSIValue failArgv[OHOS::ACELite::ARGC_ONE] = {dataInfo};
+ OHOS::ACELite::JSI::CallFunction(fail, context, failArgv, OHOS::ACELite::ARGC_ONE);
OHOS::ACELite::JSI::ReleaseValue(dataInfo);
} else {
- if ((!CheckIsJsValueDefined(context)) || (!CheckIsJsValueFunction(fail))) {
+ if ((!CheckIsJsValueDefined(context)) || (!CheckIsJsValueFunction(success))) {
HILOG_ERROR(HILOG_MODULE_ACE, "Error in ExecuteSendMsgToJS. Invalid params detected!");
- if (msgBody != nullptr) {
- AdapterFree(msgBody);
- msgBody = nullptr;
- }
+ AdapterFree(msgBody);
return;
}
- OHOS::ACELite::JSIValue failArgv[OHOS::ACELite::ARGC_ONE] = { dataInfo };
- OHOS::ACELite::JSI::CallFunction(fail, context, failArgv, OHOS::ACELite::ARGC_ONE);
+ OHOS::ACELite::JSIValue successArgv[OHOS::ACELite::ARGC_ONE] = {dataInfo};
+ OHOS::ACELite::JSI::CallFunction(success, context, successArgv, OHOS::ACELite::ARGC_ONE);
OHOS::ACELite::JSI::ReleaseValue(dataInfo);
}
- if (msgBody != nullptr) {
- AdapterFree(msgBody);
- msgBody = nullptr;
- }
+ AdapterFree(msgBody);
return;
}
static void ReleaseMsgJsValue(uint8_t type)
{
- HILOG_INFO(HILOG_MODULE_ACE,"ReleasePoiMsgJsValue");
+ HILOG_INFO(HILOG_MODULE_ACE, "ReleaseMsgJsValue");
switch (type) {
case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI:
ReleaseJsValue(poi_callbackContext);
ReleaseJsValue(route_plan_start_Callback);
break;
case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI_SUG_SEARCH:
- ReleaseJsValue(poi_sug_callbackContext);
+ ReleaseJsValue(poi_sug_callbackContext);
ReleaseJsValue(poi_sug_successCallback);
ReleaseJsValue(poi_sug_failCallback);
break;
return;
}
-bool setCallbackFunction(OHOS::ACELite::JSIValue callback,uint8_t type,bool isSuccess)
+bool setCallbackFunction(OHOS::ACELite::JSIValue callback, uint8_t type, bool isSuccess)
{
if (!OHOS::ACELite::JSI::ValueIsUndefined(callback)) {
- if (!OHOS::ACELite::JSI::ValueIsFunction(callback)) {
- HILOG_ERROR(HILOG_MODULE_ACE, "Success callback value is not a function");
- ReleaseJsValue(callback);
- return false;
- } else {
- switch (type) {
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI:
- if (isSuccess) {
- poi_successCallback = callback;
- } else {
- poi_failCallback = callback;
- }
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_AUTH_LICENSE:
- if (isSuccess) {
- auth_successCallback = callback;
- } else {
- auth_failCallback = callback;
- }
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_INIT:
- if (isSuccess) {
- nav_successCallback = callback;
- } else {
- nav_failCallback = callback;
- }
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI_SUG_SEARCH:
- if (isSuccess) {
- poi_sug_successCallback = callback;
- } else {
- poi_sug_failCallback = callback;
- }
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEO_LOCATION:
- geo_location_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_START:
- route_plan_start_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_SUCC:
- route_plan_success_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_FAIL:
- route_plan_fail_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_START:
- navi_start_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_DESTROY:
- navi_destroy_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROAD_GUIDE_TEXT_UPDATE:
- road_guide_text_update_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROAD_GUIDE_ICON_UPDATE:
- road_guide_icon_update_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_TIME_UPDATE:
- remain_time_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_DISTANCE_UPDATE:
- remain_distance_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_ROUTE_UPDATE:
- remain_route_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GPS_STATUS_CHANGE:
- gps_status_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_FARAWAY:
- route_far_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_YAWING:
- route_plan_yawing_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_RE_ROUTE_COMPLETE:
- reroute_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ARRIVE_DSTINATION:
- arrivedest_Callback = callback;
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEOCODE_SEARCH:
- if (isSuccess) {
- geocode_search_successCallback = callback;
- } else {
- geocode_search_failCallback = callback;
- }
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REGEOCODE_SEARCH:
- if (isSuccess) {
- regeocode_search_successCallback = callback;
- } else {
- regeocode_search_failCallback = callback;
- }
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_RIDING_SEARCH:
- if (isSuccess) {
- route_riding_successCallback = callback;
- } else {
- route_riding_failCallback = callback;
- }
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_WALKING_SEARCH:
- if (isSuccess) {
- route_walking_successCallback = callback;
- } else {
- route_walking_failCallback = callback;
- }
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_TRANSIT_SEARCH:
- if (isSuccess) {
- route_transit_successCallback = callback;
- } else {
- route_transit_failCallback = callback;
- }
- break;
- case MSGCENTER_TYPE_ID_VECTOR_NAVI_BT_CONNECTED:
- if (isSuccess) {
- bt_connect_successCallback = callback;
- } else {
- bt_connect_failCallback = callback;
- }
- break;
- default:
- HILOG_ERROR(HILOG_MODULE_ACE, "setCallbackFunction Invalid command type");
- return false;
+ if (!OHOS::ACELite::JSI::ValueIsFunction(callback)) {
+ HILOG_INFO(HILOG_MODULE_ACE, "callback is not a function will release function");
+ ReleaseJsValue(callback);
+ callback = nullptr;
+ return false;
+ } else {
+ switch (type) {
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI:
+ if (isSuccess) {
+ poi_successCallback = callback;
+ } else {
+ poi_failCallback = callback;
+ }
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_AUTH_LICENSE:
+ if (isSuccess) {
+ auth_successCallback = callback;
+ } else {
+ auth_failCallback = callback;
+ }
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_INIT:
+ if (isSuccess) {
+ nav_successCallback = callback;
+ } else {
+ nav_failCallback = callback;
+ }
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI_SUG_SEARCH:
+ if (isSuccess) {
+ poi_sug_successCallback = callback;
+ } else {
+ poi_sug_failCallback = callback;
+ }
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEO_LOCATION:
+ geo_location_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_START:
+ route_plan_start_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_SUCC:
+ route_plan_success_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_FAIL:
+ route_plan_fail_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_START:
+ navi_start_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_DESTROY:
+ navi_destroy_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROAD_GUIDE_TEXT_UPDATE:
+ road_guide_text_update_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROAD_GUIDE_ICON_UPDATE:
+ road_guide_icon_update_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_TIME_UPDATE:
+ remain_time_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_DISTANCE_UPDATE:
+ remain_distance_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_ROUTE_UPDATE:
+ remain_route_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GPS_STATUS_CHANGE:
+ gps_status_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_FARAWAY:
+ route_far_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_YAWING:
+ route_plan_yawing_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_RE_ROUTE_COMPLETE:
+ reroute_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ARRIVE_DSTINATION:
+ arrivedest_Callback = callback;
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEOCODE_SEARCH:
+ if (isSuccess) {
+ geocode_search_successCallback = callback;
+ } else {
+ geocode_search_failCallback = callback;
+ }
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REGEOCODE_SEARCH:
+ if (isSuccess) {
+ regeocode_search_successCallback = callback;
+ } else {
+ regeocode_search_failCallback = callback;
+ }
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_RIDING_SEARCH:
+ if (isSuccess) {
+ route_riding_successCallback = callback;
+ } else {
+ route_riding_failCallback = callback;
+ }
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_WALKING_SEARCH:
+ if (isSuccess) {
+ route_walking_successCallback = callback;
+ } else {
+ route_walking_failCallback = callback;
+ }
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_TRANSIT_SEARCH:
+ if (isSuccess) {
+ route_transit_successCallback = callback;
+ } else {
+ route_transit_failCallback = callback;
+ }
+ break;
+ case MSGCENTER_TYPE_ID_VECTOR_NAVI_BT_CONNECTED:
+ if (isSuccess) {
+ bt_connect_successCallback = callback;
+ } else {
+ bt_connect_failCallback = callback;
+ }
+ break;
+ default:
+ HILOG_ERROR(HILOG_MODULE_ACE, "setCallbackFunction Invalid command type");
+ return false;
}
- }
+ }
} else {
- HILOG_ERROR(HILOG_MODULE_ACE, "Success callback value is undefined");
- return false;
+ HILOG_ERROR(HILOG_MODULE_ACE, "callback value is undefined");
+ return false;
}
return true;
JSIValue BaiduMapComponentModule::poi_nearby_search(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"poi_nearby_search");
+ HILOG_INFO(HILOG_MODULE_ACE, "poi_nearby_search");
char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"poi_nearby_search : %s \n",data);
- //success Callback & failed Callback
+ HILOG_INFO(HILOG_MODULE_ACE, "poi_nearby_search : %s \n", data);
+ // success Callback & failed Callback
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI);
poi_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
OHOS::ACELite::JSIValue successCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_SUCCESS);
OHOS::ACELite::JSIValue failCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_FAIL);
- bool hasSuccessCallback = setCallbackFunction(successCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI,true);
- bool hasFailCallback = setCallbackFunction(failCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI,false);
+ bool hasSuccessCallback = setCallbackFunction(successCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI, true);
+ bool hasFailCallback = setCallbackFunction(failCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI, false);
if (hasSuccessCallback || hasFailCallback) {
- msg_center_vector_navi_req_poi(MSGCENTER_CMD_VECTOR_NAVI,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI,data,strlen(data));
+ msg_center_vector_navi_req_poi(
+ MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI, data, strlen(data));
}
ace_free(data);
return JSI::CreateBoolean(true);
JSIValue BaiduMapComponentModule::route_riding_search(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"route_riding_search");
+ HILOG_INFO(HILOG_MODULE_ACE, "route_riding_search");
char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"route_riding_search : %s \n",data);
- //success Callback & failed Callback
+ HILOG_INFO(HILOG_MODULE_ACE, "route_riding_search : %s \n", data);
+ // success Callback & failed Callback
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_RIDING_SEARCH);
route_riding_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
OHOS::ACELite::JSIValue successCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_SUCCESS);
OHOS::ACELite::JSIValue failCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_FAIL);
- bool hasSuccessCallback = setCallbackFunction(successCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_RIDING_SEARCH,true);
- bool hasFailCallback = setCallbackFunction(failCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_RIDING_SEARCH,false);
+ bool hasSuccessCallback =
+ setCallbackFunction(successCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_RIDING_SEARCH, true);
+ bool hasFailCallback =
+ setCallbackFunction(failCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_RIDING_SEARCH, false);
if (hasSuccessCallback || hasFailCallback) {
- msg_center_vector_navi_req_route_riding_search(MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_RIDING_SEARCH,data,strlen(data));
+ msg_center_vector_navi_req_route_riding_search(
+ MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_RIDING_SEARCH, data, strlen(data));
}
ace_free(data);
return JSI::CreateBoolean(true);
JSIValue BaiduMapComponentModule::route_walking_search(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"route_walking_search");
+ HILOG_INFO(HILOG_MODULE_ACE, "route_walking_search");
char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"route_walking_search : %s \n",data);
- //success Callback & failed Callback
+ HILOG_INFO(HILOG_MODULE_ACE, "route_walking_search : %s \n", data);
+ // success Callback & failed Callback
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_WALKING_SEARCH);
route_walking_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
OHOS::ACELite::JSIValue successCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_SUCCESS);
OHOS::ACELite::JSIValue failCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_FAIL);
- bool hasSuccessCallback = setCallbackFunction(successCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_WALKING_SEARCH,true);
- bool hasFailCallback = setCallbackFunction(failCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_WALKING_SEARCH,false);
+ bool hasSuccessCallback =
+ setCallbackFunction(successCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_WALKING_SEARCH, true);
+ bool hasFailCallback =
+ setCallbackFunction(failCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_WALKING_SEARCH, false);
if (hasSuccessCallback || hasFailCallback) {
- msg_center_vector_navi_req_route_walking_search(MSGCENTER_CMD_VECTOR_NAVI,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_WALKING_SEARCH,data,strlen(data));
+ msg_center_vector_navi_req_route_walking_search(
+ MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_WALKING_SEARCH, data, strlen(data));
}
ace_free(data);
return JSI::CreateBoolean(true);
JSIValue BaiduMapComponentModule::route_transit_search(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"route_transit_search");
+ HILOG_INFO(HILOG_MODULE_ACE, "route_transit_search");
char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"route_transit_search : %s \n",data);
- //success Callback & failed Callback
+ HILOG_INFO(HILOG_MODULE_ACE, "route_transit_search : %s \n", data);
+ // success Callback & failed Callback
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_TRANSIT_SEARCH);
route_transit_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
OHOS::ACELite::JSIValue successCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_SUCCESS);
OHOS::ACELite::JSIValue failCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_FAIL);
- bool hasSuccessCallback = setCallbackFunction(successCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_TRANSIT_SEARCH,true);
- bool hasFailCallback = setCallbackFunction(failCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_TRANSIT_SEARCH,false);
+ bool hasSuccessCallback =
+ setCallbackFunction(successCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_TRANSIT_SEARCH, true);
+ bool hasFailCallback =
+ setCallbackFunction(failCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_TRANSIT_SEARCH, false);
if (hasSuccessCallback || hasFailCallback) {
- msg_center_vector_navi_req_route_transit_search(MSGCENTER_CMD_VECTOR_NAVI,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_TRANSIT_SEARCH,data,strlen(data));
+ msg_center_vector_navi_req_route_transit_search(
+ MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_TRANSIT_SEARCH, data, strlen(data));
}
ace_free(data);
return JSI::CreateBoolean(true);
JSIValue BaiduMapComponentModule::auth_license(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"auth_license");
+ HILOG_INFO(HILOG_MODULE_ACE, "auth_license");
char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"auth_license : %s \n",data);
- //success Callback & failed Callback
+ HILOG_INFO(HILOG_MODULE_ACE, "auth_license : %s \n", data);
+ // success Callback & failed Callback
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_AUTH_LICENSE);
auth_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
OHOS::ACELite::JSIValue successCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_SUCCESS);
OHOS::ACELite::JSIValue failCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_FAIL);
- bool hasSuccessCallback = setCallbackFunction(successCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_AUTH_LICENSE,true);
- bool hasFailCallback = setCallbackFunction(failCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_AUTH_LICENSE,false);
+ bool hasSuccessCallback =
+ setCallbackFunction(successCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_AUTH_LICENSE, true);
+ bool hasFailCallback = setCallbackFunction(failCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_AUTH_LICENSE, false);
if (hasSuccessCallback || hasFailCallback) {
- msg_center_vector_navi_req_auth_license(MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_AUTH_LICENSE,data,strlen(data));
+ msg_center_vector_navi_req_auth_license(
+ MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_AUTH_LICENSE, data, strlen(data));
}
ace_free(data);
return JSI::CreateBoolean(true);
JSIValue BaiduMapComponentModule::getGeolocation(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"getGeolocation");
+ HILOG_INFO(HILOG_MODULE_ACE, "getGeolocation");
char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"getGeolocation : %s \n",data);
+ HILOG_INFO(HILOG_MODULE_ACE, "getGeolocation : %s \n", data);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEO_LOCATION);
geo_location_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
- bool hasCallback = setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEO_LOCATION,true);
+ bool hasCallback = setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEO_LOCATION, true);
if (hasCallback) {
- msg_center_vector_navi_req_geo_location(MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEO_LOCATION,data,strlen(data));
+ msg_center_vector_navi_req_geo_location(
+ MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEO_LOCATION, data, strlen(data));
}
ace_free(data);
return JSI::CreateBoolean(true);
JSIValue BaiduMapComponentModule::naviInit(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"naviInit");
+ HILOG_INFO(HILOG_MODULE_ACE, "naviInit");
char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"naviInit : %s \n",data);
- //success Callback & failed Callback
+ HILOG_INFO(HILOG_MODULE_ACE, "naviInit : %s \n", data);
+ // success Callback & failed Callback
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_INIT);
nav_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
OHOS::ACELite::JSIValue successCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_SUCCESS);
OHOS::ACELite::JSIValue failCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_FAIL);
- bool hasSuccessCallback = setCallbackFunction(successCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_INIT,true);
- bool hasFailCallback = setCallbackFunction(failCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_INIT,false);
+ bool hasSuccessCallback = setCallbackFunction(successCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_INIT, true);
+ bool hasFailCallback = setCallbackFunction(failCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_INIT, false);
if (hasSuccessCallback || hasFailCallback) {
- msg_center_vector_navi_req_navi_init(MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_INIT,data,strlen(data));
+ msg_center_vector_navi_req_navi_init(
+ MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_INIT, data, strlen(data));
}
ace_free(data);
return JSI::CreateBoolean(true);
JSIValue BaiduMapComponentModule::onRoutePlanStart(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onRoutePlanStart");
+ HILOG_INFO(HILOG_MODULE_ACE, "onRoutePlanStart");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_START);
route_plan_start_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_START,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_START, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onRoutePlanSuccess(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onRoutePlanSuccess");
+ HILOG_INFO(HILOG_MODULE_ACE, "onRoutePlanSuccess");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_SUCC);
route_plan_success_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_SUCC,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_SUCC, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onRoutePlanFail(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onRoutePlanFail");
+ HILOG_INFO(HILOG_MODULE_ACE, "onRoutePlanFail");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_FAIL);
route_plan_fail_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_FAIL,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_FAIL, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onNaviStart(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onNaviStart");
+ HILOG_INFO(HILOG_MODULE_ACE, "onNaviStart");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_START);
navi_start_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_START,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_START, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onNaviDestroy(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onNaviDestroy");
+ HILOG_INFO(HILOG_MODULE_ACE, "onNaviDestroy");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_DESTROY);
navi_destroy_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_DESTROY,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_NAVI_DESTROY, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onRoadGuideTextUpdate(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onRoadGuideTextUpdate");
+ HILOG_INFO(HILOG_MODULE_ACE, "onRoadGuideTextUpdate");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROAD_GUIDE_TEXT_UPDATE);
road_guide_text_update_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROAD_GUIDE_TEXT_UPDATE,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROAD_GUIDE_TEXT_UPDATE, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onRouteGuideIconUpdate(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onRouteGuideIconUpdate");
+ HILOG_INFO(HILOG_MODULE_ACE, "onRouteGuideIconUpdate");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROAD_GUIDE_ICON_UPDATE);
road_guide_icon_update_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROAD_GUIDE_ICON_UPDATE,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROAD_GUIDE_ICON_UPDATE, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onRemainTimeUpdate(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onRemainTimeUpdate");
+ HILOG_INFO(HILOG_MODULE_ACE, "onRemainTimeUpdate");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_TIME_UPDATE);
remain_time_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_TIME_UPDATE,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_TIME_UPDATE, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onRemainDistanceUpdate(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onRemainDistanceUpdate");
+ HILOG_INFO(HILOG_MODULE_ACE, "onRemainDistanceUpdate");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_DISTANCE_UPDATE);
remain_distance_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_DISTANCE_UPDATE,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_DISTANCE_UPDATE, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onRemainRouteUpdate(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onRemainRouteUpdate");
+ HILOG_INFO(HILOG_MODULE_ACE, "onRemainRouteUpdate");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_ROUTE_UPDATE);
remain_route_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_ROUTE_UPDATE,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REMAIN_ROUTE_UPDATE, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onGpsStatusChange(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onGpsStatusChange");
+ HILOG_INFO(HILOG_MODULE_ACE, "onGpsStatusChange");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GPS_STATUS_CHANGE);
gps_status_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GPS_STATUS_CHANGE,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GPS_STATUS_CHANGE, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onRouteFarAway(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onRouteFarAway");
+ HILOG_INFO(HILOG_MODULE_ACE, "onRouteFarAway");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_FARAWAY);
route_far_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_FARAWAY,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_FARAWAY, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onRoutePlanYawing(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onRoutePlanYawing");
+ HILOG_INFO(HILOG_MODULE_ACE, "onRoutePlanYawing");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_YAWING);
route_plan_yawing_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_YAWING,true);
- //msg_center_vector_navi_req_route_plan_yawing(MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_YAWING,Callback,1);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_YAWING, true);
+ // msg_center_vector_navi_req_route_plan_yawing(MSGCENTER_CMD_VECTOR_NAVI,
+ // MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ROUTE_PLAN_YAWING,Callback,1);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onReRouteComplete(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onReRouteComplete");
+ HILOG_INFO(HILOG_MODULE_ACE, "onReRouteComplete");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_RE_ROUTE_COMPLETE);
reroute_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_RE_ROUTE_COMPLETE,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_RE_ROUTE_COMPLETE, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::onArriveDest(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onArriveDest");
+ HILOG_INFO(HILOG_MODULE_ACE, "onArriveDest");
OHOS::ACELite::JSIValue Callback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ARRIVE_DSTINATION);
arrivedest_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
- setCallbackFunction(Callback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ARRIVE_DSTINATION,true);
+ setCallbackFunction(Callback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_ARRIVE_DSTINATION, true);
return JSI::CreateBoolean(true);
}
JSIValue BaiduMapComponentModule::poi_sug_search(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"poi_sug_search");
+ HILOG_INFO(HILOG_MODULE_ACE, "poi_sug_search");
char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"poi_sug_search : %s \n",data);
+ HILOG_INFO(HILOG_MODULE_ACE, "poi_sug_search : %s \n", data);
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI_SUG_SEARCH);
poi_sug_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
OHOS::ACELite::JSIValue successCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_SUCCESS);
OHOS::ACELite::JSIValue failCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_FAIL);
- bool hasSuccessCallback = setCallbackFunction(successCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI_SUG_SEARCH,true);
- bool hasFailCallback = setCallbackFunction(failCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI_SUG_SEARCH,false);
+ bool hasSuccessCallback =
+ setCallbackFunction(successCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI_SUG_SEARCH, true);
+ bool hasFailCallback = setCallbackFunction(failCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI_SUG_SEARCH, false);
if (hasSuccessCallback || hasFailCallback) {
- msg_center_vertor_navi_req_poi_sug_search(MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI_SUG_SEARCH,data,strlen(data));
+ msg_center_vertor_navi_req_poi_sug_search(
+ MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_POI_SUG_SEARCH, data, strlen(data));
}
ace_free(data);
return JSI::CreateBoolean(true);
*/
JSIValue BaiduMapComponentModule::Location_WGS84ToGCJ02(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"WGS84ToGCJ02");
+ HILOG_INFO(HILOG_MODULE_ACE, "WGS84ToGCJ02");
double lon = OHOS::ACELite::JSI::GetNumberProperty(args[0], LON);
double lat = OHOS::ACELite::JSI::GetNumberProperty(args[0], LAT);
- HILOG_INFO(HILOG_MODULE_ACE,"WGS84ToGCJ02 befor lon: %lf \s",lon);
- HILOG_INFO(HILOG_MODULE_ACE,"WGS84ToGCJ02 befor lat: %lf \s",lat);
+ HILOG_INFO(HILOG_MODULE_ACE, "WGS84ToGCJ02 befor lon: %lf \s", lon);
+ HILOG_INFO(HILOG_MODULE_ACE, "WGS84ToGCJ02 befor lat: %lf \s", lat);
JSCoordinate params = {0};
WGS84ToGCJ02(lon, lat, params);
- HILOG_INFO(HILOG_MODULE_ACE,"WGS84ToGCJ02 after lon: %lf \s",params.lon);
- HILOG_INFO(HILOG_MODULE_ACE,"WGS84ToGCJ02 after lat: %lf \s",params.lat);
+ HILOG_INFO(HILOG_MODULE_ACE, "WGS84ToGCJ02 after lon: %lf \s", params.lon);
+ HILOG_INFO(HILOG_MODULE_ACE, "WGS84ToGCJ02 after lat: %lf \s", params.lat);
JSIValue result = JSI::CreateObject();
JSI::SetNumberProperty(result, "lon", params.lon);
JSI::SetNumberProperty(result, "lat", params.lat);
JSIValue BaiduMapComponentModule::Location_GCJ02ToBD09(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"GCJ02ToBD09");
+ HILOG_INFO(HILOG_MODULE_ACE, "GCJ02ToBD09");
double lon = OHOS::ACELite::JSI::GetNumberProperty(args[0], LON);
double lat = OHOS::ACELite::JSI::GetNumberProperty(args[0], LAT);
- HILOG_INFO(HILOG_MODULE_ACE,"GCJ02ToBD09 befor lon: %lf \s",lon);
- HILOG_INFO(HILOG_MODULE_ACE,"GCJ02ToBD09 befor lat: %lf \s",lat);
+ HILOG_INFO(HILOG_MODULE_ACE, "GCJ02ToBD09 befor lon: %lf \s", lon);
+ HILOG_INFO(HILOG_MODULE_ACE, "GCJ02ToBD09 befor lat: %lf \s", lat);
JSCoordinate params = {0};
GCJ02ToBD09(lon, lat, params);
- HILOG_INFO(HILOG_MODULE_ACE,"GCJ02ToBD09 after lon: %lf \s",params.lon);
- HILOG_INFO(HILOG_MODULE_ACE,"GCJ02ToBD09 after lat: %lf \s",params.lat);
+ HILOG_INFO(HILOG_MODULE_ACE, "GCJ02ToBD09 after lon: %lf \s", params.lon);
+ HILOG_INFO(HILOG_MODULE_ACE, "GCJ02ToBD09 after lat: %lf \s", params.lat);
JSIValue result = JSI::CreateObject();
JSI::SetNumberProperty(result, "lon", params.lon);
JSI::SetNumberProperty(result, "lat", params.lat);
JSIValue BaiduMapComponentModule::Location_WGS84ToBD09(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"WGS84ToBD09");
+ HILOG_INFO(HILOG_MODULE_ACE, "WGS84ToBD09");
double lon = OHOS::ACELite::JSI::GetNumberProperty(args[0], LON);
double lat = OHOS::ACELite::JSI::GetNumberProperty(args[0], LAT);
- HILOG_INFO(HILOG_MODULE_ACE,"WGS84ToBD09 befor lon: %lf \s",lon);
- HILOG_INFO(HILOG_MODULE_ACE,"WGS84ToBD09 befor lat: %lf \s",lat);
+ HILOG_INFO(HILOG_MODULE_ACE, "WGS84ToBD09 befor lon: %lf \s", lon);
+ HILOG_INFO(HILOG_MODULE_ACE, "WGS84ToBD09 befor lat: %lf \s", lat);
JSCoordinate params = {0};
WGS84ToBD09(lon, lat, params);
- HILOG_INFO(HILOG_MODULE_ACE,"WGS84ToBD09 after lon: %lf \s",params.lon);
- HILOG_INFO(HILOG_MODULE_ACE,"WGS84ToBD09 after lat: %lf \s",params.lat);
+ HILOG_INFO(HILOG_MODULE_ACE, "WGS84ToBD09 after lon: %lf \s", params.lon);
+ HILOG_INFO(HILOG_MODULE_ACE, "WGS84ToBD09 after lat: %lf \s", params.lat);
JSIValue result = JSI::CreateObject();
JSI::SetNumberProperty(result, "lon", params.lon);
JSI::SetNumberProperty(result, "lat", params.lat);
JSIValue BaiduMapComponentModule::Location_BD09ToGCJ02(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"BD09ToGCJ02");
+ HILOG_INFO(HILOG_MODULE_ACE, "BD09ToGCJ02");
double lon = OHOS::ACELite::JSI::GetNumberProperty(args[0], LON);
double lat = OHOS::ACELite::JSI::GetNumberProperty(args[0], LAT);
- HILOG_INFO(HILOG_MODULE_ACE,"BD09ToGCJ02 befor lon: %lf \s",lon);
- HILOG_INFO(HILOG_MODULE_ACE,"BD09ToGCJ02 befor lat: %lf \s",lat);
+ HILOG_INFO(HILOG_MODULE_ACE, "BD09ToGCJ02 befor lon: %lf \s", lon);
+ HILOG_INFO(HILOG_MODULE_ACE, "BD09ToGCJ02 befor lat: %lf \s", lat);
JSCoordinate params = {0};
BD09ToGCJ02(lon, lat, params);
- HILOG_INFO(HILOG_MODULE_ACE,"BD09ToGCJ02 after lon: %lf \s",params.lon);
- HILOG_INFO(HILOG_MODULE_ACE,"BD09ToGCJ02 after lat: %lf \s",params.lat);
+ HILOG_INFO(HILOG_MODULE_ACE, "BD09ToGCJ02 after lon: %lf \s", params.lon);
+ HILOG_INFO(HILOG_MODULE_ACE, "BD09ToGCJ02 after lat: %lf \s", params.lat);
JSIValue result = JSI::CreateObject();
JSI::SetNumberProperty(result, "lon", params.lon);
JSI::SetNumberProperty(result, "lat", params.lat);
*/
JSIValue BaiduMapComponentModule::Geocode_search(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"Geocode_search");
+ HILOG_INFO(HILOG_MODULE_ACE, "Geocode_search");
char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"Geocode_search : %s \n",data);
- //success Callback & failed Callback
+ HILOG_INFO(HILOG_MODULE_ACE, "Geocode_search : %s \n", data);
+ // success Callback & failed Callback
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEOCODE_SEARCH);
geocode_search_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
OHOS::ACELite::JSIValue successCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_SUCCESS);
OHOS::ACELite::JSIValue failCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_FAIL);
- bool hasSuccessCallback = setCallbackFunction(successCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEOCODE_SEARCH,true);
- bool hasFailCallback = setCallbackFunction(failCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEOCODE_SEARCH,false);
+ bool hasSuccessCallback =
+ setCallbackFunction(successCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEOCODE_SEARCH, true);
+ bool hasFailCallback = setCallbackFunction(failCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEOCODE_SEARCH, false);
if (hasSuccessCallback || hasFailCallback) {
- msg_center_vector_navi_req_geocode_search(MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEOCODE_SEARCH,data,strlen(data));
+ msg_center_vector_navi_req_geocode_search(
+ MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_GEOCODE_SEARCH, data, strlen(data));
}
- ace_free(data);
+ ace_free(data);
return JSI::CreateBoolean(true);
-
}
JSIValue BaiduMapComponentModule::Regeocode_search(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"Regeocode_search");
+ HILOG_INFO(HILOG_MODULE_ACE, "Regeocode_search");
char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"Regeocode_search : %s \n",data);
- //success Callback & failed Callback
+ HILOG_INFO(HILOG_MODULE_ACE, "Regeocode_search : %s \n", data);
+ // success Callback & failed Callback
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REGEOCODE_SEARCH);
regeocode_search_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
OHOS::ACELite::JSIValue successCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_SUCCESS);
OHOS::ACELite::JSIValue failCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_FAIL);
- bool hasSuccessCallback = setCallbackFunction(successCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REGEOCODE_SEARCH,true);
- bool hasFailCallback = setCallbackFunction(failCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REGEOCODE_SEARCH,false);
+ bool hasSuccessCallback =
+ setCallbackFunction(successCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REGEOCODE_SEARCH, true);
+ bool hasFailCallback = setCallbackFunction(failCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REGEOCODE_SEARCH, false);
if (hasSuccessCallback || hasFailCallback) {
- msg_center_vector_navi_req_regeocode_search(MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REGEOCODE_SEARCH,data,strlen(data));
+ msg_center_vector_navi_req_regeocode_search(
+ MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_REGEOCODE_SEARCH, data, strlen(data));
}
- ace_free(data);
+ ace_free(data);
return JSI::CreateBoolean(true);
}
*/
JSIValue BaiduMapComponentModule::Destroy_page(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"Destroy_page");
+ HILOG_INFO(HILOG_MODULE_ACE, "Destroy_page");
char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"Destroy_page : %s \n",data);
- msg_center_vector_navi_req_destroy_page(MSGCENTER_CMD_VECTOR_NAVI,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_DESTROY_PAGE,data,strlen(data));
- ace_free(data);
+ HILOG_INFO(HILOG_MODULE_ACE, "Destroy_page : %s \n", data);
+ msg_center_vector_navi_req_destroy_page(
+ MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_DESTROY_PAGE, data, strlen(data));
+ ace_free(data);
return JSI::CreateBoolean(true);
}
*/
JSIValue BaiduMapComponentModule::onBTConnect(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"onBTConnect");
+ HILOG_INFO(HILOG_MODULE_ACE, "onBTConnect");
char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"onBTConnect : %s \n",data);
- //success Callback & failed Callback
+ HILOG_INFO(HILOG_MODULE_ACE, "onBTConnect : %s \n", data);
+ // success Callback & failed Callback
ReleaseMsgJsValue(MSGCENTER_TYPE_ID_VECTOR_NAVI_BT_CONNECTED);
bt_connect_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
OHOS::ACELite::JSIValue connectCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CONNECT);
OHOS::ACELite::JSIValue disconnectCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], DISCONNECT);
- setCallbackFunction(connectCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_BT_CONNECTED,true);
- setCallbackFunction(disconnectCallback,MSGCENTER_TYPE_ID_VECTOR_NAVI_BT_CONNECTED,false);
- ace_free(data);
+ setCallbackFunction(connectCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_BT_CONNECTED, true);
+ setCallbackFunction(disconnectCallback, MSGCENTER_TYPE_ID_VECTOR_NAVI_BT_CONNECTED, false);
+ ace_free(data);
return JSI::CreateBoolean(true);
}
*/
JSIValue BaiduMapComponentModule::NaviDestroy(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"exitNavigation");
- char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"exitNavigation : %s \n",data);
- msg_center_vector_navi_req_destroy_from_watch(MSGCENTER_CMD_VECTOR_NAVI,MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_DESTROY_FROM_WATCH,data,strlen(data));
- ace_free(data);
- return JSI::CreateBoolean(true);
+ HILOG_INFO(HILOG_MODULE_ACE, "exitNavigation");
+ char *data = JSI::JsonStringify(args[0]);
+ HILOG_INFO(HILOG_MODULE_ACE, "exitNavigation : %s \n", data);
+ msg_center_vector_navi_req_destroy_from_watch(
+ MSGCENTER_CMD_VECTOR_NAVI, MSGCENTER_TYPE_ID_VECTOR_NAVI_REQ_DESTROY_FROM_WATCH, data, strlen(data));
+ ace_free(data);
+ return JSI::CreateBoolean(true);
}
/**
*/
JSIValue BaiduMapComponentModule::StopAnswer(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
{
- HILOG_INFO(HILOG_MODULE_ACE,"StopAnswer");
- char *data = JSI::JsonStringify(args[0]);
- HILOG_INFO(HILOG_MODULE_ACE,"StopAnswer : %s \n",data);
- msg_center_xiaodu_send_stop_answer(MSGCENTER_CMD_XIAODU,MSGCENTER_TYPE_ID_XIAODU_SEND_JS_EXIT,data,strlen(data));
- ace_free(data);
- return JSI::CreateBoolean(true);
+ HILOG_INFO(HILOG_MODULE_ACE, "StopAnswer");
+ char *data = JSI::JsonStringify(args[0]);
+ HILOG_INFO(HILOG_MODULE_ACE, "StopAnswer : %s \n", data);
+ msg_center_xiaodu_send_stop_answer(MSGCENTER_CMD_XIAODU, MSGCENTER_TYPE_ID_XIAODU_SEND_JS_EXIT, data, strlen(data));
+ ace_free(data);
+ return JSI::CreateBoolean(true);
+}
+
+JSIValue BaiduMapComponentModule::MapInit(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize)
+{
+ HILOG_INFO(HILOG_MODULE_ACE, "MapInit");
+ // poi_nearby_search
+ poi_successCallback = nullptr;
+ poi_failCallback = nullptr;
+ poi_callbackContext = nullptr;
+ // route_riding_search
+ route_riding_successCallback = nullptr;
+ route_riding_failCallback = nullptr;
+ route_riding_callbackContext = nullptr;
+ // route_walking_search
+ route_walking_successCallback = nullptr;
+ route_walking_failCallback = nullptr;
+ route_walking_callbackContext = nullptr;
+ // route_transit_search
+ route_transit_successCallback = nullptr;
+ route_transit_failCallback = nullptr;
+ route_transit_callbackContext = nullptr;
+ // auth_license
+ auth_successCallback = nullptr;
+ auth_failCallback = nullptr;
+ auth_callbackContext = nullptr;
+ // naviInit
+ nav_successCallback = nullptr;
+ nav_failCallback = nullptr;
+ nav_callbackContext = nullptr;
+ // getGeolocation
+ geo_location_Callback = nullptr;
+ geo_location_callbackContext = nullptr;
+ // onRoutePlanStart
+ route_plan_start_Callback = nullptr;
+ route_plan_start_callbackContext = nullptr;
+ // onRoutePlanSuccess
+ route_plan_success_Callback = nullptr;
+ route_plan_success_callbackContext = nullptr;
+ // onRoutePlanFail
+ route_plan_fail_Callback = nullptr;
+ route_plan_fail_callbackContext = nullptr;
+ // onNaviStart
+ navi_start_Callback = nullptr;
+ navi_start_callbackContext = nullptr;
+ // onNaviDestroy
+ navi_destroy_Callback = nullptr;
+ navi_destroy_callbackContext = nullptr;
+ // onRoadGuideTextUpdate
+ road_guide_text_update_Callback = nullptr;
+ road_guide_text_update_callbackContext = nullptr;
+ // onRouteGuideIconUpdate
+ road_guide_icon_update_Callback = nullptr;
+ road_guide_icon_update_callbackContext = nullptr;
+ // onRemainTimeUpdate
+ remain_time_Callback = nullptr;
+ remain_time_callbackContext = nullptr;
+ // onRemainDistanceUpdate
+ remain_distance_Callback = nullptr;
+ remain_distance_callbackContext = nullptr;
+ // onRemainRouteUpdate
+ remain_route_Callback = nullptr;
+ remain_route_callbackContext = nullptr;
+ // onGpsStatusChange
+ gps_status_Callback = nullptr;
+ gps_status_callbackContext = nullptr;
+ // onRouteFarAway
+ route_far_Callback = nullptr;
+ route_far_callbackContext = nullptr;
+ // onRoutePlanYawing
+ route_plan_yawing_Callback = nullptr;
+ route_plan_yawing_callbackContext = nullptr;
+ // onReRouteComplete
+ reroute_Callback = nullptr;
+ reroute_callbackContext = nullptr;
+ // onArriveDest
+ arrivedest_Callback = nullptr;
+ arrivedest_callbackContext = nullptr;
+ // poi_sug_search
+ poi_sug_successCallback = nullptr;
+ poi_sug_failCallback = nullptr;
+ poi_sug_callbackContext = nullptr;
+ // geocode_search
+ geocode_search_successCallback = nullptr;
+ geocode_search_failCallback = nullptr;
+ geocode_search_callbackContext = nullptr;
+ // regeocode_search
+ regeocode_search_successCallback = nullptr;
+ regeocode_search_failCallback = nullptr;
+ regeocode_search_callbackContext = nullptr;
+ // BT_connect
+ bt_connect_successCallback = nullptr;
+ bt_connect_failCallback = nullptr;
+ bt_connect_callbackContext = nullptr;
+ return JSI::CreateBoolean(true);
}
void BaiduMapComponentModule::OnDestroy()
{
HILOG_INFO(HILOG_MODULE_ACE, "BaiduMapComponent OnDestroy\n");
- //poi_nearby_search
+ // poi_nearby_search
ReleaseJsValue(poi_successCallback);
ReleaseJsValue(poi_failCallback);
ReleaseJsValue(poi_callbackContext);
- //route_riding_search
+ poi_successCallback = nullptr;
+ poi_failCallback = nullptr;
+ poi_callbackContext = nullptr;
+ // route_riding_search
ReleaseJsValue(route_riding_successCallback);
ReleaseJsValue(route_riding_failCallback);
ReleaseJsValue(route_riding_callbackContext);
- //route_walking_search
+ route_riding_successCallback = nullptr;
+ route_riding_failCallback = nullptr;
+ route_riding_callbackContext = nullptr;
+ // route_walking_search
ReleaseJsValue(route_walking_successCallback);
ReleaseJsValue(route_walking_failCallback);
ReleaseJsValue(route_walking_callbackContext);
- //route_transit_search
+ route_walking_successCallback = nullptr;
+ route_walking_failCallback = nullptr;
+ route_walking_callbackContext = nullptr;
+ // route_transit_search
ReleaseJsValue(route_transit_successCallback);
ReleaseJsValue(route_transit_failCallback);
ReleaseJsValue(route_transit_callbackContext);
- //auth_license
+ route_transit_successCallback = nullptr;
+ route_transit_failCallback = nullptr;
+ route_transit_callbackContext = nullptr;
+ // auth_license
ReleaseJsValue(auth_successCallback);
ReleaseJsValue(auth_failCallback);
ReleaseJsValue(auth_callbackContext);
- //onRoutePlanStart
+ auth_successCallback = nullptr;
+ auth_failCallback = nullptr;
+ auth_callbackContext = nullptr;
+ // onRoutePlanStart
ReleaseJsValue(route_plan_start_Callback);
ReleaseJsValue(route_plan_start_callbackContext);
- //onRoutePlanSuccess
+ route_plan_start_Callback = nullptr;
+ route_plan_start_callbackContext = nullptr;
+ // onRoutePlanSuccess
ReleaseJsValue(route_plan_success_Callback);
ReleaseJsValue(route_plan_success_callbackContext);
- //onRoutePlanFail
+ route_plan_success_Callback = nullptr;
+ route_plan_success_callbackContext = nullptr;
+ // onRoutePlanFail
ReleaseJsValue(route_plan_fail_Callback);
ReleaseJsValue(route_plan_fail_callbackContext);
- //onNaviStart
+ route_plan_fail_Callback = nullptr;
+ route_plan_fail_callbackContext = nullptr;
+ // onNaviStart
ReleaseJsValue(navi_start_Callback);
ReleaseJsValue(navi_start_callbackContext);
- //onNaviDestroy
+ navi_start_Callback = nullptr;
+ navi_start_callbackContext = nullptr;
+ // onNaviDestroy
ReleaseJsValue(navi_destroy_Callback);
ReleaseJsValue(navi_destroy_callbackContext);
- //onRoadGuideTextUpdate
+ navi_destroy_Callback = nullptr;
+ navi_destroy_callbackContext = nullptr;
+ // onRoadGuideTextUpdate
ReleaseJsValue(road_guide_text_update_Callback);
ReleaseJsValue(road_guide_text_update_callbackContext);
- //onRouteGuideIconUpdate
+ road_guide_text_update_Callback = nullptr;
+ road_guide_text_update_callbackContext = nullptr;
+ // onRouteGuideIconUpdate
ReleaseJsValue(road_guide_icon_update_Callback);
ReleaseJsValue(road_guide_icon_update_callbackContext);
- //onRemainTimeUpdate
+ road_guide_icon_update_Callback = nullptr;
+ road_guide_icon_update_callbackContext = nullptr;
+ // onRemainTimeUpdate
ReleaseJsValue(remain_time_Callback);
ReleaseJsValue(remain_time_callbackContext);
- //onRemainDistanceUpdate
+ remain_time_Callback = nullptr;
+ remain_time_callbackContext = nullptr;
+ // onRemainDistanceUpdate
ReleaseJsValue(remain_distance_Callback);
ReleaseJsValue(remain_distance_callbackContext);
- //onRemainRouteUpdate
+ remain_distance_Callback = nullptr;
+ remain_distance_callbackContext = nullptr;
+ // onRemainRouteUpdate
ReleaseJsValue(remain_route_Callback);
ReleaseJsValue(remain_route_callbackContext);
- //onGpsStatusChange
+ remain_route_Callback = nullptr;
+ remain_route_callbackContext = nullptr;
+ // onGpsStatusChange
ReleaseJsValue(gps_status_Callback);
ReleaseJsValue(gps_status_callbackContext);
- //onRouteFarAway
+ gps_status_Callback = nullptr;
+ gps_status_callbackContext = nullptr;
+ // onRouteFarAway
ReleaseJsValue(route_far_Callback);
ReleaseJsValue(route_far_callbackContext);
- //onRoutePlanYawing
+ route_far_Callback = nullptr;
+ route_far_callbackContext = nullptr;
+ // onRoutePlanYawing
ReleaseJsValue(route_plan_yawing_Callback);
ReleaseJsValue(route_plan_yawing_callbackContext);
- //onReRouteComplete
+ route_plan_yawing_Callback = nullptr;
+ route_plan_yawing_callbackContext = nullptr;
+ // onReRouteComplete
ReleaseJsValue(reroute_Callback);
ReleaseJsValue(reroute_callbackContext);
- //onArriveDest
+ reroute_Callback = nullptr;
+ reroute_callbackContext = nullptr;
+ // onArriveDest
ReleaseJsValue(arrivedest_Callback);
ReleaseJsValue(arrivedest_callbackContext);
- //poi_sug_search
+ arrivedest_Callback = nullptr;
+ arrivedest_callbackContext = nullptr;
+ // poi_sug_search
ReleaseJsValue(poi_sug_successCallback);
ReleaseJsValue(poi_sug_failCallback);
ReleaseJsValue(poi_sug_callbackContext);
- //geocode_search
+ poi_sug_successCallback = nullptr;
+ poi_sug_failCallback = nullptr;
+ poi_sug_callbackContext = nullptr;
+ // geocode_search
ReleaseJsValue(geocode_search_successCallback);
ReleaseJsValue(geocode_search_failCallback);
ReleaseJsValue(geocode_search_callbackContext);
- //regeocode_search
+ geocode_search_successCallback = nullptr;
+ geocode_search_failCallback = nullptr;
+ geocode_search_callbackContext = nullptr;
+ // regeocode_search
ReleaseJsValue(regeocode_search_successCallback);
ReleaseJsValue(regeocode_search_failCallback);
ReleaseJsValue(regeocode_search_callbackContext);
- //BT_connect
- ReleaseJsValue(bt_connect_successCallback);
- ReleaseJsValue(bt_connect_failCallback);
- ReleaseJsValue(bt_connect_callbackContext);
+ regeocode_search_successCallback = nullptr;
+ regeocode_search_failCallback = nullptr;
+ regeocode_search_callbackContext = nullptr;
}
void InitBaiduMapComponentModule(JSIValue exports)
{
- HILOG_INFO(HILOG_MODULE_ACE,"InitBaiduMapComponentModule");
+ HILOG_INFO(HILOG_MODULE_ACE, "InitBaiduMapComponentModule");
/**
* MsgCenter interface
*/
*/
JSI::SetModuleAPI(exports, "stopAnswer", BaiduMapComponentModule::StopAnswer);
/**
+ * mapInit
+ */
+ JSI::SetModuleAPI(exports, "mapInit", BaiduMapComponentModule::MapInit);
+ /**
* destroy
*/
JSI::SetOnDestroy(exports, BaiduMapComponentModule::OnDestroy);
}
-} // namespace ACELite
-} // namespace OHOS
+} // namespace ACELite
+} // namespace OHOS
-int32_t BaidumapSendMsgToJS(const char *msgBody,uint8_t type)
+int32_t BaidumapSendMsgToJS(const char *msgBody, uint8_t type)
{
BaiduMapAsyncMsgParams *params = new BaiduMapAsyncMsgParams();
if (params == nullptr) {
- HILOG_ERROR(HILOG_MODULE_ACE,"Failed to allocate memory for params");
+ HILOG_ERROR(HILOG_MODULE_ACE, "Failed to allocate memory for params");
return -1;
}
params->type = type;
params->flag = true;
- int32_t copyRet = OHOS::ACELite::DmsLiteCpoyStr(¶ms->msgBody, msgBody);
+ int32_t copyRet = OHOS::ACELite::DmsLiteCopyStr(¶ms->msgBody, msgBody);
if (copyRet != 0) {
- HILOG_ERROR(HILOG_MODULE_ACE,"Failed to copy msgBody");
+ HILOG_ERROR(HILOG_MODULE_ACE, "Failed to copy msgBody");
delete params;
params = nullptr;
return copyRet;
}
- bool ret = OHOS::ACELite::JsAsyncWork::DispatchAsyncWork(OHOS::ACELite::ExecuteSendMsgToJS,static_cast<void *>(params));
+ bool ret =
+ OHOS::ACELite::JsAsyncWork::DispatchAsyncWork(OHOS::ACELite::ExecuteSendMsgToJS, static_cast<void *>(params));
if (!ret) {
HILOG_ERROR(HILOG_MODULE_ACE, "Failed to dispatch async work");
+ AdapterFree(params->msgBody);
delete params;
params = nullptr;
return -1;
return 0;
}
-int32_t BaidumapFailSendMsgToJS(const char *msgBody,uint8_t type)
+int32_t BaidumapFailSendMsgToJS(const char *msgBody, uint8_t type)
{
BaiduMapAsyncMsgParams *params = new BaiduMapAsyncMsgParams();
if (params == nullptr) {
- HILOG_ERROR(HILOG_MODULE_ACE,"Failed to allocate memory for params");
+ HILOG_ERROR(HILOG_MODULE_ACE, "Failed to allocate memory for params");
return -1;
}
params->type = type;
params->flag = false;
- int32_t copyRet = OHOS::ACELite::DmsLiteCpoyStr(¶ms->msgBody, msgBody);
+ int32_t copyRet = OHOS::ACELite::DmsLiteCopyStr(¶ms->msgBody, msgBody);
if (copyRet != 0) {
- HILOG_ERROR(HILOG_MODULE_ACE,"Failed to copy msgBody");
+ HILOG_ERROR(HILOG_MODULE_ACE, "Failed to copy msgBody");
delete params;
params = nullptr;
return copyRet;
}
- bool ret = OHOS::ACELite::JsAsyncWork::DispatchAsyncWork(OHOS::ACELite::ExecuteSendMsgToJS, static_cast<void *>(params));
+ bool ret =
+ OHOS::ACELite::JsAsyncWork::DispatchAsyncWork(OHOS::ACELite::ExecuteSendMsgToJS, static_cast<void *>(params));
if (!ret) {
HILOG_ERROR(HILOG_MODULE_ACE, "Failed to dispatch async work");
+ AdapterFree(params->msgBody);
delete params;
params = nullptr;
return -1;
}
__attribute__((weak)) void WGS84ToGCJ02(double lon, double lat, JSCoordinate &output)
-{
-
-}
+{}
__attribute__((weak)) void GCJ02ToBD09(double lon, double lat, JSCoordinate &output)
-{
-
-}
+{}
__attribute__((weak)) void WGS84ToBD09(double lon, double lat, JSCoordinate &output)
-{
-
-}
+{}
__attribute__((weak)) void BD09ToGCJ02(double bd_lon, double bd_lat, JSCoordinate &output)
-{
-
-}
+{}
/*
-* Copyright (c) CompanyNameMagicTag. 2021-2021. All rights reserved.
-* Description: audio capture wrapper
-* Author: Media Software Group
-* Create: 2021-09-13
-*/
+ * Copyright (c) CompanyNameMagicTag. 2024-2025. All rights reserved.
+ * Description: baidumap sdk wrapper
+ * Author: SoftwarePlatform Group
+ * Create: 2024-03-02
+ */
#ifndef BAIDUMAPCOMPONENT_MODULE_H
#define BAIDUMAPCOMPONENT_MODULE_H
*/
static JSIValue StopAnswer(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize);
+ /**
+ * mapInit
+ */
+ static JSIValue MapInit(const JSIValue thisVal, const JSIValue *args, uint8_t argsSize);
+
/**
* destroy
*/
};
void InitBaiduMapComponentModule(JSIValue exports);
-}
-}
-int32_t BaidumapSendMsgToJS(const char *msgBody,uint8_t type);
-int32_t BaidumapFailSendMsgToJS(const char *msgBody,uint8_t type);
+} // namespace ACELite
+} // namespace OHOS
+int32_t BaidumapSendMsgToJS(const char *msgBody, uint8_t type);
+int32_t BaidumapFailSendMsgToJS(const char *msgBody, uint8_t type);
#endif
--- /dev/null
+/*
+ * Copyright (c) 2020 Huawei Device Co., Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "keyinput.h"
+#include "js_async_work.h"
+#include "adapter.h"
+#include "js_ability_impl.h"
+#include "ace_log.h"
+
+typedef struct : public OHOS::HeapBase {
+ char *msgBody;
+ uint16_t status;
+} KeyMsgParams;
+
+typedef struct : public OHOS::HeapBase {
+ int16_t rotate;
+} RotateMsgParams;
+
+namespace OHOS {
+namespace ACELite {
+
+OHOS::ACELite::JSIValue key_successCallback = nullptr;
+OHOS::ACELite::JSIValue key_callbackContext = nullptr;
+OHOS::ACELite::JSIValue rotate_successCallback = nullptr;
+OHOS::ACELite::JSIValue rotate_callbackContext = nullptr;
+
+static bool CheckIsJsValueDefined(OHOS::ACELite::JSIValue jsValue)
+{
+ if (jsValue == nullptr) {
+ return false;
+ }
+
+ if (OHOS::ACELite::JSI::ValueIsUndefined(jsValue)) {
+ return false;
+ }
+
+ return true;
+}
+
+static void ReleaseJsValue(OHOS::ACELite::JSIValue &jsValue)
+{
+ if (CheckIsJsValueDefined(jsValue)) {
+ OHOS::ACELite::JSI::ReleaseValue(jsValue);
+ jsValue = OHOS::ACELite::JSI::CreateUndefined();
+ }
+ return;
+}
+
+static int32_t ACECopyStr(char **destStr, const char *srcStr)
+{
+ if (destStr == nullptr || srcStr == nullptr) {
+ return -1;
+ }
+
+ uint32_t length = strlen(srcStr) + 1;
+ *destStr = static_cast<char *>(AdapterMalloc(length));
+ if (*destStr == nullptr) {
+ HILOG_ERROR(HILOG_MODULE_ACE, "Failed to allocate memory for destination string");
+ return -1;
+ }
+
+ if (memset_s(*destStr, length, 0, length) != EOK) {
+ HILOG_ERROR(HILOG_MODULE_ACE, "Failed to set memory for destination string");
+ AdapterFree(*destStr);
+ return -1;
+ }
+ if (memcpy_s(*destStr, length, srcStr, length) != EOK) {
+ HILOG_ERROR(HILOG_MODULE_ACE, "Failed to copy source string to destination string");
+ AdapterFree(*destStr);
+ return -1;
+ }
+
+ return 0;
+}
+
+static void ExecuteSendKeyMsgToJS(void *data)
+{
+ KeyMsgParams *params = static_cast<KeyMsgParams *>(data);
+ if (params == nullptr) {
+ return;
+ }
+
+ char *msgBody = params->msgBody;
+ uint16_t status = params->status;
+ OHOS::ACELite::JSIValue callback = key_successCallback;
+ OHOS::ACELite::JSIValue context = key_callbackContext;
+
+ OHOS::ACELite::JSIValue dataInfo = OHOS::ACELite::JSI::CreateObject();
+ OHOS::ACELite::JSI::SetStringProperty(dataInfo, "button", msgBody);
+ OHOS::ACELite::JSI::SetNumberProperty(dataInfo, "status", status);
+ OHOS::ACELite::JSIValue callbackArgv[OHOS::ACELite::ARGC_ONE] = {dataInfo};
+ OHOS::ACELite::JSI::CallFunction(callback, context, callbackArgv, OHOS::ACELite::ARGC_ONE);
+ OHOS::ACELite::JSI::ReleaseValue(dataInfo);
+
+ AdapterFree(msgBody);
+ delete params;
+ params = nullptr;
+ return;
+}
+
+static void ExecuteSendRotateMsgToJS(void *data)
+{
+ RotateMsgParams *params = static_cast<RotateMsgParams *>(data);
+ if (params == nullptr) {
+ return;
+ }
+
+ int16_t rotate = params->rotate;
+ delete params;
+ params = nullptr;
+ OHOS::ACELite::JSIValue callback = rotate_successCallback;
+ OHOS::ACELite::JSIValue context = rotate_callbackContext;
+ OHOS::ACELite::JSIValue dataInfo = OHOS::ACELite::JSI::CreateObject();
+ OHOS::ACELite::JSI::SetNumberProperty(dataInfo, "rotate", rotate);
+ OHOS::ACELite::JSIValue callbackArgv[OHOS::ACELite::ARGC_ONE] = {dataInfo};
+ OHOS::ACELite::JSI::CallFunction(callback, context, callbackArgv, OHOS::ACELite::ARGC_ONE);
+ OHOS::ACELite::JSI::ReleaseValue(dataInfo);
+ return;
+}
+
+JSIValue KeyInputModule::setKeyListener(const JSIValue thisVal, const JSIValue *args, uint8_t argsNum)
+{
+ ReleaseJsValue(key_callbackContext);
+ ReleaseJsValue(key_successCallback);
+ if (argsNum > 0) {
+ key_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
+ key_successCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
+ KeyListener::GetInstance()->SetRegister(true);
+ } else {
+ key_callbackContext = nullptr;
+ key_successCallback = nullptr;
+ }
+ return JSI::CreateBoolean(true);
+}
+
+JSIValue KeyInputModule::setRotateListener(const JSIValue thisVal, const JSIValue *args, uint8_t argsNum)
+{
+ ReleaseJsValue(rotate_successCallback);
+ ReleaseJsValue(rotate_callbackContext);
+ if (argsNum > 0) {
+ rotate_callbackContext = OHOS::ACELite::JSI::AcquireValue(thisVal);
+ rotate_successCallback = OHOS::ACELite::JSI::GetNamedProperty(args[0], CB_CALLBACK);
+ RotateListener::GetInstance()->SetRegister(true);
+ } else {
+ key_callbackContext = nullptr;
+ key_successCallback = nullptr;
+ }
+ return JSI::CreateBoolean(true);
+}
+
+void KeyInputModule::OnDestroy()
+{
+ OHOS::ACELite::KeyListener::GetInstance()->SetRegister(false);
+ OHOS::ACELite::RotateListener::GetInstance()->SetRegister(false);
+}
+
+void InitKeyInputModule(JSIValue exports)
+{
+ JSI::SetModuleAPI(exports, "setKeyListener", KeyInputModule::setKeyListener);
+ JSI::SetModuleAPI(exports, "setRotateListener", KeyInputModule::setRotateListener);
+ JSI::SetOnDestroy(exports, KeyInputModule::OnDestroy);
+}
+
+} // namespace ACELite
+} // namespace OHOS
+
+void OHOS::ACELite::KeyListener::OnKeyEvent(const KeyEvent &event)
+{
+ if (OHOS::ACELite::KeyListener::hasRegister()) {
+ char *type;
+ switch (event.GetKeyId()) {
+ case static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER):
+ type = "POWER";
+ break;
+ default:
+ type = "UNKNOWN";
+ break;
+ }
+ int32_t ret = KeySendMsgToJS(type, event.GetState());
+ if (ret != 0) {
+ HILOG_ERROR(HILOG_MODULE_ACE, "KeyListener: OnKeyEvent send event error");
+ }
+ } else {
+ switch (event.GetState()) {
+ case InputDevice::STATE_PRESS:
+ isPress_ = true;
+ break;
+ case InputDevice::STATE_LONG_PRESS:
+ isLongPress_ = true;
+ OnKeyLongPress(event);
+ break;
+ case InputDevice::STATE_RELEASE:
+ onRelease(event);
+ break;
+ default:
+ break;
+ }
+ }
+}
+
+void OHOS::ACELite::KeyListener::onRelease(const KeyEvent &event)
+{
+ if (isPress_ && !isLongPress_) {
+ if (event.GetKeyId() == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER)) {
+ JsAppContext::GetInstance()->TerminateAbility();
+ }
+ }
+ isPress_ = false;
+}
+
+void OHOS::ACELite::KeyListener::OnKeyLongPress(const KeyEvent &event)
+{
+ if (isLongPress_) {
+ if (event.GetKeyId() == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER)) {
+ NativeAbility::GetInstance().ChangeSlice(VIEW_REBOOT);
+ }
+ }
+ // we don't handle isLongPress & isRelease, so reset isLongPress_ to false here.
+ isLongPress_ = false;
+}
+
+void OHOS::ACELite::RotateListener::OnRotateEvent(const RotateEvent &event)
+{
+ if (OHOS::ACELite::RotateListener::hasRegister()) {
+ int ret = RotateSendMsgToJS(event.GetRotate());
+ if (ret != 0) {
+ HILOG_ERROR(HILOG_MODULE_ACE, "RotateListener: OnRotateEvent send event error");
+ }
+ }
+}
+
+int32_t KeySendMsgToJS(const char *msgBody, uint16_t status)
+{
+ KeyMsgParams *params = new KeyMsgParams();
+ if (params == nullptr) {
+ HILOG_ERROR(HILOG_MODULE_ACE, "Failed to allocate memory for params");
+ return -1;
+ }
+ params->status = status;
+ int32_t copyRet = OHOS::ACELite::ACECopyStr(¶ms->msgBody, msgBody);
+
+ if (copyRet != 0) {
+ HILOG_ERROR(HILOG_MODULE_ACE, "Failed to copy msgBody");
+ AdapterFree(params->msgBody);
+ delete params;
+ params = nullptr;
+ return copyRet;
+ }
+
+ bool ret = OHOS::ACELite::JsAsyncWork::DispatchAsyncWork(
+ OHOS::ACELite::ExecuteSendKeyMsgToJS, static_cast<void *>(params));
+ if (!ret) {
+ HILOG_ERROR(HILOG_MODULE_ACE, "Failed to dispatch async work");
+ AdapterFree(params->msgBody);
+ delete params;
+ params = nullptr;
+ return -1;
+ }
+
+ return 0;
+}
+
+int32_t RotateSendMsgToJS(int16_t rotate)
+{
+ RotateMsgParams *params = new RotateMsgParams();
+ if (params == nullptr) {
+ HILOG_ERROR(HILOG_MODULE_ACE, "Failed to allocate memory for params");
+ return -1;
+ }
+ params->rotate = rotate;
+ bool ret = OHOS::ACELite::JsAsyncWork::DispatchAsyncWork(
+ OHOS::ACELite::ExecuteSendRotateMsgToJS, static_cast<void *>(params));
+ if (!ret) {
+ HILOG_ERROR(HILOG_MODULE_ACE, "Failed to dispatch async work");
+ delete params;
+ params = nullptr;
+ return -1;
+ }
+ return 0;
+}
/*
- * Copyright (c) 2020 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Copyright (c) CompanyNameMagicTag. 2024-2025. All rights reserved.
+ * Description: keyinput wrapper
+ * Author: SoftwarePlatform Group
+ * Create: 2024-09-29
*/
#ifndef OHOS_ACELITE_KEYINPUT_MODULE_H
namespace ACELite {
class KeyInputModule : public MemoryHeap {
public:
-
KeyInputModule() = default;
~KeyInputModule() = default;
static JSIValue setKeyListener(const JSIValue thisVal, const JSIValue *args, uint8_t argsNum);
class KeyListener {
public:
- static KeyListener* GetInstance()
+ static KeyListener *GetInstance()
{
static KeyListener instance;
return &instance;
void OnKeyEvent(const KeyEvent &event);
- bool hasRegister()
+ bool hasRegister()
{
return isRegister_;
}
- void SetRegister(bool isRegister)
+ void SetRegister(bool isRegister)
{
isRegister_ = isRegister;
}
+
private:
- KeyListener():isRegister_(false),isPress_(false),isLongPress_(false){};
+ KeyListener() : isRegister_(false), isPress_(false), isLongPress_(false){};
~KeyListener() = default;
void onRelease(const KeyEvent &event);
void OnKeyLongPress(const KeyEvent &event);
class RotateListener {
public:
- static RotateListener* GetInstance()
+ static RotateListener *GetInstance()
{
static RotateListener instance;
return &instance;
void OnRotateEvent(const RotateEvent &event);
- bool hasRegister()
+ bool hasRegister()
{
return isRegister_;
}
- void SetRegister(bool isRegister)
+ void SetRegister(bool isRegister)
{
isRegister_ = isRegister;
}
+
private:
- RotateListener():isRegister_(false){};
+ RotateListener() : isRegister_(false){};
~RotateListener() = default;
bool isRegister_;
};
-} // namespace ACELite
-} // namespace OHOS
-int32_t KeySendMsgToJS(const char *msgBody,uint16_t type);
+} // namespace ACELite
+} // namespace OHOS
+int32_t KeySendMsgToJS(const char *msgBody, uint16_t type);
int32_t RotateSendMsgToJS(int16_t rotate);
#endif
/*\r
-* Copyright (c) CompanyNameMagicTag. 2021-2021. All rights reserved.\r
-* Description: audio capture wrapper\r
-* Author: Media Software Group\r
-* Create: 2021-09-13\r
-*/\r
+ * Copyright (c) CompanyNameMagicTag. 2024-2025. All rights reserved.\r
+ * Description: network wrapper\r
+ * Author: SoftwarePlatform Group\r
+ * Create: 2024-08-10\r
+ */\r
\r
#ifndef NET_CONNECT_MODULE_H\r
#define NET_CONNECT_MODULE_H\r
#ifdef __cplusplus\r
extern "C" {\r
#endif\r
-void net_connect_status_change(uint8_t netConnectStatus,uint8_t type);\r
+void net_connect_status_change(uint8_t netConnectStatus, uint8_t type);\r
#ifdef __cplusplus\r
};\r
#endif\r
namespace ACELite {\r
#define MAX_STATUS_LENGTH 128\r
// 网络类型枚举\r
-typedef enum {\r
+typedef enum { \r
NETWORK_TYPE_WIFI = 0,\r
NETWORK_TYPE_BLUETOOTH,\r
NETWORK_TYPE_UNKNOWN\r
uint8_t net_type = -1;\r
};\r
\r
-struct NetCallBack {\r
+struct NetCallBack {\r
JSIValue net_connect_callback = nullptr;\r
JSIValue net_connect_thisVal = nullptr;\r
NetParam netParam;\r
JSI::SetModuleAPI(exports, "getConnectState", NetWorkModule::GetConnectState);\r
}\r
\r
-\r
-}\r
-}\r
-\r
+} // namespace ACELite\r
+} // namespace OHOS\r
\r
#endif\r
\r
uint8_t QueryAbilityInfo(const Want *want, AbilityInfo *abilityInfo) const;\r
\r
+ bool ScanPackages (InstallerCallback installerCallback) const;\r
+\r
uint8_t GetBundleInfo(const char *bundleName, int32_t flags, BundleInfo *bundleInfo) const;\r
\r
uint8_t GetBundleInfos(int32_t flags, BundleInfo **bundleInfos, int32_t *len) const;\r
*/
void ClearElement(ElementName *element);
+void FreeElement(ElementName *element);
/**
* @brief Sets the device ID used to query {@link AbilityInfo}.
*
*/
bool Uninstall(const char *bundleName, const InstallParam *installParam, InstallerCallback installerCallback);
+/**
+ * @brief Scans all installed packages in the system and triggers the provided callback with the result.
+ *
+ * This function initiates a scan of all installed packages, and the result is returned through the specified
+ * {@link InstallerCallback}. The callback will receive the result status of the package scanning operation.
+ *
+ * @param installerCallback Indicates the callback to be invoked for notifying the package scan result.
+ * @return Returns <b>true</b> if the scan operation is successfully initiated; returns <b>false</b> otherwise.
+ *
+ * @since 1.0
+ * @version 1.0
+ */
+bool ScanPackages(InstallerCallback installerCallback);
+
/**
* @brief Queries the {@link AbilityInfo} of an ability based on the information carried in the {@link Want}
* structure.
~GtBundleInstaller() = default;
uint8_t Install(const char *path, InstallerCallback installerCallback);
+ uint8_t Install(const char *path, const InstallParam *installParam, InstallerCallback installerCallback);
uint8_t Uninstall(const char *bundleName);
private:
uint8_t PreCheckBundle(const char *path, int32_t &fp, SignatureInfo &signatureInfo, uint32_t &fileSize,
--- /dev/null
+【补丁名称】patch_615_1009_to_1029\r
+【基础版本】b615 + 0906 + 1009\r
+【修复问题】\r
+BT合入内容\r
+ 1、增强dfx信息\r
+PLT合入内容\r
+ 1、完善pmp配置,已解决nmi xip异常\r
+ 2、psram稳定性增强\r
+ 3、解决低概率rtc异常导致的系统狗超时\r
+AUDIO&MEDIA合入内容\r
+ 1、优化消息模块,解决DSP概率无法下电的问题\r
+GUI合入内容\r
+ 1、可缩放滑动列表布局方案优化\r
+ 2、一级界面UICrossView快速滑动响应优化\r
+ 3、瀑布流、蜂窝转场动画优化\r
+ 4、多语言频繁切换后文本滑动卡顿优化\r
+ 5、统计图形耗时DFX方案优化,支持打印Task、Event耗时\r
+ 6、解决JS应用退出到Native概率花屏问题\r
+ 7、解决视频起播过程中快速灭屏导致的后续播放异常问题 \r
+ 8、解决Canvas、roller、蜂窝等控件在特殊或者异常场景下挂死、绘制异常等问题\r
+ 9、解决LVGL圆角矩形矢量数据在异步模式下提前释放的问题\r
+OHOS合入内容\r
+ 1、支持关签名模式下jsapp覆盖安装\r
+ 2、修改audio src接口重复调用失败问题\r
+ 3、修改原生GetTopAbility释放\r
+ 4、增加跑马灯文本旋转JS Sample\r
+ 5、修改百度地图json外部释放\r
+ 6、修改XTS GetDisplayVersion默认值1.0.0\r
+ 7、支持KeyInput按键/编码器事件监听\r
+GPU合入内容:\r
+ 1、DFX优化\r
+ 2、解决DPU视频层停止送显后进出低功耗后黑屏问题\r
+\r
+NATIVE-JS sample合入内容\r
+ \r
+【修改影响】NA\r
+\r
+【使用方法】\r
+ 1、合入0906补丁\r
+ 2、合入1009补丁\r
+ 3、合入1029补丁(此补丁包含1014单点合入内容)\r
+\r
+【自测情况】\r
+ 自验证范围:\r
+ 全功能冒烟\r
+ 自验证target:\r
+ Native-js、target3 rc版本\r
+【是否合入版本】根据测试结果确定\r