1855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi/* 2855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * Copyright (C) 2011 The Android Open Source Project 3855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * 4855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * Licensed under the Apache License, Version 2.0 (the "License"); 5855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * you may not use this file except in compliance with the License. 6855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * You may obtain a copy of the License at 7855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * 8855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * http://www.apache.org/licenses/LICENSE-2.0 9855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * 10855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * Unless required by applicable law or agreed to in writing, software 11855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * distributed under the License is distributed on an "AS IS" BASIS, 12855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * See the License for the specific language governing permissions and 14855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * limitations under the License. 15855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi */ 16855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi/** 17855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi ************************************************************************ 18855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * @file M4OSA_Debug.h 19855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi * @brief Debug and Trace Macro 20855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi ************************************************************************ 21855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi*/ 22855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 23855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 24855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#ifndef _M4OSA_DEBUG_H_ 25855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define _M4OSA_DEBUG_H_ 26855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 27855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#include "M4OSA_Error.h" 28855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#include "M4OSA_Types.h" 29855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 30855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 31855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi/* defaut value, defined only if not defined already. */ 32855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#ifndef M4TRACE_ID 33855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4TRACE_ID M4UNKNOWN_COREID 34855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif /* M4TRACE_ID undefined */ 35855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 36855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 37855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_SUPER_DEBUG_LEVEL 0 38855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 39855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#ifndef M4OSA_DEBUG_LEVEL 40855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_DEBUG_LEVEL 0 41855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif 42855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 43855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 44855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_SUPER_TRACE_LEVEL 0 45855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 46855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#ifndef M4OSA_TRACE_LEVEL 47855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE_LEVEL 0 48855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif 49855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 50855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#ifdef __cplusplus 51855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargiextern "C" 52855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi{ 53855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif 54855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 55855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 56855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#if (M4OSA_DEBUG_LEVEL >= 1) || (M4OSA_SUPER_DEBUG_LEVEL >= 1) 57855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 58855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi/* Debug macros */ 59855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargiextern M4OSA_Void M4OSA_DEBUG_traceFunction(M4OSA_UInt32 line, 60855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_Char* fileName, 61855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_UInt32 level, 62855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_Char* stringCondition, 63855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_Char* message, 64855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_ERR returnedError); 65855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 66855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 67855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_DEBUG_IFx(cond, errorCode, msg, level)\ 68855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi if(cond)\ 69855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi {\ 70855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_DEBUG_traceFunction(__LINE__, (M4OSA_Char*)__FILE__, level,\ 71855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi (M4OSA_Char*)#cond, (M4OSA_Char*)msg, 72855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi (errorCode));\ 73855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi return(errorCode);\ 74855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi } 75855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 76855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_DEBUG(errorCode, msg)\ 77855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_DEBUG_traceFunction(__LINE__, (M4OSA_Char*)__FILE__, 1,\ 78855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi (M4OSA_Char*)#errorCode, (M4OSA_Char*)msg, 79855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi (errorCode)); 80855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 81855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#else /*(M4OSA_DEBUG_LEVEL >= 1) || (M4OSA_SUPER_DEBUG_LEVEL >= 1)*/ 82855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 83855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 84855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_DEBUG(errorCode, msg) 85855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 86855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif /*(M4OSA_DEBUG_LEVEL >= 1) || (M4OSA_SUPER_DEBUG_LEVEL >= 1)*/ 87855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 88855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 89855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 90855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#if (M4OSA_DEBUG_LEVEL >= 1) || (M4OSA_SUPER_DEBUG_LEVEL >= 1) 91855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi #define M4OSA_DEBUG_IF1(cond, errorCode, msg)\ 92855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_DEBUG_IFx(cond, errorCode, msg, 1) 93855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#else 94855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi #define M4OSA_DEBUG_IF1(cond, errorCode, msg) 95855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif /*(M4OSA_DEBUG_LEVEL >= 1) || (M4OSA_SUPER_DEBUG_LEVEL >= 1)*/ 96855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 97855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 98855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#if (M4OSA_DEBUG_LEVEL >= 2) || (M4OSA_SUPER_DEBUG_LEVEL >= 2) 99855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi #define M4OSA_DEBUG_IF2(cond, errorCode, msg)\ 100855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_DEBUG_IFx(cond, errorCode, msg, 2) 101855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#else 102855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi #define M4OSA_DEBUG_IF2(cond, errorCode, msg) 103855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif /*(M4OSA_DEBUG_LEVEL >= 2) || (M4OSA_SUPER_DEBUG_LEVEL >= 2)*/ 104855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 105855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 106855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#if (M4OSA_DEBUG_LEVEL >= 3) || (M4OSA_SUPER_DEBUG_LEVEL >= 3) 107855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi #define M4OSA_DEBUG_IF3(cond, errorCode, msg)\ 108855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_DEBUG_IFx(cond, errorCode, msg, 3) 109855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#else 110855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi #define M4OSA_DEBUG_IF3(cond, errorCode, msg) 111855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif /*(M4OSA_DEBUG_LEVEL >= 3) || (M4OSA_SUPER_DEBUG_LEVEL >= 3)*/ 112855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 113855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 114855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 115855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi/* Trace macros */ 116855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 117855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#if (M4OSA_TRACE_LEVEL >= 1) || (M4OSA_SUPER_TRACE_LEVEL >= 1) 118855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 119855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargiextern M4OSA_Void M4OSA_TRACE_traceFunction(M4OSA_UInt32 line, 120855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_Char* fileName, 121855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_CoreID coreID, 122855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_UInt32 level, 123855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_Char* stringMsg, 124855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi ... ); 125855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 126855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 127855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 128855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACEx_0(msg, level)\ 129855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACE_traceFunction(__LINE__, (M4OSA_Char*)__FILE__,\ 130855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi (M4OSA_CoreID)M4TRACE_ID, level, (M4OSA_Char*)msg); 131855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 132855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 133855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACEx_1(msg, param1, level)\ 134855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACE_traceFunction(__LINE__, (M4OSA_Char*)__FILE__,\ 135855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi (M4OSA_CoreID)M4TRACE_ID, level, (M4OSA_Char*)msg, param1); 136855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 137855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 138855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACEx_2(msg, param1, param2, level)\ 139855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACE_traceFunction(__LINE__, (M4OSA_Char*)__FILE__,\ 140855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi (M4OSA_CoreID)M4TRACE_ID, level,\ 141855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi (M4OSA_Char*)msg, param1,\ 142855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi param2); 143855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 144855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 145855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACEx_3(msg, param1, param2, param3, level)\ 146855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACE_traceFunction(__LINE__, (M4OSA_Char*)__FILE__,\ 147855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi (M4OSA_CoreID)M4TRACE_ID, level, (M4OSA_Char*)msg,\ 148855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi param1,param2, param3); 149855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 150855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 151855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACEx_4(msg, param1, param2, param3, param4, level)\ 152855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACE_traceFunction(__LINE__, (M4OSA_Char*)__FILE__,\ 153855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi (M4OSA_CoreID)M4TRACE_ID, level,\ 154855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi (M4OSA_Char*)msg, param1,\ 155855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi param2, param3, param4); 156855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 157855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 158855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACEx_5(msg, param1, param2, param3, param4, param5, level)\ 159855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACE_traceFunction(__LINE__, (M4OSA_Char*)__FILE__,\ 160855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi (M4OSA_CoreID)M4TRACE_ID, level,\ 161855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi (M4OSA_Char*)msg, param1,\ 162855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi param2, param3, param4, param5); 163855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 164855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif /*(M4OSA_TRACE_LEVEL >= 1) || (M4OSA_SUPER_TRACE_LEVEL >= 1)*/ 165855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 166855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 167855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 168855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#if (M4OSA_TRACE_LEVEL >= 1) || (M4OSA_SUPER_TRACE_LEVEL >= 1) 169855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE1_0(msg)\ 170855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_0(msg, 1) 171855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 172855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE1_1(msg, param1)\ 173855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_1(msg, param1, 1) 174855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 175855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE1_2(msg, param1, param2)\ 176855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_2(msg, param1, param2, 1) 177855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 178855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE1_3(msg, param1, param2, param3)\ 179855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_3(msg, param1, param2, param3, 1) 180855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 181855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE1_4(msg, param1, param2, param3, param4)\ 182855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_4(msg, param1, param2, param3, param4, 1) 183855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 184855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE1_5(msg, param1, param2, param3, param4, param5)\ 185855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_5(msg, param1, param2, param3, param4, param5, 1) 186855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 187855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#else /*(M4OSA_TRACE_LEVEL >= 1) || (M4OSA_SUPER_TRACE_LEVEL >= 1)*/ 188855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 189855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE1_0(msg) 190855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE1_1(msg, param1) 191855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE1_2(msg, param1, param2) 192855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE1_3(msg, param1, param2, param3) 193855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE1_4(msg, param1, param2, param3, param4) 194855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE1_5(msg, param1, param2, param3, param4, param5) 195855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 196855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif /*(M4OSA_TRACE_LEVEL >= 1) || (M4OSA_SUPER_TRACE_LEVEL >= 1)*/ 197855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 198855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 199855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#if (M4OSA_TRACE_LEVEL >= 2) || (M4OSA_SUPER_TRACE_LEVEL >= 2) 200855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE2_0(msg)\ 201855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_0(msg, 2) 202855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 203855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE2_1(msg, param1)\ 204855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_1(msg, param1, 2) 205855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 206855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE2_2(msg, param1, param2)\ 207855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_2(msg, param1, param2, 2) 208855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 209855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE2_3(msg, param1, param2, param3)\ 210855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_3(msg, param1, param2, param3, 2) 211855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 212855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE2_4(msg, param1, param2, param3, param4)\ 213855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_4(msg, param1, param2, param3, param4, 2) 214855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 215855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE2_5(msg, param1, param2, param3, param4, param5)\ 216855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_5(msg, param1, param2, param3, param4, param5, 2) 217855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 218855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#else /*(M4OSA_TRACE_LEVEL >= 2) || (M4OSA_SUPER_TRACE_LEVEL >= 2)*/ 219855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 220855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE2_0(msg) 221855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE2_1(msg, param1) 222855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE2_2(msg, param1, param2) 223855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE2_3(msg, param1, param2, param3) 224855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE2_4(msg, param1, param2, param3, param4) 225855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE2_5(msg, param1, param2, param3, param4, param5) 226855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif /*(M4OSA_TRACE_LEVEL >= 2) || (M4OSA_SUPER_TRACE_LEVEL >= 2)*/ 227855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 228855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 229855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#if (M4OSA_TRACE_LEVEL >= 3) || (M4OSA_SUPER_TRACE_LEVEL >= 3) 230855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE3_0(msg)\ 231855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_0(msg, 3) 232855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 233855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE3_1(msg, param1)\ 234855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_1(msg, param1, 3) 235855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 236855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE3_2(msg, param1, param2)\ 237855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_2(msg, param1, param2, 3) 238855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 239855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE3_3(msg, param1, param2, param3)\ 240855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_3(msg, param1, param2, param3, 3) 241855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 242855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE3_4(msg, param1, param2, param3, param4)\ 243855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_4(msg, param1, param2, param3, param4, 3) 244855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 245855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE3_5(msg, param1, param2, param3, param4, param5)\ 246855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi M4OSA_TRACEx_5(msg, param1, param2, param3, param4, param5, 3) 247855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 248855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#else /*(M4OSA_TRACE_LEVEL >= 3) || (M4OSA_SUPER_TRACE_LEVEL >= 3)*/ 249855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 250855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE3_0(msg) 251855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE3_1(msg, param1) 252855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE3_2(msg, param1, param2) 253855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE3_3(msg, param1, param2, param3) 254855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE3_4(msg, param1, param2, param3, param4) 255855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#define M4OSA_TRACE3_5(msg, param1, param2, param3, param4, param5) 256855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 257855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif /*(M4OSA_TRACE_LEVEL >= 3) || (M4OSA_SUPER_TRACE_LEVEL >= 3)*/ 258855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 259855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 260855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 261855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#ifdef __cplusplus 262855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi} 263855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif 264855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 265855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi#endif /* _M4OSA_DEBUG_H_ */ 266855ec7c4be7ad642721909d5837a8d25a117c22fDharmaray Kundargi 267