Condividi tramite


CIRenderDestination Costruttori

Definizione

Overload

CIRenderDestination(CVPixelBuffer)
CIRenderDestination(NSObjectFlag)

Costruttore per chiamare classi derivate per ignorare l'inizializzazione e allocare semplicemente l'oggetto.

CIRenderDestination(IOSurface)
CIRenderDestination(IntPtr)

Costruttore usato durante la creazione di rappresentazioni gestite di oggetti non gestiti; Chiamato dal runtime.

CIRenderDestination(IMTLTexture, IMTLCommandBuffer)
CIRenderDestination(UInt32, UInt32, nuint, nuint)
CIRenderDestination(IntPtr, nuint, nuint, nuint, CIFormat)
CIRenderDestination(nuint, nuint, MTLPixelFormat, IMTLCommandBuffer, Func<IMTLTexture>)

CIRenderDestination(CVPixelBuffer)

[Foundation.Export("initWithPixelBuffer:")]
public CIRenderDestination (CoreVideo.CVPixelBuffer pixelBuffer);
new CoreImage.CIRenderDestination : CoreVideo.CVPixelBuffer -> CoreImage.CIRenderDestination

Parametri

pixelBuffer
CVPixelBuffer
Attributi

Si applica a

CIRenderDestination(NSObjectFlag)

Costruttore per chiamare classi derivate per ignorare l'inizializzazione e allocare semplicemente l'oggetto.

protected CIRenderDestination (Foundation.NSObjectFlag t);
new CoreImage.CIRenderDestination : Foundation.NSObjectFlag -> CoreImage.CIRenderDestination

Parametri

t
NSObjectFlag

Valore sentinel inutilizzato, passare NSObjectFlag.Empty.

Commenti

Questo costruttore deve essere chiamato dalle classi derivate quando costruiscono completamente l'oggetto nel codice gestito e vogliono semplicemente che il runtime alloca e inizializzi NSObject. È necessario implementare il processo di inizializzazione in due passaggi usato da Objective-C, il primo passaggio consiste nell'eseguire l'allocazione dell'oggetto, il secondo passaggio consiste nell'inizializzare l'oggetto. Quando gli sviluppatori richiamano il costruttore che accetta nSObjectFlag.Empty sfruttano un percorso diretto che passa fino a NSObject per allocare semplicemente la memoria dell'oggetto e associare insieme gli oggetti Objective-C e C#. L'inizializzazione effettiva dell'oggetto è fino allo sviluppatore.

Questo costruttore viene in genere usato dal generatore di associazione per allocare l'oggetto, ma impedisce che venga eseguita l'inizializzazione effettiva. Dopo aver eseguito l'allocazione, il costruttore deve inizializzare l'oggetto. Con i costruttori generati dal generatore di binding questo significa che richiama manualmente uno dei metodi "init" per inizializzare l'oggetto.

È responsabilità dello sviluppatore inizializzare completamente l'oggetto se si concatenano usando il percorso NSObjectFlag.Empty.

In generale, se il costruttore dello sviluppatore richiama l'implementazione di base NSObjectFlag.Empty, deve chiamare un metodo Objective-C init. In caso contrario, gli sviluppatori devono invece concatenare il costruttore appropriato nella propria classe.

Il valore dell'argomento viene ignorato e garantisce semplicemente che l'unico codice eseguito sia la fase di costruzione sia l'allocazione NSObject di base e la registrazione del tipo di runtime. In genere il concatenamento sarà simile al seguente:

//
// The NSObjectFlag merely allocates the object and registers the
// C# class with the Objective-C runtime if necessary, but no actual
// initXxx method is invoked, that is done later in the constructor
//
// This is taken from Xamarin.iOS's source code:
//
[Export ("initWithFrame:")]
public UIView (System.Drawing.RectangleF frame) : base (NSObjectFlag.Empty)
{
// Invoke the init method now.
	var initWithFrame = new Selector ("initWithFrame:").Handle;
	if (IsDirectBinding)
		Handle = ObjCRuntime.Messaging.IntPtr_objc_msgSend_CGRect (this.Handle, initWithFrame, frame);
	else
		Handle = ObjCRuntime.Messaging.IntPtr_objc_msgSendSuper_CGRect (this.SuperHandle, initWithFrame, frame);
}

