Scroom 0.14-48-ga0fee447
Loading...
Searching...
No Matches
Scroom::Utils::Counter Class Reference

#include <utilities.hh>

Collaboration diagram for Scroom::Utils::Counter:
Collaboration graph

Public Member Functions

void registerCount (const Count::Ptr &count)
 
void unregisterCount (const Count::Ptr &count)
 
void dump ()
 
std::list< Count::PtrgetCounts ()
 

Static Public Member Functions

static Counterinstance ()
 

Private Member Functions

 Counter ()
 

Private Attributes

std::list< Count::Ptrcounts
 
boost::mutex mut
 
Scroom::Logger logger
 

Constructor & Destructor Documentation

◆ Counter()

Counter::Counter ( )
private
55{ g_timeout_add_seconds(10, timedDumpCounts, this); }
gboolean timedDumpCounts(gpointer data)
Definition counter.cc:26

Referenced by instance().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Function Documentation

◆ dump()

void Counter::dump ( )
70{
71 boost::unique_lock<boost::mutex> const lock(mut);
72 std::stringstream out;
73
74 out << counts.size();
75 for(Count::Ptr const& count: counts)
76 {
77 out << ", " << count->name << ", " << count->count;
78 }
79 logger->trace("{}", out.str());
80}
std::shared_ptr< Count > Ptr
Definition utilities.hh:134
std::list< Count::Ptr > counts
Definition utilities.hh:167
Scroom::Logger logger
Definition utilities.hh:169
boost::mutex mut
Definition utilities.hh:168
uint8_t out[blobSize]
Definition compression-tests.cc:35
const size_t count
Definition pageprovider-tests.cc:21

Referenced by Scroom::Utils::dumpCounts().

Here is the caller graph for this function:

◆ getCounts()

std::list< Count::Ptr > Counter::getCounts ( )
83{
84 boost::unique_lock<boost::mutex> const lock(mut);
85 return counts;
86}

◆ instance()

Counter * Counter::instance ( )
static
50{
51 static auto* me = new Counter();
52 return me;
53}
Counter()
Definition counter.cc:55

Referenced by Scroom::Utils::Count::create(), and Scroom::Utils::dumpCounts().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ registerCount()

void Counter::registerCount ( const Count::Ptr count)
58{
59 boost::unique_lock<boost::mutex> const lock(mut);
60 counts.push_back(count);
61}

Referenced by Scroom::Utils::Count::create().

Here is the caller graph for this function:

◆ unregisterCount()

void Counter::unregisterCount ( const Count::Ptr count)
64{
65 boost::unique_lock<boost::mutex> const lock(mut);
66 counts.remove(count);
67}

Member Data Documentation

◆ counts

std::list<Count::Ptr> Scroom::Utils::Counter::counts
private

◆ logger

Scroom::Logger Scroom::Utils::Counter::logger
private

Referenced by dump().

◆ mut

boost::mutex Scroom::Utils::Counter::mut
private

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