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 */ 42