Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qhitrace_p.h
Go to the documentation of this file.
1// Copyright (C) 2026 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QHITRACE_P_H
5#define QHITRACE_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists purely as an
12// implementation detail. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <QtCore/private/qglobal_p.h>
19#include <QtCore/qbasicatomic.h>
20#include <QtCore/qbytearray.h>
21#include <QtCore/qstring.h>
22
24
26
27constexpr inline int qtHiTraceRecordBudget = 420;
28constexpr inline int qtHiTraceSmallestValueBudget = 16;
29
30constexpr int qtHiTraceValueBudget(int sliceNameSize, int fixedSize, int valueCount)
31{
33 (qtHiTraceRecordBudget - sliceNameSize - fixedSize) / valueCount);
34}
35
36Q_CORE_EXPORT const char *qtHiTraceFormatArguments(int sliceNameSize, const char *format, ...)
37 Q_ATTRIBUTE_FORMAT_PRINTF(2, 3);
38
39Q_CORE_EXPORT QByteArray qtHiTraceArgument(const char *value, qsizetype maximumSize);
40Q_CORE_EXPORT QByteArray qtHiTraceArgument(const QString &value, qsizetype maximumSize);
41
42Q_CORE_EXPORT extern QBasicAtomicInteger<bool> qtHiTraceEnabled;
43
44inline bool qtHiTraceIsEnabled()
45{
46 return qtHiTraceEnabled.loadRelaxed();
47}
48
49QT_END_NAMESPACE
50
51#endif // QHITRACE_P_H
\inmodule QtCore
Definition qbytearray.h:58
bool qtHiTraceIsEnabled()
Definition qhitrace_p.h:44
constexpr int qtHiTraceValueBudget(int sliceNameSize, int fixedSize, int valueCount)
Definition qhitrace_p.h:30
QT_BEGIN_NAMESPACE constexpr int qtHiTraceRecordBudget
Definition qhitrace_p.h:27
constexpr int qtHiTraceSmallestValueBudget
Definition qhitrace_p.h:28
QT_REQUIRE_CONFIG(hitrace)