#include <analyzer.h>
Inherited by analyzer_multi_t.
Data Structures | |
struct | analyzer_shard_data_t |
Public Member Functions | |
analyzer_t () | |
virtual | ~analyzer_t () |
virtual bool | operator! () |
virtual std::string | get_error_string () |
analyzer_t (const std::string &trace_path, analysis_tool_t **tools, int num_tools, int worker_count=0) | |
virtual bool | run () |
virtual bool | print_stats () |
analyzer_t (const std::string &trace_path) | |
virtual reader_t & | begin () |
analyzer_t () | |
virtual | ~analyzer_t () |
virtual bool | operator! () |
virtual std::string | get_error_string () |
analyzer_t (const std::string &trace_path, analysis_tool_t **tools, int num_tools, int worker_count=0) | |
virtual bool | run () |
virtual bool | print_stats () |
analyzer_t (const std::string &trace_path) | |
virtual reader_t & | begin () |
An analyzer is the top-level driver of a set of trace analysis tools. It supports two different modes of operation: either it iterates over the trace and calls the process_memref() routine of each tool, or it exposes an iteration interface to external control code.
analyzer_t::analyzer_t | ( | ) |
Usage: errors encountered during a constructor will set a flag that should be queried via operator!(). If operator!() returns true, get_error_string() can be used to try to obtain more information.
|
virtual |
Destructor.
analyzer_t::analyzer_t | ( | const std::string & | trace_path, |
analysis_tool_t ** | tools, | ||
int | num_tools, | ||
int | worker_count = 0 |
||
) |
We have two usage models: one where there are multiple tools and the trace iteration is performed by analyzer_t and supports parallel trace analysis, and another where a single tool controls the iteration.
The default, simpler, multiple-tool-supporting model uses this constructor. The analyzer will reference the tools array passed in during its lifetime: it does not make a copy. The user must free them afterward. The analyzer calls the initialize() function on each tool before use.
analyzer_t::analyzer_t | ( | const std::string & | trace_path | ) |
The alternate usage model exposes the iterator to a single tool. This model does not currently support parallel shard analysis.
analyzer_t::analyzer_t | ( | ) |
Usage: errors encountered during a constructor will set a flag that should be queried via operator!(). If operator!() returns true, get_error_string() can be used to try to obtain more information.
|
virtual |
Destructor.
analyzer_t::analyzer_t | ( | const std::string & | trace_path, |
analysis_tool_t ** | tools, | ||
int | num_tools, | ||
int | worker_count = 0 |
||
) |
We have two usage models: one where there are multiple tools and the trace iteration is performed by analyzer_t and supports parallel trace analysis, and another where a single tool controls the iteration.
The default, simpler, multiple-tool-supporting model uses this constructor. The analyzer will reference the tools array passed in during its lifetime: it does not make a copy. The user must free them afterward. The analyzer calls the initialize() function on each tool before use.
analyzer_t::analyzer_t | ( | const std::string & | trace_path | ) |
The alternate usage model exposes the iterator to a single tool. This model does not currently support parallel shard analysis.
|
virtual |
As the iterator is more heavyweight than regular container iterators we hold it internally and return a reference. Copying will fail to compile as reader_t is virtual, reminding the caller of begin() to use a reference. This usage model supports only a single user of the iterator: the multi-tool model above should be used if multiple tools are involved.
|
virtual |
As the iterator is more heavyweight than regular container iterators we hold it internally and return a reference. Copying will fail to compile as reader_t is virtual, reminding the caller of begin() to use a reference. This usage model supports only a single user of the iterator: the multi-tool model above should be used if multiple tools are involved.
|
virtual |
Returns further information on an error in initializing the analyzer.
|
virtual |
Returns further information on an error in initializing the analyzer.
|
virtual |
Returns whether the analyzer was created successfully.
|
virtual |
Returns whether the analyzer was created successfully.
|
virtual |
Presents the results of the analysis.
|
virtual |
Presents the results of the analysis.
|
virtual |
Launches the analysis process.
|
virtual |
Launches the analysis process.