/** * @file symbol_sort.h * Sorting symbols * * @remark Copyright 2002, 2003 OProfile authors * @remark Read the file COPYING * * @author Philippe Elie * @author John Levon */ #ifndef SYMBOL_SORT_H #define SYMBOL_SORT_H #include "symbol.h" #include <vector> #include <string> struct sort_options { enum sort_order { // order give sort order if caller doesn't specify one first, sample = first, image, app_name, symbol, debug, vma, last }; sort_options() {} void add_sort_option(std::string const & name); void add_sort_option(sort_order order); /** * Sort the given container by the given criteria. */ void sort(symbol_collection & syms, bool reverse_sort, bool long_filenames) const; /** * Sort the given container by the given criteria. */ void sort(diff_collection & syms, bool reverse_sort, bool long_filenames) const; std::vector<sort_order> options; }; #endif // SYMBOL_SORT_H