18cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd/** 28cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd * @file opreport_options.h 38cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd * Options for opreport tool 48cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd * 58cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd * @remark Copyright 2003 OProfile authors 68cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd * @remark Read the file COPYING 78cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd * 88cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd * @author John Levon 98cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd * @author Philippe Elie 108cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd */ 118cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd 128cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd#ifndef OPREPORT_OPTIONS_H 138cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd#define OPREPORT_OPTIONS_H 148cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd 158cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd#include <string> 168cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd#include <vector> 178cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd#include <iosfwd> 188cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd 198cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd#include "common_option.h" 208cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd#include "string_filter.h" 218cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd#include "symbol_sort.h" 228cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd 238cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Doddclass profile_classes; 248cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Doddclass merge_option; 258cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd 268cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Doddnamespace options { 278cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern demangle_type demangle; 288cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern bool symbols; 298cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern bool callgraph; 308cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern bool debug_info; 318cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern bool details; 328cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern bool reverse_sort; 338cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern bool exclude_dependent; 348cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern sort_options sort_by; 358cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern merge_option merge_by; 368cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern bool global_percent; 378cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern bool long_filenames; 388cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern bool show_address; 398cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern string_filter symbol_filter; 408cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern bool show_header; 418cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern bool accumulated; 428cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern bool xml; 438cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd extern std::string xml_options; 448cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd} 458cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd 468cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd/// All the chosen sample files. 478cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Doddextern profile_classes classes; 488cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Doddextern profile_classes classes2; 498cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd 508cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd/** 518cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd * handle_options - process command line 528cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd * @param spec profile specification 538cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd * 548cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd * Process the spec, fatally complaining on error. 558cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd */ 568cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Doddvoid handle_options(options::spec const & spec); 578cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd 588cfa702f803c5ef6a2b062a489a1b2cf66b45b5eMike Dodd#endif // OPREPORT_OPTIONS_H 59