11#include <framework/core/ModuleStatistics.h>
12#include <framework/core/ProcessStatistics.h>
35 const std::vector<ModuleStatistics>& modules = {}):
m_type{type},
m_modules{modules} {}
72 boost::python::list
getAll();
78 void csv(
const char* filename);
Keep track of time and memory consumption during processing.
EStatisticCounters
Enum to define all counter types.
@ c_Event
Counting time/calls in event()
Python interface for ProcessStatistics.
std::string getStatisticsStringHTML()
Return string with statistics for all selected modules as html table.
ProcessStatisticsPython getModuleStatistics(ModuleStatistics::EStatisticCounters type, const boost::python::list &modulesPyList)
Get a new statistics object for a different counter/different list of modules.
ProcessStatisticsPython(const ProcessStatisticsPython &)=default
Default copy constructor.
std::vector< ModuleStatistics > m_modules
Which modules to show.
~ProcessStatisticsPython()=default
Default destructor.
ProcessStatisticsPython(ModuleStatistics::EStatisticCounters type=ModuleStatistics::c_Event, const std::vector< ModuleStatistics > &modules={})
Construct a new object to show statistics for a given call type.
void csv(const char *filename)
Write statistics to a csv file.
const ModuleStatistics * get(const std::shared_ptr< Module > &module)
Get statistics for given module.
std::string getStatisticsString()
Return string with statistics for all selected modules.
static void exposePythonAPI()
Define python wrappers to make functionality avaiable in python.
ModuleStatistics::EStatisticCounters m_type
Which counter to show when printing the statistics.
ProcessStatistics * getWrapped()
Get wrapped ProcessStatistics object.
void clear()
Clear collected statistics but keep names of modules.
ProcessStatisticsPython & operator=(const ProcessStatisticsPython &)=default
Default assignment operator.
boost::python::list getAll()
Get statistics for all modules as python list.
const ModuleStatistics * getGlobal()
Get statistics for the framework itself.
Class to collect call statistics for all modules.
Abstract base class for different kinds of events.