00001 00013 #ifndef COMMON_OPTION_H 00014 #define COMMON_OPTION_H 00015 00016 #include <vector> 00017 #include <list> 00018 00019 #include "arrange_profiles.h" 00020 #include "demangle_symbol.h" 00021 00022 namespace options { 00023 extern bool verbose; 00024 extern double threshold; 00025 extern std::string threshold_opt; 00026 extern std::string command_options; 00027 extern std::vector<std::string> image_path; 00028 extern std::string root_path; 00029 00030 struct spec { 00031 std::list<std::string> common; 00032 std::list<std::string> first; 00033 std::list<std::string> second; 00034 }; 00035 } 00036 00041 typedef int (*pp_fct_run_t)(options::spec const & spec); 00042 00051 int run_pp_tool(int argc, char const * argv[], pp_fct_run_t fct); 00052 00059 demangle_type handle_demangle_option(std::string const & option); 00060 00069 merge_option handle_merge_option(std::vector<std::string> const & mergespec, 00070 bool allow_lib, bool exclude_dependent); 00071 00075 bool was_session_dir_supplied(void); 00076 00077 #endif /* !COMMON_OPTION_H */