summaryrefslogtreecommitdiff
path: root/src/stats.h
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2013-04-06 13:14:41 +0200
committerPaul Buetow <paul@buetow.org>2013-04-06 13:14:41 +0200
commitae4e87df37ed8904de92c7cf2f3a11128cda2a21 (patch)
tree5333f2930165cc6e4083ce15154799626ddb3d03 /src/stats.h
parent9cd3ccffd5372dfde3af478e3f832f18db4be3f1 (diff)
tagging ychat-0.7.4.1ychat-0.7.4.1
Diffstat (limited to 'src/stats.h')
-rw-r--r--src/stats.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/stats.h b/src/stats.h
new file mode 100644
index 0000000..608232e
--- /dev/null
+++ b/src/stats.h
@@ -0,0 +1,48 @@
+#include "incl.h"
+
+#ifndef STATS_H
+#define STATS_H
+
+#include "tool/tool.h"
+
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/time.h>
+#include <sys/resource.h>
+
+using namespace std;
+
+class stats
+{
+private:
+ // Specifies the max. amount of elements in vec_rusage_history;
+ int i_rusage_vec_size;
+ // History of the last i_rusage_vec_size rusage values.
+ vector< map<string,long> > vec_rusage_history;
+ pthread_mutex_t mut_vec_rusage;
+
+ int i_num_rooms; //<<
+ pthread_mutex_t mut_num_rooms; //<<
+
+ void set_rusage_vec_size( int i_rusage_vec_size );
+
+public:
+ stats( );
+ ~stats( );
+
+ //<<*
+ int get_num_rooms();
+ void increment_num_rooms();
+ void decrement_num_rooms();
+ //*>>
+ void update_rusage_history();
+ string get_rusage_history( string s_type, string s_seperator );
+ long get_ru_maxrss();
+ //<<*
+#ifdef NCURSES
+ void print_num_rooms();
+#endif
+ //*>>
+};
+
+#endif