00001 #ifndef RESMES_H 00002 #define RESMES_H 00003 00004 #include <vector> 00005 #include <iostream> 00006 #include <map> 00007 #include <ctime> 00008 #include <sys/resource.h> 00009 00010 using namespace std; 00011 00016 struct resmes 00017 { 00024 friend ostream &operator<<(ostream &os, const resmes &res); 00025 00029 resmes(); 00030 00035 void set_desc(const string &d); 00036 00042 void start(); 00043 00049 void stop(); 00050 00051 private: 00052 00056 string desc; 00057 00061 timeval start_time; 00062 00066 size_t depth; 00067 00071 vector<double> periods; 00072 }; 00073 00074 extern map<string, resmes> resources; 00075 00076 #endif // RESMES_H