klee
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
klee::StatisticManager Class Reference

#include <Statistics.h>

Collaboration diagram for klee::StatisticManager:

Public Member Functions

 StatisticManager ()
 
 ~StatisticManager ()
 
void useIndexedStats (unsigned totalIndices)
 
StatisticRecordgetContext ()
 
void setContext (StatisticRecord *sr)
 
void setIndex (unsigned i)
 
unsigned getIndex ()
 
unsigned getNumStatistics ()
 
StatisticgetStatistic (unsigned i)
 
void registerStatistic (Statistic &s)
 
void incrementStatistic (Statistic &s, uint64_t addend)
 
uint64_t getValue (const Statistic &s) const
 
void incrementIndexedValue (const Statistic &s, unsigned index, uint64_t addend) const
 
uint64_t getIndexedValue (const Statistic &s, unsigned index) const
 
void setIndexedValue (const Statistic &s, unsigned index, uint64_t value)
 
int getStatisticID (const std::string &name) const
 
StatisticgetStatisticByName (const std::string &name) const
 

Private Attributes

bool enabled
 
std::vector< Statistic * > stats
 
uint64_t * globalStats
 
uint64_t * indexedStats
 
StatisticRecordcontextStats
 
unsigned index
 

Detailed Description

Definition at line 40 of file Statistics.h.

Constructor & Destructor Documentation

StatisticManager::StatisticManager ( )

Definition at line 16 of file Statistics.cpp.

StatisticManager::~StatisticManager ( )

Definition at line 24 of file Statistics.cpp.

References globalStats, and indexedStats.

Member Function Documentation

StatisticRecord * klee::StatisticManager::getContext ( )
inline

Definition at line 88 of file Statistics.h.

References contextStats.

unsigned klee::StatisticManager::getIndex ( )
inline

Definition at line 59 of file Statistics.h.

References index.

Referenced by klee::Executor::fork(), and klee::StatsTracker::markBranchVisited().

Here is the caller graph for this function:

uint64_t klee::StatisticManager::getIndexedValue ( const Statistic s,
unsigned  index 
) const
inline
unsigned klee::StatisticManager::getNumStatistics ( )
inline
Statistic& klee::StatisticManager::getStatistic ( unsigned  i)
inline

Definition at line 61 of file Statistics.h.

References stats.

Referenced by klee::StatsTracker::writeIStats().

Here is the caller graph for this function:

Statistic * StatisticManager::getStatisticByName ( const std::string &  name) const

Definition at line 50 of file Statistics.cpp.

References stats.

Referenced by EvaluateInputAST(), main(), and QueryLoggingSolver::startQuery().

Here is the caller graph for this function:

int StatisticManager::getStatisticID ( const std::string &  name) const

Definition at line 43 of file Statistics.cpp.

References stats.

Referenced by klee::StatsTracker::writeIStats().

Here is the caller graph for this function:

uint64_t klee::StatisticManager::getValue ( const Statistic s) const
inline

Definition at line 132 of file Statistics.h.

References globalStats, and klee::Statistic::id.

Referenced by klee::Statistic::getValue().

Here is the caller graph for this function:

void klee::StatisticManager::incrementIndexedValue ( const Statistic s,
unsigned  index,
uint64_t  addend 
) const
inline

Definition at line 136 of file Statistics.h.

References klee::Statistic::id, indexedStats, and stats.

Referenced by klee::StatsTracker::updateStateStatistics().

Here is the caller graph for this function:

void klee::StatisticManager::incrementStatistic ( Statistic s,
uint64_t  addend 
)
inline

Definition at line 76 of file Statistics.h.

References contextStats, klee::StatisticRecord::data, enabled, globalStats, klee::Statistic::id, index, indexedStats, and stats.

Referenced by klee::Statistic::operator+=().

Here is the caller graph for this function:

void StatisticManager::registerStatistic ( Statistic s)

Definition at line 35 of file Statistics.cpp.

References globalStats, klee::Statistic::id, and stats.

Referenced by klee::Statistic::Statistic().

Here is the caller graph for this function:

void klee::StatisticManager::setContext ( StatisticRecord sr)
inline

Definition at line 91 of file Statistics.h.

References contextStats.

Referenced by klee::StatsTracker::stepInstruction().

Here is the caller graph for this function:

void klee::StatisticManager::setIndex ( unsigned  i)
inline

Definition at line 58 of file Statistics.h.

References index.

Referenced by klee::StatsTracker::StatsTracker(), and klee::StatsTracker::stepInstruction().

Here is the caller graph for this function:

void klee::StatisticManager::setIndexedValue ( const Statistic s,
unsigned  index,
uint64_t  value 
)
inline

Definition at line 147 of file Statistics.h.

References klee::Statistic::id, indexedStats, and stats.

Referenced by klee::StatsTracker::computeReachableUncovered().

Here is the caller graph for this function:

void StatisticManager::useIndexedStats ( unsigned  totalIndices)

Definition at line 29 of file Statistics.cpp.

References indexedStats, and stats.

Referenced by klee::StatsTracker::StatsTracker().

Here is the caller graph for this function:

Member Data Documentation

StatisticRecord* klee::StatisticManager::contextStats
private

Definition at line 46 of file Statistics.h.

Referenced by getContext(), incrementStatistic(), and setContext().

bool klee::StatisticManager::enabled
private

Definition at line 42 of file Statistics.h.

Referenced by incrementStatistic().

uint64_t* klee::StatisticManager::globalStats
private

Definition at line 44 of file Statistics.h.

Referenced by getValue(), incrementStatistic(), registerStatistic(), and ~StatisticManager().

unsigned klee::StatisticManager::index
private

Definition at line 47 of file Statistics.h.

Referenced by getIndex(), incrementStatistic(), and setIndex().

uint64_t* klee::StatisticManager::indexedStats
private

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