7 #include "dispatchtype.h"
8 #include "application.h"
14 #include <QtCore/QStringList>
21 d->engineRequest = request;
34 stat.begin = d->engineRequest->elapsed.nsecsElapsed();
35 d->actions.push_back(stat);
41 for (
auto &stat : d->actions) {
42 if (stat.action == action) {
43 stat.end = d->engineRequest->elapsed.nsecsElapsed();
54 if (d->actions.size() == 0) {
58 QVector<QStringList> table;
59 for (
const auto &stat : d->actions) {
60 table.append({ stat.action,
61 QString::number((stat.end - stat.begin)/1000000000.0,
'f') + QLatin1Char(
's') });
64 ret = Utils::buildTable(table, {
65 QStringLiteral(
"Action"), QStringLiteral(
"Time")
virtual void profileEnd(const QString &action)
virtual QByteArray report()
virtual void profileStart(const QString &action)
Stats(EngineRequest *request)
The Cutelyst namespace holds all public Cutelyst API.