00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061 #ifndef ti_xdais_TRACE_
00062 #define ti_xdais_TRACE_
00063
00064 #ifdef __cplusplus
00065 extern "C" {
00066 #endif
00067
00070
00071 #include <ti/xdais/xdas.h>
00072 #include <ti/xdais/ialg.h>
00073
00075 #ifndef XDAIS_TRACE_OUT
00076 #define XDAIS_TRACE_OUT 0
00077 #endif
00078
00079 #ifndef XDAIS_TRACE_ASSERT
00080 #define XDAIS_TRACE_ASSERT 0
00081 #endif
00082
00085
00086
00087
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00112 #define TRACE_ENTER ((UInt8)0x01)
00113 #define TRACE_1CLASS ((UInt8)0x02)
00114 #define TRACE_2CLASS ((UInt8)0x04)
00115 #define TRACE_3CLASS ((UInt8)0x08)
00116 #define TRACE_4CLASS ((UInt8)0x10)
00122 #define TRACE_5CLASS ((UInt8)0x20)
00123
00128 #define TRACE_6CLASS ((UInt8)0x40)
00129
00134 #define TRACE_7CLASS ((UInt8)0x80)
00135
00139 typedef XDAS_Int32 (* XDAIS_TRACE_AssertFxn)(IALG_Handle alg,
00140 XDAS_Int32 classId, String format, String arg1, XDAS_Int32 arg2);
00141
00145 typedef XDAS_Int32 (* XDAIS_TRACE_PrintFxn)(IALG_Handle alg, XDAS_Int32 classId,
00146 String format, ...);
00147
00148
00149
00171 #if (XDAIS_TRACE_OUT == 1)
00172 extern XDAIS_TRACE_PrintFxn XDAIS_TRACE_print;
00173 #endif
00174
00195 #if (XDAIS_TRACE_ASSERT == 1)
00196 extern XDAIS_TRACE_AssertFxn XDAIS_TRACE_assert;
00197 #endif
00198
00199 #if XDAIS_TRACE_ASSERT == 0
00200
00202 #define TRACE_assert( alg, classId, expr )
00203
00205 #else
00206
00207
00208 #define TRACE_assert(alg, classId, expr) \
00209 (!(expr) ? \
00210 XDAIS_TRACE_assert((alg), (classId), "assertion violation: %s, \
00211 line %d\n", FILE__, __LINE__), NULL : NULL)
00212
00213 #endif
00214
00215
00216 #if XDAIS_TRACE_OUT == 0
00217
00220 #define TRACE_0print( alg, classId, format )
00221 #define TRACE_1print( alg, classId, format, arg1 )
00222 #define TRACE_2print( alg, classId, format, arg1, arg2 )
00223 #define TRACE_3print( alg, classId, format, arg1, arg2, arg3 )
00224 #define TRACE_4print( alg, classId, format, arg1, arg2, arg3, arg4 )
00225 #define TRACE_5print( alg, classId, format, arg1, arg2, arg3, arg4, arg5 )
00226 #define TRACE_6print( alg, classId, format, arg1, arg2, arg3, arg4, arg5, arg6 )
00227
00230 #else
00231
00235 #define TRACE_0print(alg, classId, format) \
00236 XDAIS_TRACE_print((alg), (classId), (format))
00237
00241 #define TRACE_1print(alg, classId, format, arg1) \
00242 XDAIS_TRACE_print((alg), (classId), (format), (arg1))
00243
00247 #define TRACE_2print(alg, classId, format, arg1, arg2) \
00248 XDAIS_TRACE_print((alg), (classId), (format), (arg1), (arg2))
00249
00253 #define TRACE_3print(alg, classId, format, arg1, arg2, arg3) \
00254 XDAIS_TRACE_print((alg), (classId), (format), (arg1), (arg2), (arg3))
00255
00259 #define TRACE_4print(alg, classId, format, arg1, arg2, arg3, arg4) \
00260 XDAIS_TRACE_print((alg), (classId), (format), (arg1), (arg2), (arg3), \
00261 (arg4))
00262
00266 #define TRACE_5print(alg, classId, format, arg1, arg2, arg3, arg4, arg5) \
00267 XDAIS_TRACE_print((alg), (classId), (format), (arg1), (arg2), (arg3), \
00268 (arg4), (arg5))
00269
00273 #define TRACE_6print(alg, classId, format, arg1, arg2, arg3, arg4, arg5, arg6)\
00274 XDAIS_TRACE_print((alg), (classId), (format), (arg1), \
00275 (arg2), (arg3), (arg4), (arg5), (arg6))
00276
00277
00278
00279 #endif
00280
00282
00283 #ifdef __cplusplus
00284 }
00285 #endif
00286
00287 #endif
00288
00289
00290
00291
00292