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; };