blob: 16bbfcba8ca8bd32938dc6aa322c8fa541a4df93 [file] [log] [blame]
Arnaldo Carvalho de Melo361c99a2011-01-11 20:56:53 -02001#ifndef __PERF_EVLIST_H
2#define __PERF_EVLIST_H 1
3
4#include <linux/list.h>
5
Arnaldo Carvalho de Melo5c581042011-01-11 22:30:02 -02006struct pollfd;
7
Arnaldo Carvalho de Melo361c99a2011-01-11 20:56:53 -02008struct perf_evlist {
9 struct list_head entries;
10 int nr_entries;
Arnaldo Carvalho de Melo5c581042011-01-11 22:30:02 -020011 int nr_fds;
12 struct pollfd *pollfd;
Arnaldo Carvalho de Melo361c99a2011-01-11 20:56:53 -020013};
14
15struct perf_evsel;
16
17struct perf_evlist *perf_evlist__new(void);
18void perf_evlist__delete(struct perf_evlist *evlist);
19
20void perf_evlist__add(struct perf_evlist *evlist, struct perf_evsel *entry);
21int perf_evlist__add_default(struct perf_evlist *evlist);
22
Arnaldo Carvalho de Melo5c581042011-01-11 22:30:02 -020023int perf_evlist__alloc_pollfd(struct perf_evlist *evlist, int ncpus, int nthreads);
Arnaldo Carvalho de Melo70082dd2011-01-12 17:03:24 -020024void perf_evlist__add_pollfd(struct perf_evlist *evlist, int fd);
Arnaldo Carvalho de Melo5c581042011-01-11 22:30:02 -020025
Arnaldo Carvalho de Melo361c99a2011-01-11 20:56:53 -020026#endif /* __PERF_EVLIST_H */