00001 /** 00002 * @file diff_container.h 00003 * Container for diffed symbols 00004 * 00005 * @remark Copyright 2005 OProfile authors 00006 * @remark Read the file COPYING 00007 * 00008 * @author Philippe Elie 00009 * @author John Levon 00010 */ 00011 00012 #ifndef DIFF_CONTAINER_H 00013 #define DIFF_CONTAINER_H 00014 00015 #include "profile_container.h" 00016 00017 00018 /** 00019 * Store two profiles for diffing. 00020 */ 00021 class diff_container : noncopyable { 00022 public: 00023 /// populate the collection of diffed symbols 00024 diff_container(profile_container const & pc1, 00025 profile_container const & pc2); 00026 00027 ~diff_container() {} 00028 00029 /// return a collection of diffed symbols 00030 diff_collection const 00031 get_symbols(profile_container::symbol_choice & choice) const; 00032 00033 /// total count for 'new' profile 00034 count_array_t const samples_count() const; 00035 00036 private: 00037 /// first profile 00038 profile_container const & pc1; 00039 00040 /// second profile 00041 profile_container const & pc2; 00042 00043 /// samples count for pc1 00044 count_array_t total1; 00045 00046 /// samples count for pc2 00047 count_array_t total2; 00048 }; 00049 00050 #endif /* !DIFF_CONTAINER_H */
1.6.1