Si applica a

CIRenderDestination(IOSurface)

[Foundation.Export("initWithIOSurface:")]
public CIRenderDestination (IOSurface.IOSurface surface);
new CoreImage.CIRenderDestination : IOSurface.IOSurface -> CoreImage.CIRenderDestination

Parametri

surface
IOSurface
Attributi

Si applica a

CIRenderDestination(IntPtr)

Costruttore usato durante la creazione di rappresentazioni gestite di oggetti non gestiti; Chiamato dal runtime.

protected internal CIRenderDestination (IntPtr handle);
new CoreImage.CIRenderDestination : nativeint -> CoreImage.CIRenderDestination

Parametri

handle
IntPtr

nativeint

Puntatore (handle) all'oggetto non gestito.

Commenti

Questo costruttore viene richiamato dall'infrastruttura di runtime (GetNSObject(IntPtr)) per creare una nuova rappresentazione gestita per un puntatore a un oggetto Objective-C non gestito. Gli sviluppatori non devono richiamare direttamente questo metodo, invece devono chiamare il metodo GetNSObject perché impedirà due istanze di un oggetto gestito per puntare allo stesso oggetto nativo.

Si applica a

CIRenderDestination(IMTLTexture, IMTLCommandBuffer)

[Foundation.Export("initWithMTLTexture:commandBuffer:")]
public CIRenderDestination (Metal.IMTLTexture texture, Metal.IMTLCommandBuffer commandBuffer);
new CoreImage.CIRenderDestination : Metal.IMTLTexture * Metal.IMTLCommandBuffer -> CoreImage.CIRenderDestination

Parametri

texture
IMTLTexture
commandBuffer
IMTLCommandBuffer

Da aggiungere.

Questo parametro può essere null.

Attributi

Si applica a

CIRenderDestination(UInt32, UInt32, nuint, nuint)

[Foundation.Export("initWithGLTexture:target:width:height:")]
public CIRenderDestination (uint texture, uint target, nuint width, nuint height);
new CoreImage.CIRenderDestination : uint32 * uint32 * nuint * nuint -> CoreImage.CIRenderDestination

Parametri

texture
UInt32
target
UInt32
width
System.System.UIntPtr System.unativeint
height
System.System.UIntPtr System.unativeint
Attributi

Si applica a

CIRenderDestination(IntPtr, nuint, nuint, nuint, CIFormat)

[Foundation.Export("initWithBitmapData:width:height:bytesPerRow:format:")]
public CIRenderDestination (IntPtr data, nuint width, nuint height, nuint bytesPerRow, CoreImage.CIFormat format);
new CoreImage.CIRenderDestination : nativeint * nuint * nuint * nuint * CoreImage.CIFormat -> CoreImage.CIRenderDestination

Parametri

data
IntPtr

nativeint

width
System.System.UIntPtr System.unativeint
height
System.System.UIntPtr System.unativeint
bytesPerRow
System.System.UIntPtr System.unativeint
format
CIFormat
Attributi

Si applica a

CIRenderDestination(nuint, nuint, MTLPixelFormat, IMTLCommandBuffer, Func<IMTLTexture>)

[Foundation.Export("initWithWidth:height:pixelFormat:commandBuffer:mtlTextureProvider:")]
public CIRenderDestination (nuint width, nuint height, Metal.MTLPixelFormat pixelFormat, Metal.IMTLCommandBuffer commandBuffer, Func<Metal.IMTLTexture> block);
new CoreImage.CIRenderDestination : nuint * nuint * Metal.MTLPixelFormat * Metal.IMTLCommandBuffer * Func<Metal.IMTLTexture> -> CoreImage.CIRenderDestination

Parametri

width
System.System.UIntPtr System.unativeint
height
System.System.UIntPtr System.unativeint
pixelFormat
MTLPixelFormat
commandBuffer
IMTLCommandBuffer

Da aggiungere.

Questo parametro può essere null.

block
Func<IMTLTexture>
Attributi

Si applica a