blob: 14b431d6104dd7ffab07c3de6f312f5444c5c2ed [file] [log] [blame]
Mike Dodd8cfa7022010-11-17 11:12:26 -08001/**
2 * @file diff_container.h
3 * Container for diffed symbols
4 *
5 * @remark Copyright 2005 OProfile authors
6 * @remark Read the file COPYING
7 *
8 * @author Philippe Elie
9 * @author John Levon
10 */
11
12#ifndef DIFF_CONTAINER_H
13#define DIFF_CONTAINER_H
14
15#include "profile_container.h"
16
17
18/**
19 * Store two profiles for diffing.
20 */
21class diff_container : noncopyable {
22public:
23 /// populate the collection of diffed symbols
24 diff_container(profile_container const & pc1,
25 profile_container const & pc2);
26
27 ~diff_container() {}
28
29 /// return a collection of diffed symbols
30 diff_collection const
31 get_symbols(profile_container::symbol_choice & choice) const;
32
33 /// total count for 'new' profile
34 count_array_t const samples_count() const;
35
36private:
37 /// first profile
38 profile_container const & pc1;
39
40 /// second profile
41 profile_container const & pc2;
42
43 /// samples count for pc1
44 count_array_t total1;
45
46 /// samples count for pc2
47 count_array_t total2;
48};
49
50#endif /* !DIFF_CONTAINER_H */