linux-user: save auxv length
[qemu.git] / trace / control.h
1 /*
2 * Interface for configuring and controlling the state of tracing events.
3 *
4 * Copyright (C) 2011 LluĂ­s Vilanova <vilanova@ac.upc.edu>
5 *
6 * This work is licensed under the terms of the GNU GPL, version 2. See
7 * the COPYING file in the top-level directory.
8 */
9
10 #ifndef TRACE_CONTROL_H
11 #define TRACE_CONTROL_H
12
13 #include "qemu-common.h"
14
15
16 /** Print the state of all events. */
17 void trace_print_events(FILE *stream, fprintf_function stream_printf);
18 /** Set the state of an event.
19 *
20 * @return Whether the state changed.
21 */
22 bool trace_event_set_state(const char *name, bool state);
23
24
25 /** Initialize the tracing backend.
26 *
27 * @events Name of file with events to be enabled at startup; may be NULL.
28 * Corresponds to commandline option "-trace events=...".
29 * @file Name of trace output file; may be NULL.
30 * Corresponds to commandline option "-trace file=...".
31 * @return Whether the backend could be successfully initialized.
32 */
33 bool trace_backend_init(const char *events, const char *file);
34
35 /** Generic function to initialize the state of events.
36 *
37 * @fname Name of file with events to enable; may be NULL.
38 */
39 void trace_backend_init_events(const char *fname);
40
41 #endif /* TRACE_CONTROL_H */