Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ GetManagedObject()

static unsafe OcclusionQuery Microsoft.Xna.Framework.Graphics.OcclusionQuery.GetManagedObject ( IDirect3DQuery9 * pInterface,
GraphicsDevice pDevice,
uint pool )
inlinestaticpackage

Definition at line 200 of file OcclusionQuery.cs.

201 {
202 OcclusionQuery occlusionQuery = pDevice.Resources.GetCachedObject(pInterface) as OcclusionQuery;
203 if (occlusionQuery != null)
204 {
205 ((delegate* unmanaged[Stdcall, Stdcall]<IntPtr, uint>)(int)(*(uint*)(*(int*)pInterface + 8)))((nint)pInterface);
206 occlusionQuery.isDisposed = false;
207 GC.ReRegisterForFinalize(occlusionQuery);
208 }
209 else
210 {
211 occlusionQuery = new OcclusionQuery(pInterface, pDevice);
212 pDevice.Resources.AddTrackedObject(occlusionQuery, pInterface, pool, 0uL, ref occlusionQuery._internalHandle);
213 }
214 return occlusionQuery;
215 }
unsafe OcclusionQuery(IDirect3DQuery9 *pInterface, GraphicsDevice pDevice)
static void ReRegisterForFinalize(object obj)
Definition GC.cs:214
Definition GC.cs:8

References Microsoft.Xna.Framework.Graphics.OcclusionQuery.OcclusionQuery(), Microsoft.Xna.Framework.Graphics.GraphicsResource._internalHandle, Microsoft.Xna.Framework.Graphics.DeviceResourceManager.AddTrackedObject(), Microsoft.Xna.Framework.Graphics.DeviceResourceManager.GetCachedObject(), System.GC.ReRegisterForFinalize(), and Microsoft.Xna.Framework.Graphics.GraphicsDevice.Resources.