9 using uint
= unsigned int;
12 /* Somewhat arbitrary. Avoid letting it get out of control if the app enables
13 * logging but never reads it.
15 inline constexpr std::uint8_t MaxDebugLoggedMessages
{64};
16 inline constexpr std::uint16_t MaxDebugMessageLength
{1024};
17 inline constexpr std::uint8_t MaxDebugGroupDepth
{64};
18 inline constexpr std::uint16_t MaxObjectLabelLength
{1024};
21 inline constexpr uint DebugSourceBase
{0};
22 enum class DebugSource
: std::uint8_t {
29 inline constexpr uint DebugSourceCount
{5};
31 inline constexpr uint DebugTypeBase
{DebugSourceBase
+ DebugSourceCount
};
32 enum class DebugType
: std::uint8_t {
43 inline constexpr uint DebugTypeCount
{9};
45 inline constexpr uint DebugSeverityBase
{DebugTypeBase
+ DebugTypeCount
};
46 enum class DebugSeverity
: std::uint8_t {
52 inline constexpr uint DebugSeverityCount
{4};
56 const DebugSource mSource
;
58 std::vector
<uint
> mFilters
;
59 std::vector
<std::uint64_t> mIdFilters
;
62 DebugGroup(DebugSource source
, uint id
, T
&& message
)
63 : mId
{id
}, mSource
{source
}, mMessage
{std::forward
<T
>(message
)}
65 DebugGroup(const DebugGroup
&) = default;
66 DebugGroup(DebugGroup
&&) = default;
70 #endif /* AL_DEBUG_H */