Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
31 lines
477 B
C++
31 lines
477 B
C++
#pragma once
|
|
|
|
namespace mln {
|
|
namespace gfx {
|
|
|
|
template <typename T>
|
|
class DebugGroup {
|
|
public:
|
|
DebugGroup(T& scope_, const char* name)
|
|
: scope(&scope_) {
|
|
scope->pushDebugGroup(name);
|
|
}
|
|
|
|
DebugGroup(DebugGroup&& rhs) noexcept
|
|
: scope(rhs.scope) {
|
|
rhs.scope = nullptr;
|
|
}
|
|
|
|
~DebugGroup() {
|
|
if (scope) {
|
|
scope->popDebugGroup();
|
|
}
|
|
}
|
|
|
|
private:
|
|
T* scope;
|
|
};
|
|
|
|
} // namespace gfx
|
|
} // namespace mln
|