2018-04-06 16:37:30 +02:00
|
|
|
#pragma once
|
2019-09-08 22:27:57 +02:00
|
|
|
|
2023-10-28 21:17:32 +02:00
|
|
|
#include "common/FlagsEnum.hpp"
|
2019-09-08 22:27:57 +02:00
|
|
|
|
2018-04-06 16:37:30 +02:00
|
|
|
#include <QString>
|
2019-09-08 22:27:57 +02:00
|
|
|
|
2018-04-06 16:37:30 +02:00
|
|
|
namespace chatterino {
|
2019-09-08 22:27:57 +02:00
|
|
|
|
2018-04-06 16:37:30 +02:00
|
|
|
class DebugCount
|
|
|
|
{
|
|
|
|
public:
|
2023-10-28 21:17:32 +02:00
|
|
|
enum class Flag : uint16_t {
|
|
|
|
None = 0,
|
|
|
|
/// The value is a data size in bytes
|
|
|
|
DataSize = 1 << 0,
|
|
|
|
};
|
|
|
|
using Flags = FlagsEnum<Flag>;
|
2023-05-27 14:18:08 +02:00
|
|
|
|
2023-10-28 21:17:32 +02:00
|
|
|
static void configure(const QString &name, Flags flags);
|
2023-05-27 14:18:08 +02:00
|
|
|
|
2023-10-28 21:17:32 +02:00
|
|
|
static void set(const QString &name, const int64_t &amount);
|
2023-05-27 14:18:08 +02:00
|
|
|
|
2023-10-28 21:17:32 +02:00
|
|
|
static void increase(const QString &name, const int64_t &amount);
|
|
|
|
static void increase(const QString &name)
|
2021-07-25 17:13:04 +02:00
|
|
|
{
|
2023-10-28 21:17:32 +02:00
|
|
|
DebugCount::increase(name, 1);
|
2021-07-25 17:13:04 +02:00
|
|
|
}
|
2019-09-08 22:27:57 +02:00
|
|
|
|
2023-10-28 21:17:32 +02:00
|
|
|
static void decrease(const QString &name, const int64_t &amount);
|
2018-04-06 16:37:30 +02:00
|
|
|
static void decrease(const QString &name)
|
|
|
|
{
|
2023-10-28 21:17:32 +02:00
|
|
|
DebugCount::decrease(name, 1);
|
2018-04-06 16:37:30 +02:00
|
|
|
}
|
2019-09-08 22:27:57 +02:00
|
|
|
|
2023-10-28 21:17:32 +02:00
|
|
|
static QString getDebugText();
|
2018-04-06 16:37:30 +02:00
|
|
|
};
|
2019-09-08 22:27:57 +02:00
|
|
|
|
2018-04-06 16:37:30 +02:00
|
|
|
} // namespace chatterino
|