1484543d1Sopenharmony_ci/* 2484543d1Sopenharmony_ci * Copyright (c) 2023 Huawei Device Co., Ltd. 3484543d1Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4484543d1Sopenharmony_ci * you may not use this file except in compliance with the License. 5484543d1Sopenharmony_ci * You may obtain a copy of the License at 6484543d1Sopenharmony_ci * 7484543d1Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8484543d1Sopenharmony_ci * 9484543d1Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10484543d1Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11484543d1Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12484543d1Sopenharmony_ci * See the License for the specific language governing permissions and 13484543d1Sopenharmony_ci * limitations under the License. 14484543d1Sopenharmony_ci */ 15484543d1Sopenharmony_ci 16484543d1Sopenharmony_ci#ifndef __LOG_BASE_H__ 17484543d1Sopenharmony_ci#define __LOG_BASE_H__ 18484543d1Sopenharmony_ci 19484543d1Sopenharmony_ci#include <stdio.h> 20484543d1Sopenharmony_ci 21484543d1Sopenharmony_civoid LogErr(const char* format, ...); 22484543d1Sopenharmony_civoid LogWarn(const char* format, ...); 23484543d1Sopenharmony_civoid LogInfo(const char* format, ...); 24484543d1Sopenharmony_civoid LogDebug(const char* format, ...); 25484543d1Sopenharmony_ci 26484543d1Sopenharmony_ciint GetFFRTLogLevel(void); 27484543d1Sopenharmony_ci 28484543d1Sopenharmony_ci#define FFRT_LOG(level, format, ...) \ 29484543d1Sopenharmony_ci do { \ 30484543d1Sopenharmony_ci if ((level) > GetFFRTLogLevel()) \ 31484543d1Sopenharmony_ci break; \ 32484543d1Sopenharmony_ci if (level == FFRT_LOG_ERROR) { \ 33484543d1Sopenharmony_ci LogErr("%u:%s:%d " format "\n", GetLogId(), __func__, __LINE__, ##__VA_ARGS__); \ 34484543d1Sopenharmony_ci } else if (level == FFRT_LOG_WARN) { \ 35484543d1Sopenharmony_ci LogWarn("%u:%s:%d " format "\n", GetLogId(), __func__, __LINE__, ##__VA_ARGS__); \ 36484543d1Sopenharmony_ci } else if (level == FFRT_LOG_INFO) { \ 37484543d1Sopenharmony_ci LogInfo("%u:%s:%d " format "\n", GetLogId(), __func__, __LINE__, ##__VA_ARGS__); \ 38484543d1Sopenharmony_ci } else if (level == FFRT_LOG_DEBUG) { \ 39484543d1Sopenharmony_ci LogDebug("%u:%s:%d " format "\n", GetLogId(), __func__, __LINE__, ##__VA_ARGS__); \ 40484543d1Sopenharmony_ci } else { \ 41484543d1Sopenharmony_ci printf("Log Level is Invalid!"); \ 42484543d1Sopenharmony_ci } \ 43484543d1Sopenharmony_ci } while (0) 44484543d1Sopenharmony_ci 45484543d1Sopenharmony_ci#endif // __LOG_BASE_H__