diff options
Diffstat (limited to 'libvideoeditor/osal/inc/M4OSA_Debug.h')
-rwxr-xr-x | libvideoeditor/osal/inc/M4OSA_Debug.h | 267 |
1 files changed, 267 insertions, 0 deletions
diff --git a/libvideoeditor/osal/inc/M4OSA_Debug.h b/libvideoeditor/osal/inc/M4OSA_Debug.h new file mode 100755 index 0000000..6d93c9c --- /dev/null +++ b/libvideoeditor/osal/inc/M4OSA_Debug.h @@ -0,0 +1,267 @@ +/* + * Copyright (C) 2004-2011 NXP Software + * Copyright (C) 2011 The Android Open Source Project + * + * 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. + */ +/** + ************************************************************************ + * @file M4OSA_Debug.h + * @brief Debug and Trace Macro + ************************************************************************ +*/ + + +#ifndef _M4OSA_DEBUG_H_ +#define _M4OSA_DEBUG_H_ + +#include "M4OSA_Error.h" +#include "M4OSA_Types.h" + + +/* defaut value, defined only if not defined already. */ +#ifndef M4TRACE_ID +#define M4TRACE_ID M4UNKNOWN_COREID +#endif /* M4TRACE_ID undefined */ + + +#define M4OSA_SUPER_DEBUG_LEVEL 0 + +#ifndef M4OSA_DEBUG_LEVEL +#define M4OSA_DEBUG_LEVEL 0 +#endif + + +#define M4OSA_SUPER_TRACE_LEVEL 0 + +#ifndef M4OSA_TRACE_LEVEL +#define M4OSA_TRACE_LEVEL 0 +#endif + +#ifdef __cplusplus +extern "C" +{ +#endif + + +#if (M4OSA_DEBUG_LEVEL >= 1) || (M4OSA_SUPER_DEBUG_LEVEL >= 1) + +/* Debug macros */ +extern M4OSA_Void M4OSA_DEBUG_traceFunction(M4OSA_UInt32 line, + M4OSA_Char* fileName, + M4OSA_UInt32 level, + M4OSA_Char* stringCondition, + M4OSA_Char* message, + M4OSA_ERR returnedError); + + +#define M4OSA_DEBUG_IFx(cond, errorCode, msg, level)\ + if(cond)\ + {\ + M4OSA_DEBUG_traceFunction(__LINE__, (M4OSA_Char*)__FILE__, level,\ + (M4OSA_Char*)#cond, (M4OSA_Char*)msg, + (errorCode));\ + return(errorCode);\ + } + +#define M4OSA_DEBUG(errorCode, msg)\ + M4OSA_DEBUG_traceFunction(__LINE__, (M4OSA_Char*)__FILE__, 1,\ + (M4OSA_Char*)#errorCode, (M4OSA_Char*)msg, + (errorCode)); + +#else /*(M4OSA_DEBUG_LEVEL >= 1) || (M4OSA_SUPER_DEBUG_LEVEL >= 1)*/ + + +#define M4OSA_DEBUG(errorCode, msg) + +#endif /*(M4OSA_DEBUG_LEVEL >= 1) || (M4OSA_SUPER_DEBUG_LEVEL >= 1)*/ + + + +#if (M4OSA_DEBUG_LEVEL >= 1) || (M4OSA_SUPER_DEBUG_LEVEL >= 1) + #define M4OSA_DEBUG_IF1(cond, errorCode, msg)\ + M4OSA_DEBUG_IFx(cond, errorCode, msg, 1) +#else + #define M4OSA_DEBUG_IF1(cond, errorCode, msg) +#endif /*(M4OSA_DEBUG_LEVEL >= 1) || (M4OSA_SUPER_DEBUG_LEVEL >= 1)*/ + + +#if (M4OSA_DEBUG_LEVEL >= 2) || (M4OSA_SUPER_DEBUG_LEVEL >= 2) + #define M4OSA_DEBUG_IF2(cond, errorCode, msg)\ + M4OSA_DEBUG_IFx(cond, errorCode, msg, 2) +#else + #define M4OSA_DEBUG_IF2(cond, errorCode, msg) +#endif /*(M4OSA_DEBUG_LEVEL >= 2) || (M4OSA_SUPER_DEBUG_LEVEL >= 2)*/ + + +#if (M4OSA_DEBUG_LEVEL >= 3) || (M4OSA_SUPER_DEBUG_LEVEL >= 3) + #define M4OSA_DEBUG_IF3(cond, errorCode, msg)\ + M4OSA_DEBUG_IFx(cond, errorCode, msg, 3) +#else + #define M4OSA_DEBUG_IF3(cond, errorCode, msg) +#endif /*(M4OSA_DEBUG_LEVEL >= 3) || (M4OSA_SUPER_DEBUG_LEVEL >= 3)*/ + + + +/* Trace macros */ + +#if (M4OSA_TRACE_LEVEL >= 1) || (M4OSA_SUPER_TRACE_LEVEL >= 1) + +extern M4OSA_Void M4OSA_TRACE_traceFunction(M4OSA_UInt32 line, + M4OSA_Char* fileName, + M4OSA_CoreID coreID, + M4OSA_UInt32 level, + M4OSA_Char* stringMsg, + ... ); + + + +#define M4OSA_TRACEx_0(msg, level)\ + M4OSA_TRACE_traceFunction(__LINE__, (M4OSA_Char*)__FILE__,\ + (M4OSA_CoreID)M4TRACE_ID, level, (M4OSA_Char*)msg); + + +#define M4OSA_TRACEx_1(msg, param1, level)\ + M4OSA_TRACE_traceFunction(__LINE__, (M4OSA_Char*)__FILE__,\ + (M4OSA_CoreID)M4TRACE_ID, level, (M4OSA_Char*)msg, param1); + + +#define M4OSA_TRACEx_2(msg, param1, param2, level)\ + M4OSA_TRACE_traceFunction(__LINE__, (M4OSA_Char*)__FILE__,\ + (M4OSA_CoreID)M4TRACE_ID, level,\ + (M4OSA_Char*)msg, param1,\ + param2); + + +#define M4OSA_TRACEx_3(msg, param1, param2, param3, level)\ + M4OSA_TRACE_traceFunction(__LINE__, (M4OSA_Char*)__FILE__,\ + (M4OSA_CoreID)M4TRACE_ID, level, (M4OSA_Char*)msg,\ + param1,param2, param3); + + +#define M4OSA_TRACEx_4(msg, param1, param2, param3, param4, level)\ + M4OSA_TRACE_traceFunction(__LINE__, (M4OSA_Char*)__FILE__,\ + (M4OSA_CoreID)M4TRACE_ID, level,\ + (M4OSA_Char*)msg, param1,\ + param2, param3, param4); + + +#define M4OSA_TRACEx_5(msg, param1, param2, param3, param4, param5, level)\ + M4OSA_TRACE_traceFunction(__LINE__, (M4OSA_Char*)__FILE__,\ + (M4OSA_CoreID)M4TRACE_ID, level,\ + (M4OSA_Char*)msg, param1,\ + param2, param3, param4, param5); + +#endif /*(M4OSA_TRACE_LEVEL >= 1) || (M4OSA_SUPER_TRACE_LEVEL >= 1)*/ + + + +#if (M4OSA_TRACE_LEVEL >= 1) || (M4OSA_SUPER_TRACE_LEVEL >= 1) +#define M4OSA_TRACE1_0(msg)\ + M4OSA_TRACEx_0(msg, 1) + +#define M4OSA_TRACE1_1(msg, param1)\ + M4OSA_TRACEx_1(msg, param1, 1) + +#define M4OSA_TRACE1_2(msg, param1, param2)\ + M4OSA_TRACEx_2(msg, param1, param2, 1) + +#define M4OSA_TRACE1_3(msg, param1, param2, param3)\ + M4OSA_TRACEx_3(msg, param1, param2, param3, 1) + +#define M4OSA_TRACE1_4(msg, param1, param2, param3, param4)\ + M4OSA_TRACEx_4(msg, param1, param2, param3, param4, 1) + +#define M4OSA_TRACE1_5(msg, param1, param2, param3, param4, param5)\ + M4OSA_TRACEx_5(msg, param1, param2, param3, param4, param5, 1) + +#else /*(M4OSA_TRACE_LEVEL >= 1) || (M4OSA_SUPER_TRACE_LEVEL >= 1)*/ + +#define M4OSA_TRACE1_0(msg) +#define M4OSA_TRACE1_1(msg, param1) +#define M4OSA_TRACE1_2(msg, param1, param2) +#define M4OSA_TRACE1_3(msg, param1, param2, param3) +#define M4OSA_TRACE1_4(msg, param1, param2, param3, param4) +#define M4OSA_TRACE1_5(msg, param1, param2, param3, param4, param5) + +#endif /*(M4OSA_TRACE_LEVEL >= 1) || (M4OSA_SUPER_TRACE_LEVEL >= 1)*/ + + +#if (M4OSA_TRACE_LEVEL >= 2) || (M4OSA_SUPER_TRACE_LEVEL >= 2) +#define M4OSA_TRACE2_0(msg)\ + M4OSA_TRACEx_0(msg, 2) + +#define M4OSA_TRACE2_1(msg, param1)\ + M4OSA_TRACEx_1(msg, param1, 2) + +#define M4OSA_TRACE2_2(msg, param1, param2)\ + M4OSA_TRACEx_2(msg, param1, param2, 2) + +#define M4OSA_TRACE2_3(msg, param1, param2, param3)\ + M4OSA_TRACEx_3(msg, param1, param2, param3, 2) + +#define M4OSA_TRACE2_4(msg, param1, param2, param3, param4)\ + M4OSA_TRACEx_4(msg, param1, param2, param3, param4, 2) + +#define M4OSA_TRACE2_5(msg, param1, param2, param3, param4, param5)\ + M4OSA_TRACEx_5(msg, param1, param2, param3, param4, param5, 2) + +#else /*(M4OSA_TRACE_LEVEL >= 2) || (M4OSA_SUPER_TRACE_LEVEL >= 2)*/ + +#define M4OSA_TRACE2_0(msg) +#define M4OSA_TRACE2_1(msg, param1) +#define M4OSA_TRACE2_2(msg, param1, param2) +#define M4OSA_TRACE2_3(msg, param1, param2, param3) +#define M4OSA_TRACE2_4(msg, param1, param2, param3, param4) +#define M4OSA_TRACE2_5(msg, param1, param2, param3, param4, param5) +#endif /*(M4OSA_TRACE_LEVEL >= 2) || (M4OSA_SUPER_TRACE_LEVEL >= 2)*/ + + +#if (M4OSA_TRACE_LEVEL >= 3) || (M4OSA_SUPER_TRACE_LEVEL >= 3) +#define M4OSA_TRACE3_0(msg)\ + M4OSA_TRACEx_0(msg, 3) + +#define M4OSA_TRACE3_1(msg, param1)\ + M4OSA_TRACEx_1(msg, param1, 3) + +#define M4OSA_TRACE3_2(msg, param1, param2)\ + M4OSA_TRACEx_2(msg, param1, param2, 3) + +#define M4OSA_TRACE3_3(msg, param1, param2, param3)\ + M4OSA_TRACEx_3(msg, param1, param2, param3, 3) + +#define M4OSA_TRACE3_4(msg, param1, param2, param3, param4)\ + M4OSA_TRACEx_4(msg, param1, param2, param3, param4, 3) + +#define M4OSA_TRACE3_5(msg, param1, param2, param3, param4, param5)\ + M4OSA_TRACEx_5(msg, param1, param2, param3, param4, param5, 3) + +#else /*(M4OSA_TRACE_LEVEL >= 3) || (M4OSA_SUPER_TRACE_LEVEL >= 3)*/ + +#define M4OSA_TRACE3_0(msg) +#define M4OSA_TRACE3_1(msg, param1) +#define M4OSA_TRACE3_2(msg, param1, param2) +#define M4OSA_TRACE3_3(msg, param1, param2, param3) +#define M4OSA_TRACE3_4(msg, param1, param2, param3, param4) +#define M4OSA_TRACE3_5(msg, param1, param2, param3, param4, param5) + +#endif /*(M4OSA_TRACE_LEVEL >= 3) || (M4OSA_SUPER_TRACE_LEVEL >= 3)*/ + + + +#ifdef __cplusplus +} +#endif + +#endif /* _M4OSA_DEBUG_H_ */ + |