summaryrefslogtreecommitdiffstats
path: root/src/corelib/tracing/qctf_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/corelib/tracing/qctf_p.h')
-rw-r--r--src/corelib/tracing/qctf_p.h21
1 files changed, 17 insertions, 4 deletions
diff --git a/src/corelib/tracing/qctf_p.h b/src/corelib/tracing/qctf_p.h
index 10cec632f1..70d00d018c 100644
--- a/src/corelib/tracing/qctf_p.h
+++ b/src/corelib/tracing/qctf_p.h
@@ -17,8 +17,7 @@
//
#include <qtcoreexports.h>
-
-QT_REQUIRE_CONFIG(library);
+#include <qobject.h>
QT_BEGIN_NAMESPACE
@@ -181,9 +180,9 @@ inline QByteArray toByteArrayFromFlags(QFlags<T> value)
} // trace
#define _DEFINE_EVENT(provider, event, metadata, size, varSize) \
- static QCtfTracePointEvent _ctf_ ## event = QCtfTracePointEvent(_ctf_provider_ ## provider, QStringLiteral(QT_STRINGIFY(event)), QStringLiteral(metadata), size, varSize);
+ static QCtfTracePointEvent _ctf_ ## event = QCtfTracePointEvent(_ctf_provider_ ## provider, QStringLiteral(QT_STRINGIFY(event)), metadata, size, varSize);
#define _DEFINE_METADATA(provider, name, metadata) \
- static QCtfTraceMetadata _ctf_metadata_ ## name = QCtfTraceMetadata(_ctf_provider_ ## provider, QStringLiteral(QT_STRINGIFY(name)), QStringLiteral(metadata));
+ static QCtfTraceMetadata _ctf_metadata_ ## name = QCtfTraceMetadata(_ctf_provider_ ## provider, QStringLiteral(QT_STRINGIFY(name)), metadata);
#define _DEFINE_TRACEPOINT_PROVIDER(provider) \
static QCtfTracePointProvider _ctf_provider_ ## provider = QCtfTracePointProvider(QStringLiteral(QT_STRINGIFY(provider)));
@@ -220,6 +219,20 @@ inline QByteArray toByteArrayFromFlags(QFlags<T> value)
#endif
+class Q_CORE_EXPORT QCtfLib : public QObject
+{
+ Q_OBJECT
+ Q_DISABLE_COPY(QCtfLib)
+public:
+ explicit QCtfLib(QObject *parent = nullptr) : QObject(parent) {}
+ virtual ~QCtfLib() = default;
+ virtual bool tracepointEnabled(const QCtfTracePointEvent &point) = 0;
+ virtual void doTracepoint(const QCtfTracePointEvent &point, const QByteArray &arr) = 0;
+ virtual bool sessionEnabled() = 0;
+ virtual QCtfTracePointPrivate *initializeTracepoint(const QCtfTracePointEvent &point) = 0;
+ virtual void shutdown(bool *shutdown) = 0;
+};
+
QT_END_NAMESPACE
#endif