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

◆ GetManagedObject()

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

Definition at line 475 of file VertexBuffer.cs.

476 {
477 VertexBuffer vertexBuffer = pDevice.Resources.GetCachedObject(pInterface) as VertexBuffer;
478 if (vertexBuffer != null)
479 {
480 ((delegate* unmanaged[Stdcall, Stdcall]<IntPtr, uint>)(int)(*(uint*)(*(int*)pInterface + 8)))((nint)pInterface);
481 vertexBuffer.isDisposed = false;
482 GC.ReRegisterForFinalize(vertexBuffer);
483 }
484 else
485 {
486 vertexBuffer = new VertexBuffer(pInterface, pDevice);
487 pDevice.Resources.AddTrackedObject(vertexBuffer, pInterface, pool, 0uL, ref vertexBuffer._internalHandle);
488 }
489 return vertexBuffer;
490 }
static void ReRegisterForFinalize(object obj)
Definition GC.cs:214
Definition GC.cs:8

References Microsoft.Xna.Framework.Graphics.VertexBuffer.VertexBuffer(), 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.