RKH
rkhtrc_out.h
Go to the documentation of this file.
1 /*
2  * --------------------------------------------------------------------------
3  *
4  * Framework RKH
5  * -------------
6  *
7  * State-machine framework for reactive embedded systems
8  *
9  * Copyright (C) 2010 Leandro Francucci.
10  * All rights reserved. Protected by international copyright laws.
11  *
12  *
13  * RKH is free software: you can redistribute it and/or modify it under the
14  * terms of the GNU General Public License as published by the Free Software
15  * Foundation, either version 3 of the License, or (at your option) any
16  * later version.
17  *
18  * RKH is distributed in the hope that it will be useful, but WITHOUT ANY
19  * WARRANTY; without even the implied warranty of MERCHANTABILITY or
20  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
21  * more details.
22  *
23  * You should have received a copy of the GNU General Public License along
24  * with RKH, see copying.txt file.
25  *
26  * Contact information:
27  * RKH web site: http://sourceforge.net/projects/rkh-reactivesys/
28  * e-mail: francuccilea@gmail.com
29  * ---------------------------------------------------------------------------
30  */
31 
39 /* -------------------------- Development history -------------------------- */
40 /*
41  * 2017.04.15 LeFr v2.4.05 Initial version
42  */
43 
44 /* -------------------------------- Authors -------------------------------- */
45 /*
46  * LeFr Leandro Francucci francuccilea@gmail.com
47  */
48 
49 /* --------------------------------- Notes --------------------------------- */
50 /* --------------------------------- Module -------------------------------- */
51 #ifndef __RKHTRC_OUT_H__
52 #define __RKHTRC_OUT_H__
53 
54 /* ----------------------------- Include files ----------------------------- */
55 #include "rkhtrc_define.h"
56 
57 /* ---------------------- External C language linkage ---------------------- */
58 #ifdef __cplusplus
59 extern "C" {
60 #endif
61 
62 /* --------------------------------- Macros -------------------------------- */
104 #if RKH_CFG_TRC_EN == RKH_ENABLED
105  #define RKH_TRC_OPEN() rkh_trc_open()
106 #else
107  #define RKH_TRC_OPEN() (void)0
108 #endif
109 
135 #if RKH_CFG_TRC_EN == RKH_ENABLED
136  #define RKH_TRC_CLOSE() rkh_trc_close()
137 #else
138  #define RKH_TRC_CLOSE() (void)0
139 #endif
140 
188 #if RKH_CFG_TRC_EN == RKH_ENABLED
189  #define RKH_TRC_FLUSH() rkh_trc_flush()
190 #else
191  #define RKH_TRC_FLUSH() (void)0
192 #endif
193 
218 #if RKH_CFG_TRC_EN == RKH_ENABLED
219  #define RKH_TRC_SEND_CFG(ts_hz) \
220  RKH_TR_FWK_TCFG(ts_hz)
221 #else
222  #define RKH_TRC_SEND_CFG(ts_hz) (void)0
223 #endif
224 
225 /* -------------------------------- Constants ------------------------------ */
226 /* ------------------------------- Data types ------------------------------ */
227 /* -------------------------- External variables --------------------------- */
228 /* -------------------------- Function prototypes -------------------------- */
235 void rkh_trc_open(void);
236 
243 void rkh_trc_close(void);
244 
251 void rkh_trc_flush(void);
252 
276 RKH_TS_T rkh_trc_getts(void);
277 
278 /* -------------------- External C language linkage end -------------------- */
279 #ifdef __cplusplus
280 }
281 #endif
282 
283 /* ------------------------------ Module end ------------------------------- */
284 #endif
285 
286 /* ------------------------------ End of file ------------------------------ */
Defines constants and macros which are internally used by RKH trace facility.
void rkh_trc_open(void)
Open the tracing session.
rui32_t RKH_TS_T
Defines the size of trace timestamp.
RKH_TS_T rkh_trc_getts(void)
Retrieves a timestamp to be placed in a trace event.
void rkh_trc_flush(void)
Platform-dependent macro flushing the trace stream.
void rkh_trc_close(void)
Close the tracing session.