From 80fecfa228b86e6a5f440569c8492db5ef901ea9 Mon Sep 17 00:00:00 2001 From: Kawe Mazidjatari <48657826+Mauler125@users.noreply.github.com> Date: Wed, 3 Apr 2024 01:12:44 +0200 Subject: [PATCH] Tier1: create simple depth manager class Will be used to manage depths of nested arrays --- r5dev/public/tier1/depthcounter.h | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 r5dev/public/tier1/depthcounter.h diff --git a/r5dev/public/tier1/depthcounter.h b/r5dev/public/tier1/depthcounter.h new file mode 100644 index 00000000..269d5ff0 --- /dev/null +++ b/r5dev/public/tier1/depthcounter.h @@ -0,0 +1,31 @@ +//=============================================================================// +// +// Purpose: simple class that could be used to manage depths of nested elements +// +//=============================================================================// +#ifndef TIER1_DEPTHCOUNTER_H +#define TIER1_DEPTHCOUNTER_H + +template +class CDepthCounter +{ +public: + CDepthCounter(T& counter) : ref(counter) + { + ref++; + } + ~CDepthCounter() + { + ref--; + } + + T Get() + { + return ref; + } + +private: + T& ref; +}; + +#endif // TIER1_DEPTHCOUNTER_H