Ref_Shutdown();
}
+void* GCHandleTable::GetGlobalHandleTable()
+{
+ return (void*)g_HandleTableMap.pBuckets[0];
+}
+
+void* GCHandleTable::GetNewHandleTable(void* context)
+{
+ return (void*)::Ref_CreateHandleTableBucket(ADIndex((uintptr_t)context));
+}
+
void* GCHandleTable::GetHandleContext(OBJECTHANDLE handle)
{
return (void*)((uintptr_t)::HndGetHandleTableADIndex(::HndGetHandleTable(handle)).m_dwIndex);
virtual void Shutdown();
+ virtual void* GetGlobalHandleTable();
+
+ virtual void* GetNewHandleTable(void* context);
+
virtual void* GetHandleContext(OBJECTHANDLE handle);
virtual OBJECTHANDLE CreateHandleOfType(void* table, Object* object, int type);
virtual void* GetHandleContext(OBJECTHANDLE handle) = 0;
+ virtual void* GetGlobalHandleTable() = 0;
+
+ virtual void* GetNewHandleTable(void* context) = 0;
+
virtual OBJECTHANDLE CreateHandleOfType(void* table, Object* object, int type) = 0;
virtual OBJECTHANDLE CreateHandleWithExtraInfo(void* table, Object* object, int type, void* pExtraInfo) = 0;