HardwareRenderer Classe

Definição

Cria uma instância de um renderizador acelerado por hardware.

[Android.Runtime.Register("android/graphics/HardwareRenderer", ApiSince=29, DoNotGenerateAcw=true)]
public class HardwareRenderer : Java.Lang.Object
[<Android.Runtime.Register("android/graphics/HardwareRenderer", ApiSince=29, DoNotGenerateAcw=true)>]
type HardwareRenderer = class
    inherit Object
Herança
HardwareRenderer
Atributos

Comentários

Cria uma instância de um renderizador acelerado por hardware. Isso é usado para renderizar uma cena criada de RenderNode's a uma saída android.view.Surface. Pode haver quantas instâncias do HardwareRenderer desejarem.

<H3>Recursos &ciclo de< vida/h3>

Todas as instâncias do HardwareRenderer compartilham um thread de renderização comum. O thread de renderização contém o contexto de GPU e os recursos necessários para fazer a renderização acelerada por GPU. Como tal, o primeiro HardwareRenderer criado vem com o custo de também criar os contextos de GPU associados, no entanto, cada HardwareRenderer incremental depois disso é bastante barato. O uso esperado é ter uma instância do HardwareRenderer para cada ativo Surface. Por exemplo, quando uma atividade mostra uma caixa de diálogo, o sistema usará internamente dois renderizadores de hardware, que podem estar desenhando ao mesmo tempo.

OBSERVAÇÃO: Devido à natureza compartilhada e cooperativa do thread de renderização, é fundamental que qualquer Surface usado tenha um lado de consumo confiável e de prompt. Os consumidores fornecidos pelo sistema, como android.view.SurfaceView, android.view.Window#takeSurface(SurfaceHolder.Callback2)ou android.view.TextureView todos se encaixam nesse requisito. No entanto, se os consumidores personalizados são usados, como ao usar SurfaceTexture ou android.media.ImageReader é responsabilidade do aplicativo garantir que eles consumam atualizações de forma rápida e rápida. A falha ao fazer isso fará com que o thread de renderização fique parado nessa superfície, bloqueando todas as instâncias do HardwareRenderer.

Java documentação para android.graphics.HardwareRenderer.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.

Construtores

Nome Description
HardwareRenderer()

Cria uma nova instância de um HardwareRenderer.

HardwareRenderer(IntPtr, JniHandleOwnership)

Cria uma instância de um renderizador acelerado por hardware.

Campos

Nome Description
SyncContextIsStopped
Obsoleto.

O renderizador de hardware foi definido como um estado "parado".

SyncFrameDropped
Obsoleto.

O conteúdo foi sincronizado, mas o renderizador se recusou a produzir um quadro neste intervalo vsync.

SyncLostSurfaceRewardIfFound
Obsoleto.

O renderizador de hardware não tem mais um valor válido android.view.Surface para renderizar.

SyncOk
Obsoleto.

Nada interessante de relatar.

SyncRedrawRequested
Obsoleto.

O renderizador está solicitando uma redraw.

Propriedades

Nome Description
Class

Retorna a classe de runtime deste Object.

(Herdado de Object)
DrawingEnabled

Retornará true se o HardwareRender produzir a saída. -ou- Alterna se o HardwareRenderer produzirá ou não uma saída de desenho globalmente no processo atual.

Handle

O identificador para a instância subjacente do Android.

(Herdado de Object)
JniIdentityHashCode

Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade.

(Herdado de Object)
JniPeerMembers

Cria uma instância de um renderizador acelerado por hardware.

Opaque

Se o renderizador está ou não definido como opaco. -ou- Altere a opacidade do HardwareRenderer.

PeerReference

Obtém a referência de objeto JNI para este par Java.

(Herdado de Object)
ThresholdClass

Cria uma instância de um renderizador acelerado por hardware.

ThresholdType

Cria uma instância de um renderizador acelerado por hardware.

Métodos

Nome Description
ClearContent()

Destrói todas as listas de exibição associadas ao conteúdo de renderização atual.

Clone()

Cria e retorna uma cópia desse objeto.

(Herdado de Object)
CreateRenderRequest()

Retorna um FrameRenderRequest que pode ser usado para renderizar um novo quadro.

Destroy()

Destrói o contexto de renderização desse HardwareRenderer.

Dispose()

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
Dispose(Boolean)

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
Equals(Object)

Indica se algum outro objeto é "igual a" este.

(Herdado de Object)
GetHashCode()

Retorna um valor de código hash para o objeto.

(Herdado de Object)
JavaFinalize()

Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto.

(Herdado de Object)
Notify()

Ativa um único thread que está aguardando no monitor deste objeto.

(Herdado de Object)
NotifyAll()

Ativa todos os threads que estão aguardando no monitor deste objeto.

(Herdado de Object)
NotifyFramePending()

Notifica o renderizador de hardware para FrameRenderRequest#syncAndDraw() o qual uma chamada será feita em breve.

SetContentRoot(RenderNode)

Define a raiz do conteúdo a ser renderizada.

SetHandle(IntPtr, JniHandleOwnership)

Define a propriedade Handle

(Herdado de Object)
SetLightSourceAlpha(Single, Single)

Configura os alfas de sombra ambiente e spot.

SetLightSourceGeometry(Single, Single, Single, Single)

Define o centro da fonte de luz.

SetName(String)

Define um nome para esse renderizador.

SetSurface(Surface)

A superfície na qual renderizar.

Start()

Retoma a renderização na superfície.

Stop()

Para de renderizar na superfície.

ToArray<T>()

Cria uma matriz gerenciada com base nesse wrapper de matriz Java.

(Herdado de Object)
ToString()

Retorna uma representação de cadeia de caracteres do objeto.

(Herdado de Object)
UnregisterFromRuntime()

Cancela o registro desse par Java do runtime de interoperabilidade.

(Herdado de Object)
Wait()

Faz com que o thread atual aguarde até ser despertado, normalmente por ser <notificado/em> ou <em>interrompido</em>.<>

(Herdado de Object)
Wait(Int64, Int32)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)
Wait(Int64)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)

Implantações explícitas de interface

Nome Description
IJavaPeerable.Disposed()

Notifica o runtime de interoperabilidade de que esse par gerenciado foi descartado.

(Herdado de Object)
IJavaPeerable.DisposeUnlessReferenced()

Libera esse par Java, a menos que seja mantido por outra referência gerenciada.

(Herdado de Object)
IJavaPeerable.Finalized()

Notifica o runtime de interoperabilidade de que esse par gerenciado foi finalizado.

(Herdado de Object)
IJavaPeerable.JniManagedPeerState

Obtém o estado que descreve a relação entre esse par gerenciado e sua referência de JNI.

(Herdado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Define o código de hash de identidade de interoperabilidade para esse par Java.

(Herdado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Define o estado de par gerenciado e JNI para esse par Java.

(Herdado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Define a referência de objeto JNI usada por esse par gerenciado.

(Herdado de Object)

Métodos de Extensão

Nome Description
GetJniTypeName(IJavaPeerable)

Obtém o nome JNI do tipo da instância self.

JavaAs<TResult>(IJavaPeerable)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

JavaCast<TResult>(IJavaObject)

Executa uma conversão de tipo marcada por runtime do Android.

JavaCast<TResult>(IJavaObject)

Cria uma instância de um renderizador acelerado por hardware.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

Aplica-se a