Edit

Share via


IMTLTexture Interface

Definition

System protocol for image data that is used by vertex shaders, fragment shaders, and compute kernels.

[Foundation.Protocol(Name="MTLTexture", WrapperType=typeof(Metal.MTLTextureWrapper))]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 8, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.MacOSX, 10, 11, ObjCRuntime.PlatformArchitecture.Arch64, null)]
public interface IMTLTexture : IDisposable, Metal.IMTLResource
type IMTLTexture = interface
    interface INativeObject
    interface IDisposable
    interface IMTLResource
Attributes
Implements

Properties

ArrayLength
CpuCacheMode (Inherited from IMTLResource)
Depth
Device (Inherited from IMTLResource)
FramebufferOnly
Handle

Handle (pointer) to the unmanaged object representation.

(Inherited from INativeObject)
Height
Label (Inherited from IMTLResource)
MipmapLevelCount
PixelFormat
RootResource
SampleCount
TextureType
Width

Methods

CreateTextureView(MTLPixelFormat)
GetBytes(IntPtr, nuint, MTLRegion, nuint)
GetBytes(IntPtr, nuint, nuint, MTLRegion, nuint, nuint)
ReplaceRegion(MTLRegion, nuint, IntPtr, nuint)
ReplaceRegion(MTLRegion, nuint, nuint, IntPtr, nuint, nuint)
SetPurgeableState(MTLPurgeableState) (Inherited from IMTLResource)

Extension Methods

GetAllocatedSize(IMTLResource)

Returns the allocated size of the resource.

GetHeap(IMTLResource)

Returns the heap that sub-allocated the resource.

GetIsAliasable(IMTLResource)

Returns a Boolean value that tells whether future sub-allocations can alias the resource's memory.

GetStorageMode(IMTLResource)

Returns a description of the location and permissions of the resource.

MakeAliasable(IMTLResource)

Makes the resource aliasable.

CreateSharedTextureHandle(IMTLTexture)
CreateTextureView(IMTLTexture, MTLPixelFormat, MTLTextureType, NSRange, NSRange)

Creates and returns a Metal texture that shares the same memory as the source object, but that is interpreted with the new pixel format.

GetAllowGpuOptimizedContents(IMTLTexture)
GetBuffer(IMTLTexture)

Returns the buffer for the target texture.

GetBufferBytesPerRow(IMTLTexture)

Gets the bytes per row in the buffer for the target texture.

GetBufferOffset(IMTLTexture)

Gets the offset into the parent texture where the the target texture data begins.

GetIOSurface(IMTLTexture)

Gets the IOSurface that was used to create this texture, if one was used.

GetIOSurfacePlane(IMTLTexture)

Returns the IOSurface plane used by the surface that is returned from GetIOSurface(IMTLTexture).

GetParentRelativeLevel(IMTLTexture)

Returns the base level of the parent texture from which the target texture was created.

GetParentRelativeSlice(IMTLTexture)

Returns the base slice of the parent texture from which the target texture was created.

GetParentTexture(IMTLTexture)

Returns the parent texture.

GetShareable(IMTLTexture)
GetUsage(IMTLTexture)

Gets a description of how the texture can be used. (For example, as a write target for compute shaders.)

Applies to