GNU Octave  4.0.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
profile_data_accumulator Class Reference

#include "profiler.h"

Collaboration diagram for profile_data_accumulator:
Collaboration graph
[legend]

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< statsflat_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_accumulatoroperator= (const profile_data_accumulator &)
 
double query_time () const
 

Private Attributes

tree_nodeactive_fcn
 
tree_nodecall_tree
 
bool enabled
 
fcn_index_map fcn_index
 
function_set known_functions
 
double last_time
 

Detailed Description

Definition at line 35 of file profiler.h.

Member Typedef Documentation

typedef std::map<std::string, octave_idx_type> profile_data_accumulator::fcn_index_map
private

Definition at line 170 of file profiler.h.

typedef std::vector<stats> profile_data_accumulator::flat_profile
private

Definition at line 118 of file profiler.h.

typedef std::vector<std::string> profile_data_accumulator::function_set
private

Definition at line 169 of file profiler.h.

Constructor & Destructor Documentation

profile_data_accumulator::profile_data_accumulator ( void  )

Definition at line 177 of file profiler.cc.

profile_data_accumulator::~profile_data_accumulator ( )
virtual

Definition at line 182 of file profiler.cc.

References call_tree.

profile_data_accumulator::profile_data_accumulator ( const profile_data_accumulator )
private

Member Function Documentation

void profile_data_accumulator::add_current_time ( void  )
private
void profile_data_accumulator::enter_function ( const std::string &  fcn)
private
void profile_data_accumulator::exit_function ( const std::string &  fcn)
private
octave_value profile_data_accumulator::get_flat ( void  ) const
octave_value profile_data_accumulator::get_hierarchical ( void  ) const

Definition at line 348 of file profiler.cc.

References call_tree, and profile_data_accumulator::tree_node::get_hierarchical().

Referenced by F__profiler_data__().

bool profile_data_accumulator::is_active ( void  ) const
inline
profile_data_accumulator& profile_data_accumulator::operator= ( const profile_data_accumulator )
private
double profile_data_accumulator::query_time ( void  ) const
private

Definition at line 374 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 265 of file profiler.cc.

References call_tree, error(), fcn_index, is_active(), known_functions, and last_time.

Referenced by F__profiler_reset__().

void profile_data_accumulator::set_active ( bool  value)

Definition at line 189 of file profiler.cc.

References active_fcn, call_tree, enabled, and last_time.

Referenced by F__profiler_enable__().

Member Data Documentation

tree_node* profile_data_accumulator::active_fcn
private

Definition at line 178 of file profiler.h.

Referenced by add_current_time(), enter_function(), exit_function(), and set_active().

tree_node* profile_data_accumulator::call_tree
private
bool profile_data_accumulator::enabled
private

Definition at line 175 of file profiler.h.

Referenced by set_active().

fcn_index_map profile_data_accumulator::fcn_index
private

Definition at line 173 of file profiler.h.

Referenced by enter_function(), exit_function(), and reset().

function_set profile_data_accumulator::known_functions
private

Definition at line 172 of file profiler.h.

Referenced by enter_function(), get_flat(), and reset().

double profile_data_accumulator::last_time
private

Definition at line 181 of file profiler.h.

Referenced by add_current_time(), enter_function(), exit_function(), reset(), and set_active().


The documentation for this class was generated from the following files: