1e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/****************************************************************************** 2e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 3e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * Copyright (C) 2012 Broadcom Corporation 4e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 5e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 6e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * you may not use this file except in compliance with the License. 7e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * You may obtain a copy of the License at: 8e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 9e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 10e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 11e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 12e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 13e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * See the License for the specific language governing permissions and 15e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * limitations under the License. 16e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 17e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project ******************************************************************************/ 18e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 19e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/****************************************************************************** 20e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 21e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * Override the Android logging macro(s) from 22e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * /system/core/include/cutils/log.h. This header must be the first header 23e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * included by a *.cpp file so the original Android macro can be replaced. 24e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * Do not include this header in another header, because that will create 25e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * unnecessary dependency. 26e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 27e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project ******************************************************************************/ 28e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#pragma once 29e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 30e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project//Override Android's ALOGD macro by adding a boolean expression. 31e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define ALOGD(...) ((void)ALOGD_IF(appl_trace_level>=BT_TRACE_LEVEL_DEBUG, __VA_ARGS__)) 32e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 33e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 34e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#include <cutils/log.h> //define Android logging macros 35a24be4f06674b2707b57904deaa0dff5a95823bdEvan Chu#include "bt_types.h" 36e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 375c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen 38e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#ifdef __cplusplus 39e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Projectextern "C" { 40e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#endif 415c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen 425c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen 43a24be4f06674b2707b57904deaa0dff5a95823bdEvan Chuextern unsigned char appl_trace_level; 44e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 45e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 46e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 47e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 48e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function: initializeGlobalAppLogLevel 49e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 50e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description: Initialize and get global logging level from .conf or 51e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Android property nfc.app_log_level. The Android property 52e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** overrides .conf variable. 53e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 54e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns: Global log level: 55e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** BT_TRACE_LEVEL_NONE 0 * No trace messages to be generated 56e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** BT_TRACE_LEVEL_ERROR 1 * Error condition trace messages 57e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** BT_TRACE_LEVEL_WARNING 2 * Warning condition trace messages 58e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** BT_TRACE_LEVEL_API 3 * API traces 59e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** BT_TRACE_LEVEL_EVENT 4 * Debug messages for events 60e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** BT_TRACE_LEVEL_DEBUG 5 * Debug messages (general) 61e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 62e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 63e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Projectunsigned char initializeGlobalAppLogLevel (); 645c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen 655c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen 665c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen#ifdef __cplusplus 675c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen} 685c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen#endif 69