stream.h 941 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. #ifndef __PERF_STREAM_H
  3. #define __PERF_STREAM_H
  4. struct callchain_node;
  5. struct evlist;
  6. struct evsel;
  7. struct stream {
  8. struct callchain_node *cnode;
  9. struct callchain_node *pair_cnode;
  10. };
  11. struct evsel_streams {
  12. struct stream *streams;
  13. const struct evsel *evsel;
  14. int nr_streams_max;
  15. int nr_streams;
  16. u64 streams_hits;
  17. };
  18. struct evlist_streams {
  19. struct evsel_streams *ev_streams;
  20. int nr_evsel;
  21. };
  22. void evlist_streams__delete(struct evlist_streams *els);
  23. struct evlist_streams *evlist__create_streams(struct evlist *evlist,
  24. int nr_streams_max);
  25. struct evsel_streams *evsel_streams__entry(struct evlist_streams *els,
  26. const struct evsel *evsel);
  27. void evsel_streams__match(struct evsel_streams *es_base,
  28. struct evsel_streams *es_pair);
  29. void evsel_streams__report(struct evsel_streams *es_base,
  30. struct evsel_streams *es_pair);
  31. #endif /* __PERF_STREAM_H */