1 /* 2 * Copyright (c) 2021 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef HILOG_WRAPPER_H 17 #define HILOG_WRAPPER_H 18 19 #define CONFIG_HILOG 20 #ifdef CONFIG_HILOG 21 #include "hilog/log.h" 22 namespace OHOS { 23 namespace ExternalDeviceManager { 24 25 #ifdef EDM_LOGF 26 #undef EDM_LOGF 27 #endif 28 29 #ifdef EDM_LOGE 30 #undef EDM_LOGE 31 #endif 32 33 #ifdef EDM_LOGW 34 #undef EDM_LOGW 35 #endif 36 37 #ifdef EDM_LOGI 38 #undef EDM_LOGI 39 #endif 40 41 #ifdef EDM_LOGD 42 #undef EDM_LOGD 43 #endif 44 45 struct EdmLable { 46 uint32_t domainId; 47 const char* tag; 48 }; 49 50 // param of log interface, such as EDM_LOGF. 51 enum UsbMgrSubModule { 52 MODULE_FRAMEWORK = 0, 53 MODULE_SERVICE, 54 MODULE_DEV_MGR, 55 MODULE_PKG_MGR, 56 MODULE_EA_MGR, 57 MODULE_BUS_USB, 58 MODULE_COMMON, 59 MODULE_USB_DDK, 60 EDM_MODULE_TEST, 61 MODULE_HID_DDK, 62 MODULE_BASE_DDK, 63 EDM_MODULE_BUTT, 64 }; 65 66 // 0xD002550: part:ExternalDeviceManager module:Edm. 67 constexpr unsigned int BASE_EDM_DOMAIN_ID = 0xD002550; 68 69 enum UsbMgrDomainId { 70 EDM_FRAMEWORK_DOMAIN = BASE_EDM_DOMAIN_ID + MODULE_FRAMEWORK, 71 EDM_SERVICE_DOMAIN, 72 EDM_DEV_MGR_DOMAIN, 73 EDM_PKG_MGR_DOMAIN, 74 EDM_EA_MGR_DOMAIN, 75 EDM_BUS_USB_DOMAIN, 76 EDM_COMMON_DOMAIN, 77 EDM_USB_DDK_DOMAIN, 78 EDM_TEST, 79 EDM_HID_DDK_DOMAIN, 80 EDM_BASE_DDK_DOMAIN, 81 EDM_BUTT, 82 }; 83 84 enum PkgErrCode { 85 PKG_OK = 0, 86 PKG_FAILURE = -1, 87 PKG_RDB_EXECUTE_FAILTURE = -2, 88 PKG_RDB_NO_INIT = -3, 89 PKG_RDB_EMPTY = -4, 90 PKG_PERMISSION_DENIED = -5, 91 PKG_NOP = -6, 92 PKG_OVERFLOW = -7, 93 }; 94 95 static const EdmLable EDM_MGR_LABEL[EDM_MODULE_BUTT] = { 96 {EDM_FRAMEWORK_DOMAIN, "EdmFwk" }, 97 {EDM_SERVICE_DOMAIN, "EdmService" }, 98 {EDM_DEV_MGR_DOMAIN, "EdmDevMgr" }, 99 {EDM_PKG_MGR_DOMAIN, "EdmPkgMgr" }, 100 {EDM_EA_MGR_DOMAIN, "EdmEaMgr" }, 101 {EDM_BUS_USB_DOMAIN, "EdmBusUsbMgr"}, 102 {EDM_COMMON_DOMAIN, "EdmCommon" }, 103 {EDM_USB_DDK_DOMAIN, "EdmUsbDdk" }, 104 {EDM_TEST, "EdmTest" }, 105 {EDM_HID_DDK_DOMAIN, "EdmHidDdk" }, 106 {EDM_BASE_DDK_DOMAIN, "EdmBaseDdk" }, 107 }; 108 109 // In order to improve performance, do not check the module range, module should less than EDM_MODULE_BUTT. 110 #define EDM_LOGF(module, ...) \ 111 ((void)HILOG_IMPL(LOG_CORE, LOG_FATAL, EDM_MGR_LABEL[module].domainId, EDM_MGR_LABEL[module].tag, ##__VA_ARGS__)) 112 #define EDM_LOGE(module, ...) \ 113 ((void)HILOG_IMPL(LOG_CORE, LOG_ERROR, EDM_MGR_LABEL[module].domainId, EDM_MGR_LABEL[module].tag, ##__VA_ARGS__)) 114 #define EDM_LOGW(module, ...) \ 115 ((void)HILOG_IMPL(LOG_CORE, LOG_WARN, EDM_MGR_LABEL[module].domainId, EDM_MGR_LABEL[module].tag, ##__VA_ARGS__)) 116 #define EDM_LOGI(module, ...) \ 117 ((void)HILOG_IMPL(LOG_CORE, LOG_INFO, EDM_MGR_LABEL[module].domainId, EDM_MGR_LABEL[module].tag, ##__VA_ARGS__)) 118 #define EDM_LOGD(module, ...) \ 119 ((void)HILOG_IMPL(LOG_CORE, LOG_DEBUG, EDM_MGR_LABEL[module].domainId, EDM_MGR_LABEL[module].tag, ##__VA_ARGS__)) 120 } // namespace ExternalDeviceManager 121 } // namespace OHOS 122 123 #else 124 125 #define EDM_LOGF(...) 126 #define EDM_LOGE(...) 127 #define EDM_LOGW(...) 128 #define EDM_LOGI(...) 129 #define EDM_LOGD(...) 130 131 #endif // CONFIG_HILOG 132 133 #endif // HILOG_WRAPPER_H 134