oprof_start_config.h revision 8cfa702f803c5ef6a2b062a489a1b2cf66b45b5e
1/**
2 * @file oprof_start_config.h
3 * GUI startup config management
4 *
5 * @remark Copyright 2002 OProfile authors
6 * @remark Read the file COPYING
7 *
8 * @author John Levon
9 * @author Philippe Elie
10 */
11
12#ifndef OPROF_START_CONFIG_H
13#define OPROF_START_CONFIG_H
14
15#include <sys/types.h>
16#include <string>
17#include <iosfwd>
18
19/// Store the setup of one event
20struct event_setting {
21
22	event_setting();
23
24	uint count;
25	uint umask;
26	bool os_ring_count;
27	bool user_ring_count;
28};
29
30/**
31 * Store the general  configuration of the profiler.
32 * There is no save(), instead opcontrol --setup must be
33 * called. This uses opcontrol's daemonrc file.
34 */
35struct config_setting {
36	config_setting();
37
38	void load(std::istream & in);
39
40	uint buffer_size;
41	uint note_table_size;
42	std::string kernel_filename;
43	bool no_kernel;
44	bool verbose;
45	bool separate_lib;
46	bool separate_kernel;
47	bool separate_cpu;
48	bool separate_thread;
49	uint callgraph_depth;
50	uint buffer_watershed;
51	uint cpu_buffer_size;
52};
53
54std::istream & operator>>(std::istream & in, config_setting & object);
55
56#endif // ! OPROF_START_CONFIG_H
57