11 #include "TStopwatch.h" 29 TimerInfo(
const string &name) : fName(name), fReal(0), fCpu(0){};
39 fReal = sw.RealTime();
44 fReal += sw.RealTime();
63 float Real() {
return fReal; };
64 string &
Name() {
return fName; };
75 for (
unsigned int i = 0;
i < fTIs.size();
i++)
81 fNameToI[name] = fTIs.size();
88 for (
unsigned int i = 0;
i < fTIs.size(); ++
i)
94 r.fNameToI = fNameToI;
95 r.fTIs.resize(fTIs.size());
96 for (
unsigned int i = 0;
i < fTIs.size(); ++
i) {
97 r.fTIs[
i] = fTIs[
i] /
f;
109 for (
unsigned int i = 1;
i < fTIs.size(); ++
i) {
110 cout <<
" | " << setw(fTIs[
i].
Name().size());
118 cout << fTIs[0].Name();
119 for (
unsigned int i = 1;
i < fTIs.size(); ++
i) {
120 cout <<
" | " << fTIs[
i].Name();
125 map<string, int> fNameToI;
126 vector<TimerInfo> fTIs;
137 for (
unsigned int i = 0;
i < fTIIs.size();
i++)
144 for (
unsigned int i = 0;
i < fTIIs.size(); ++
i)
152 for (
unsigned int i = 0;
i < fTIIs.size(); ++
i)
159 r.fTIAll = fTIAll /
f;
161 for (
unsigned int i = 0;
i < fTIIs.size(); ++
i) {
162 r.fTIIs[
i] = fTIIs[
i] /
f;
170 for (
unsigned int i = 1;
i < fTIIs.size(); ++
i)
178 std::ios_base::fmtflags coutFlags = cout.flags();
180 int old_precision = cout.precision(1);
181 cout.setf(ios::fixed);
186 for (
unsigned int i = 0;
i < fTIIs.size(); ++
i) {
187 cout <<
" iter " <<
i <<
" : ";
188 fTIIs[
i].PrintReal();
197 cout.flags(coutFlags);
198 cout.precision(old_precision);
202 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)