00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00024
00025 #ifndef QVCPUSTATCONTROLER_H
00026 #define QVCPUSTATCONTROLER_H
00027 #include <qvblockprogramming/qvcpustat.h>
00028 #include <QTime>
00029
00030 #ifndef DOXYGEN_IGNORE_THIS
00031 class QVStatControler : public QObject
00032 {
00033 Q_OBJECT
00034 public:
00035 QVStatControler(): QObject(), cpustats(), lastTime(), lastFlagPos(-1), totalRounds(0), rounds(0), freq(0), blockName()
00036 { lastTime.start(); }
00037 void step();
00038 void setFlag(QString name);
00039 QVStat value() const { return cpustats; }
00040 void setFreq(int frequency);
00041 void setBlockName(QString name) { blockName = name; }
00042 void printStats();
00043
00044 private:
00045 QVStat cpustats;
00046 QTime lastTime;
00047 int lastFlagPos;
00048
00049
00050 int totalRounds, rounds, freq;
00051 QList<double> accumulated, totalAccumulated;
00052 QString blockName;
00053
00054 };
00055 #endif
00056 #endif