23 #include "TStopwatch.h" 41 TimerInfo(
const string &name) : fName(name), fReal(0), fCpu(0){};
51 fReal = sw.RealTime();
56 fReal += sw.RealTime();
75 float Real() {
return fReal; };
76 string &
Name() {
return fName; };
87 for (
unsigned int i = 0;
i < fTIs.size();
i++)
93 fNameToI[name] = fTIs.size();
100 for (
unsigned int i = 0;
i < fTIs.size(); ++
i)
106 r.fNameToI = fNameToI;
107 r.fTIs.resize(fTIs.size());
108 for (
unsigned int i = 0;
i < fTIs.size(); ++
i) {
109 r.fTIs[
i] = fTIs[
i] /
f;
121 for (
unsigned int i = 1;
i < fTIs.size(); ++
i) {
122 cout <<
" | " << setw(fTIs[
i].
Name().size());
130 cout << fTIs[0].Name();
131 for (
unsigned int i = 1;
i < fTIs.size(); ++
i) {
132 cout <<
" | " << fTIs[
i].Name();
137 map<string, int> fNameToI;
138 vector<TimerInfo> fTIs;
149 for (
unsigned int i = 0;
i < fTIIs.size();
i++)
156 for (
unsigned int i = 0;
i < fTIIs.size(); ++
i)
164 for (
unsigned int i = 0;
i < fTIIs.size(); ++
i)
171 r.fTIAll = fTIAll /
f;
173 for (
unsigned int i = 0;
i < fTIIs.size(); ++
i) {
174 r.fTIIs[
i] = fTIIs[
i] /
f;
182 for (
unsigned int i = 1;
i < fTIIs.size(); ++
i)
190 std::ios_base::fmtflags coutFlags = cout.flags();
192 int old_precision = cout.precision(1);
193 cout.setf(ios::fixed);
198 for (
unsigned int i = 0;
i < fTIIs.size(); ++
i) {
199 cout <<
" iter " <<
i <<
" : ";
200 fTIIs[
i].PrintReal();
209 cout.flags(coutFlags);
210 cout.precision(old_precision);
214 vector<L1CATFIterTimerInfo> fTIIs;
L1CATFIterTimerInfo & GetTimerAll()
TimerInfo operator/(const float f) const
L1CATFIterTimerInfo & GetAllInfo()
TimerInfo(const string &name)
TimerInfo & operator[](string name)
void operator=(TStopwatch &sw)
L1CATFTimerInfo operator/(float f)
L1CATFIterTimerInfo & operator[](int i)
L1CATFIterTimerInfo operator/(float f)
void operator+=(TStopwatch &sw)
void operator+=(const TimerInfo &t)
TimerInfo & operator[](int i)
void operator+=(L1CATFTimerInfo &t)
void operator+=(L1CATFIterTimerInfo &t)