/* * Copyright 2018 gtalent2@gmail.com * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #pragma once #include #include #include #include struct Field { QString name; QString type; QString value; QVector fields; Field(QJsonObject field = {}); }; struct Frame { QString arch; QString file; int line = 0; QVector fields; Frame(QJsonObject frame = {}); }; struct TraceEvent { QString channel; QString logMsg; QVector frames; TraceEvent(QJsonObject tp = {}); QString file() const; int line() const; }; struct ProcessData: public QObject { Q_OBJECT public: QString cmd; QVector traceEvents; signals: /** * Emitted whenever a new TraceEvent is added. */ void traceEvent(const TraceEvent&); };