1 /*
2 * Copyright (c) 2013, Texas Instruments Incorporated
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 *
16 * * Neither the name of Texas Instruments Incorporated nor the names of
17 * its contributors may be used to endorse or promote products derived
18 * from this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 *
32 */
33 /*
34 * ======== Trace.h ========
35 */
36 #ifndef ti_sdo_ce_osal_Trace_
37 #define ti_sdo_ce_osal_Trace_
39 #ifdef __cplusplus
40 extern "C" {
41 #endif
43 #include <stdarg.h>
45 /*
46 * ======== Trace_getSize ========
47 */
48 extern UInt32 Trace_getSize(Void);
50 /*
51 * ======== Trace_init ========
52 */
53 extern Void Trace_init(Void);
55 /*
56 * ======== Trace_print ========
57 */
58 extern Void Trace_print(String fmt, ...);
60 /*
61 * ======== Trace_putc ========
62 */
63 extern Void Trace_putc(Char c);
65 /*
66 * ======== Trace_vprint ========
67 */
68 extern Void Trace_vprint(String fmt, va_list va);
70 /*
71 * ======== Trace_fillBuf ========
72 * Fill buf with trace. Return the number of bytes copied. Store the
73 * number of remaining available bytes in 'avail', store the number of
74 * bytes that were lost due to wrapping, in 'lost'.
75 */
76 extern UInt32 Trace_fillBuf(Char *buf, UInt32 size, UInt32 *avail,
77 UInt32 *lost);
79 /*
80 * ======== Trace_outputFxn ========
81 * If the xdc.runtime.System support proxy is set to SysMin, this function
82 * can be configured for the SysMin outputFxn, which is called on
83 * System_flush().
84 */
85 extern Void Trace_outputFxn(Char *buf, UInt size);
87 #ifdef __cplusplus
88 }
89 #endif
91 #endif