From 863aa77ff0f14235dbe7741e1ef7736123ef2b69 Mon Sep 17 00:00:00 2001 From: BZLZHH Date: Tue, 3 Feb 2026 01:49:46 +0800 Subject: [PATCH] [Feat] (MG_Util): Versioning for BindingSlot. --- MobileGL/MG_Util/Types.h | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/MobileGL/MG_Util/Types.h b/MobileGL/MG_Util/Types.h index 94085dc6..316fb174 100644 --- a/MobileGL/MG_Util/Types.h +++ b/MobileGL/MG_Util/Types.h @@ -145,17 +145,18 @@ namespace MobileGL { using TargetEnum = typename ObjectType::TargetEnum; BindingSlot() : m_target((TargetEnum)0), m_boundObject(nullptr) {} - explicit BindingSlot(TargetEnum target) : m_target(target), m_boundObject(nullptr) {} - - void Bind(SharedPtr object) { m_boundObject = object; } - + void Bind(SharedPtr object) { + m_boundObject = object; + ++m_version; + } SharedPtr GetBoundObject() const { return m_boundObject; } - TargetEnum GetTarget() const { return m_target; } + Uint16 GetVersion() const { return m_version; } private: TargetEnum m_target; + Uint16 m_version = 0; SharedPtr m_boundObject; };