#include "profiler.h"
Classes | |
class | enter |
struct | stats |
class | tree_node |
Public Member Functions | |
profile_data_accumulator (void) | |
virtual | ~profile_data_accumulator () |
octave_value | get_flat (void) const |
octave_value | get_hierarchical (void) const |
bool | is_active (void) const |
void | reset (void) |
void | set_active (bool) |
Private Types | |
typedef std::map< std::string, octave_idx_type > | fcn_index_map |
typedef std::vector< stats > | flat_profile |
typedef std::vector< std::string > | function_set |
Private Member Functions | |
profile_data_accumulator (const profile_data_accumulator &) | |
void | add_current_time (void) |
void | enter_function (const std::string &) |
void | exit_function (const std::string &) |
profile_data_accumulator & | operator= (const profile_data_accumulator &) |
double | query_time () const |
Private Attributes | |
tree_node * | active_fcn |
tree_node * | call_tree |
bool | enabled |
fcn_index_map | fcn_index |
function_set | known_functions |
double | last_time |
Definition at line 34 of file profiler.h.
typedef std::map<std::string, octave_idx_type> profile_data_accumulator::fcn_index_map [private] |
Definition at line 146 of file profiler.h.
typedef std::vector<stats> profile_data_accumulator::flat_profile [private] |
Definition at line 94 of file profiler.h.
typedef std::vector<std::string> profile_data_accumulator::function_set [private] |
Definition at line 145 of file profiler.h.
profile_data_accumulator::profile_data_accumulator | ( | void | ) |
Definition at line 193 of file profiler.cc.
profile_data_accumulator::~profile_data_accumulator | ( | ) | [virtual] |
Definition at line 198 of file profiler.cc.
References call_tree.
profile_data_accumulator::profile_data_accumulator | ( | const profile_data_accumulator & | ) | [private] |
void profile_data_accumulator::add_current_time | ( | void | ) | [private] |
Definition at line 397 of file profiler.cc.
References active_fcn, profile_data_accumulator::tree_node::add_time(), call_tree, last_time, and query_time().
Referenced by enter_function(), and exit_function().
void profile_data_accumulator::enter_function | ( | const std::string & | fcn | ) | [private] |
Definition at line 227 of file profiler.cc.
References active_fcn, add_current_time(), call_tree, profile_data_accumulator::tree_node::enter(), fcn_index, is_active(), known_functions, last_time, and query_time().
Referenced by profile_data_accumulator::enter::enter().
void profile_data_accumulator::exit_function | ( | const std::string & | fcn | ) | [private] |
Definition at line 255 of file profiler.cc.
References active_fcn, add_current_time(), call_tree, profile_data_accumulator::tree_node::exit(), fcn_index, is_active(), last_time, and query_time().
Referenced by profile_data_accumulator::enter::~enter().
octave_value profile_data_accumulator::get_flat | ( | void | ) | const |
Definition at line 297 of file profiler.cc.
References octave_map::assign(), profile_data_accumulator::tree_node::build_flat(), call_tree, profile_data_accumulator::stats::function_set_value(), known_functions, and octave_value().
Referenced by DEFUN().
octave_value profile_data_accumulator::get_hierarchical | ( | void | ) | const |
Definition at line 359 of file profiler.cc.
References call_tree, and profile_data_accumulator::tree_node::get_hierarchical().
Referenced by DEFUN().
bool profile_data_accumulator::is_active | ( | void | ) | const [inline] |
Definition at line 64 of file profiler.h.
Referenced by DEFUN(), profile_data_accumulator::enter::enter(), enter_function(), exit_function(), and reset().
profile_data_accumulator& profile_data_accumulator::operator= | ( | const profile_data_accumulator & | ) | [private] |
double profile_data_accumulator::query_time | ( | void | ) | const [private] |
Definition at line 385 of file profiler.cc.
References octave_time::double_value().
Referenced by add_current_time(), enter_function(), and exit_function().
void profile_data_accumulator::reset | ( | void | ) |
Definition at line 276 of file profiler.cc.
References call_tree, error(), fcn_index, is_active(), known_functions, and last_time.
Referenced by DEFUN().
void profile_data_accumulator::set_active | ( | bool | value | ) |
Definition at line 205 of file profiler.cc.
References active_fcn, call_tree, enabled, and last_time.
Referenced by DEFUN().
tree_node* profile_data_accumulator::active_fcn [private] |
Definition at line 154 of file profiler.h.
Referenced by add_current_time(), enter_function(), exit_function(), and set_active().
tree_node* profile_data_accumulator::call_tree [private] |
Definition at line 153 of file profiler.h.
Referenced by add_current_time(), enter_function(), exit_function(), get_flat(), get_hierarchical(), reset(), set_active(), and ~profile_data_accumulator().
bool profile_data_accumulator::enabled [private] |
Definition at line 151 of file profiler.h.
Referenced by set_active().
Definition at line 149 of file profiler.h.
Referenced by enter_function(), exit_function(), and reset().
Definition at line 148 of file profiler.h.
Referenced by enter_function(), get_flat(), and reset().
double profile_data_accumulator::last_time [private] |
Definition at line 157 of file profiler.h.
Referenced by add_current_time(), enter_function(), exit_function(), reset(), and set_active().