Funzioni di accesso ai dati di allocazione RenderScript

Panoramica

Le funzioni seguenti possono essere utilizzate per recuperare e impostare le celle che compongono un'allocazione.

  • Puoi accedere alle singole celle utilizzando le funzioni rsGetElementAt* e rsSetElementAt.
  • Puoi copiare più celle con le funzioni rsAllocationCopy* e rsAllocationV*.
  • Per ottenere valori tramite un Sampler, utilizza rsSample.
Le funzioni rsGetElementAt e rsSetElement* presentano in qualche modo nomi errati. Non ricevono o impostano elementi simili ai tipi di dati, ma ricevono o impostano celle. Possono essere paragonati a rsGetCellAt e rsSetCellAt.

Riepilogo

Funzioni
rsAllocationCopy1DRange Copia celle consecutive tra le allocazioni
rsAllocationCopy2DRange Copia una regione rettangolare di celle tra le allocazioni
rsAllocationVLoadX Ottieni un vettore da un'allocazione di scalari
rsAllocationVStoreX Archiviare un vettore in un'allocazione di scalari
rsGetElementAt Restituire una cella da un'allocazione
rsGetElementAtYuv_uchar_U Ottieni il componente U di un'allocazione di YUV
rsGetElementAtYuv_uchar_V Ottieni il componente V di un'allocazione di YUV
rsGetElementAtYuv_uchar_Y Ottieni il componente Y di un'allocazione di YUV
rsSample Campiona un valore da un'allocazione delle texture
rsSetElementAt Imposta una cella di un'allocazione

Funzioni

rsAllocationCopy1DRange : copia celle consecutive tra le allocazioni

void rsAllocationCopy1DRange(rs_allocation dstAlloc, uint32_t dstOff, uint32_t dstMip, uint32_t conteggio, rs_allocation srcAlloc, uint32_t srcOff, uint32_t{/p); Aggiunto al livello API 14
Parametri
DstAllocAllocazione in cui copiare le celle.
dstOffOffset nella destinazione della prima cella da copiare.
MipLivello Mip nell'allocazione della destinazione. 0 se non viene utilizzata la mappatura mip.
numeroNumero di celle da copiare.
srcAllocAllocazione di origine.
srcOffOffset nell'origine della prima cella da copiare.
srcMipLivello Mip nell'allocazione di origine. 0 se non viene utilizzata la mappatura mip.

Copia il numero specificato di celle da un'allocazione a un'altra.

Le due allocazioni devono essere diverse. L'uso di questa funzione per copiare all'interno della stessa allocazione produce risultati indefiniti.

La funzione non convalida se il valore di offset più il conteggio supera le dimensioni di entrambe le allocazioni. Fai attenzione:

Questa funzione deve essere chiamata solo tra allocazioni 1D. Non è possibile definire la funzione per altre allocazioni.

Questa funzione non dovrebbe essere chiamata dall'interno di un kernel o da qualsiasi funzione che può essere chiamata direttamente o indirettamente da un kernel. Ciò causerebbe un errore di runtime.

rsAllocationCopy2DRange : copia una regione rettangolare di celle tra le allocazioni

void rsAllocationCopy2DRange(rs_allocation dstAlloc, uint32_t dstXoff, uint32_t dstYoff, uint32_t dstMip, rs_allocation_cubemap_face dstface1, uint32_tlarghezza, uint32_t Aggiunto al livello API 14
Parametri
DstAllocAllocazione in cui copiare le celle.
dstXoffOffset X nella destinazione della regione da impostare.
DstYoffOffset Y nella destinazione della regione da impostare.
MipLivello Mip nell'allocazione della destinazione. 0 se non viene utilizzata la mappatura mip.
Logo faccialeFaccia mappa cubi dell'allocazione di destinazione. Ignorato per le allocazioni che non sono mappe cubiche.
widthLarghezza della regione in arrivo da aggiornare.
altezzaAltezza della regione in arrivo da aggiornare.
srcAllocAllocazione di origine.
srcXoffOffset X nell'origine.
srcYoffOffset Y nell'origine.
srcMipLivello Mip nell'allocazione di origine. 0 se non viene utilizzata la mappatura mip.
srcFaceFaccia mappa cubi dell'allocazione di origine. Ignorato per le allocazioni che non sono mappe cubiche.

Copia una regione rettangolare di celle da un'allocazione all'altra. (larghezza * altezza) vengono copiate.

Le due allocazioni devono essere diverse. L'uso di questa funzione per copiare all'interno della stessa allocazione produce risultati indefiniti.

La funzione non convalida se la regione di origine o di destinazione supera le dimensioni della rispettiva allocazione. Fai attenzione:

Questa funzione deve essere chiamata solo tra allocazioni 2D. Non è possibile definire la funzione per altre allocazioni.

Questa funzione non dovrebbe essere chiamata dall'interno di un kernel o da qualsiasi funzione che può essere chiamata direttamente o indirettamente da un kernel. Ciò causerebbe un errore di runtime.

rsAllocationVLoadX : ottieni un vettore da un'allocazione di valori scalari

char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x); Aggiunto al livello API 22
char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x); Aggiunto al livello API 22
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x); Aggiunto al livello API 22
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
Double2 rsAllocationVLoadX_DOUBLE2(rs_allocation a, uint32_t x); Aggiunto al livello API 22
Double2 rsAllocationVLoadX_DOUBLE2(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
Double2 rsAllocationVLoadX_Double2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
Double3 rsAllocationVLoadX_DOUBLE3(rs_allocation a, uint32_t x); Aggiunto al livello API 22
Double3 rsAllocationVLoadX_DOUBLE3(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
Double3 rsAllocationVLoadX_DOUBLE3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
Double4 rsAllocationVLoadX_DOUBLE4(rs_allocation a, uint32_t x); Aggiunto al livello API 22
Double4 rsAllocationVLoadX_Double4(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
Double4 rsAllocationVLoadX_DOUBLE4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x); Aggiunto al livello API 22
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x); Aggiunto al livello API 22
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x); Aggiunto al livello API 22
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x); Aggiunto al livello API 22
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x); Aggiunto al livello API 22
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x); Aggiunto al livello API 22
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x); Aggiunto al livello API 22
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x); Aggiunto al livello API 22
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x); Aggiunto al livello API 22
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x); Aggiunto al livello API 22
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x); Aggiunto al livello API 22
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x); Aggiunto al livello API 22
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x); Aggiunto al livello API 22
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x); Aggiunto al livello API 22
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x); Aggiunto al livello API 22
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x); Aggiunto al livello API 22
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x); Aggiunto al livello API 22
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x); Aggiunto al livello API 22
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x); Aggiunto al livello API 22
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x); Aggiunto al livello API 22
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x); Aggiunto al livello API 22
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x); Aggiunto al livello API 22
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x); Aggiunto al livello API 22
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x); Aggiunto al livello API 22
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 22
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
Parametri
al'allocazione da cui ottenere i dati.
xOffset X nell'allocazione della prima cella da cui eseguire la copia.
yOffset Y nell'allocazione della prima cella da cui eseguire la copia.
zOffset Z nell'allocazione della prima cella da cui eseguire la copia.

Questa funzione restituisce un vettore composto da celle successive dell'allocazione. Presuppone che l'allocazione contenga valori scalari.

La "X" nel nome indica che i valori successivi vengono estratti aumentando l'indice X. Al momento non ci sono funzioni per ottenere valori successivi che incrementano altre dimensioni. Usa invece più chiamate a rsGetElementAt().

Ad esempio, quando chiami rsAllocationVLoadX_int4(a, 20, 30), viene restituito un int4 composto da a[20, 30], a[21, 30], a[22, 30] e a[23, 30].

Quando recuperi le allocazioni tridimensionali, utilizza le varianti x, y, z. Analogamente, utilizza le varianti x, y per le allocazioni bidimensionali e x per le allocazioni monodimensionali.

Per migliorare l'efficienza, questa funzione non convalida gli input. Il tentativo di aggregare l'indice X, il superamento della dimensione dell'allocazione o l'utilizzo di indici incompatibili con la dimensionalità dell'allocazione produce risultati indefiniti.

Vedi anche rsAllocationVStoreX().

rsAllocationVStoreX : memorizza un vettore in un'allocazione di valori scalari

void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_DOUBLE2(rs_allocation a, Double2 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_ double2(rs_allocation a, Double2 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_DOUBLE2(rs_allocation a, Double2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_Double3(rs_allocation a, Double3 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_DOUBLE3(rs_allocation a, Double3 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_Double3(rs_allocation a, Double3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_Double4(rs_allocation a, Double4 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_DOUBLE4(rs_allocation a, Double4 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_DOUBLE4(rs_allocation a, Double4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x); Aggiunto al livello API 22
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y); Aggiunto al livello API 22
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 22
Parametri
aAllocazione in cui archiviare i dati.
valValore da memorizzare.
xOffset X nell'allocazione della prima cella in cui deve essere copiato.
yOffset Y nell'allocazione della prima cella da copiare.
zOffset Z nell'allocazione della prima cella da copiare.

Questa funzione memorizza le voci di un vettore in celle successive di un'allocazione. Presuppone che l'allocazione contenga valori scalari.

La "X" nel nome indica che i valori successivi vengono memorizzati aumentando l'indice X. Al momento non ci sono funzioni per memorizzare valori successivi che incrementano altre dimensioni. Utilizza invece più chiamate a rsSetElementAt().

Ad esempio, quando chiami rsAllocationVStoreX_int3(a, v, 20, 30), v.x viene archiviata in a[20, 30], v.y in a[21, 30] e v.z in a[22, 30].

Quando memorizzi in allocazioni tridimensionali, utilizza le varianti x, y, z. Analogamente, utilizza le varianti x, y per le allocazioni bidimensionali e x per le allocazioni monodimensionali.

Per migliorare l'efficienza, questa funzione non convalida gli input. Il tentativo di aggregare l'indice X, il superamento della dimensione dell'allocazione o l'utilizzo di indici incompatibili con la dimensionalità dell'allocazione genera risultati non definiti.

Vedi anche rsAllocationVLoadX().

rsGetElementAt : restituisce una cella da un'allocazione

char rsGetElementAt_char(rs_allocation a, uint32_t x);
char rsGetElementAt_char(rs_allocation a, uint32_t x, uint32_t y);
char rsGetElementAt_char(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
char2 rsGetElementAt_char2(rs_allocation a, uint32_t x);
char2 rsGetElementAt_char2(rs_allocation a, uint32_t x, uint32_t y);
char2 rsGetElementAt_char2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
char3 rsGetElementAt_char3(rs_allocation a, uint32_t x);
char3 rsGetElementAt_char3(rs_allocation a, uint32_t x, uint32_t y);
char3 rsGetElementAt_char3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
char4 rsGetElementAt_char4(rs_allocation a, uint32_t x);
char4 rsGetElementAt_char4(rs_allocation a, uint32_t x, uint32_t y);
char4 rsGetElementAt_char4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
const void* rsGetElementAt(rs_allocation a, uint32_t x);
const void* rsGetElementAt(rs_allocation a, uint32_t x, uint32_t y);
const void* rsGetElementAt(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
double rsGetElementAt_Double(rs_allocation a, uint32_t x);
double rsGetElementAt_Double(rs_allocation a, uint32_t x, uint32_t y);
double rsGetElementAt_Double(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
Double2 rsGetElementAt_Double2(rs_allocation a, uint32_t x);
Double2 rsGetElementAt_ double2(rs_allocation a, uint32_t x, uint32_t y);
Double2 rsGetElementAt_Double2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
Double3 rsGetElementAt_ double3(rs_allocation a, uint32_t x);
Double3 rsGetElementAt_Double3(rs_allocation a, uint32_t x, uint32_t y);
doppio3 rsGetElementAt_Double3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
Double4 rsGetElementAt_ double4(rs_allocation a, uint32_t x);
Double4 rsGetElementAt_Double4(rs_allocation a, uint32_t x, uint32_t y);
Double4 rsGetElementAt_ double4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
float rsGetElementAt_float(rs_allocation a, uint32_t x);
float rsGetElementAt_float(rs_allocation a, uint32_t x, uint32_t y);
float rsGetElementAt_float(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
float2 rsGetElementAt_float2(rs_allocation a, uint32_t x);
float2 rsGetElementAt_float2(rs_allocation a, uint32_t x, uint32_t y);
float2 rsGetElementAt_float2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
float3 rsGetElementAt_float3(rs_allocation a, uint32_t x);
float3 rsGetElementAt_float3(rs_allocation a, uint32_t x, uint32_t y);
float3 rsGetElementAt_float3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
float4 rsGetElementAt_float4(rs_allocation a, uint32_t x);
float4 rsGetElementAt_float4(rs_allocation a, uint32_t x, uint32_t y);
float4 rsGetElementAt_float4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
half rsGetElementAt_half(rs_allocation a, uint32_t x); Aggiunto al livello API 23
half rsGetElementAt_half(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 23
half rsGetElementAt_half(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 23
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x); Aggiunto al livello API 23
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 23
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 23
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x); Aggiunto al livello API 23
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 23
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 23
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x); Aggiunto al livello API 23
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 23
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 23
int rsGetElementAt_int(rs_allocation a, uint32_t x);
int rsGetElementAt_int(rs_allocation a, uint32_t x, uint32_t y);
int rsGetElementAt_int(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
int2 rsGetElementAt_int2(rs_allocation a, uint32_t x);
int2 rsGetElementAt_int2(rs_allocation a, uint32_t x, uint32_t y);
int2 rsGetElementAt_int2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
int3 rsGetElementAt_int3(rs_allocation a, uint32_t x);
int3 rsGetElementAt_int3(rs_allocation a, uint32_t x, uint32_t y);
int3 rsGetElementAt_int3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
int4 rsGetElementAt_int4(rs_allocation a, uint32_t x);
int4 rsGetElementAt_int4(rs_allocation a, uint32_t x, uint32_t y);
int4 rsGetElementAt_int4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
long rsGetElementAt_long(rs_allocation a, uint32_t x);
long rsGetElementAt_long(rs_allocation a, uint32_t x, uint32_t y);
long rsGetElementAt_long(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
long2 rsGetElementAt_long2(rs_allocation a, uint32_t x);
long2 rsGetElementAt_long2(rs_allocation a, uint32_t x, uint32_t y);
long2 rsGetElementAt_long2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
long3 rsGetElementAt_long3(rs_allocation a, uint32_t x);
long3 rsGetElementAt_long3(rs_allocation a, uint32_t x, uint32_t y);
long3 rsGetElementAt_long3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
long4 rsGetElementAt_long4(rs_allocation a, uint32_t x);
long4 rsGetElementAt_long4(rs_allocation a, uint32_t x, uint32_t y);
long4 rsGetElementAt_long4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
Short rsGetElementAt_short(rs_allocation a, uint32_t x);
short rsGetElementAt_short(rs_allocation a, uint32_t x, uint32_t y);
short rsGetElementAt_short(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
short2 rsGetElementAt_short2(rs_allocation a, uint32_t x);
short2 rsGetElementAt_short2(rs_allocation a, uint32_t x, uint32_t y);
short2 rsGetElementAt_short2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
short3 rsGetElementAt_short3(rs_allocation a, uint32_t x);
short3 rsGetElementAt_short3(rs_allocation a, uint32_t x, uint32_t y);
short3 rsGetElementAt_short3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
short4 rsGetElementAt_short4(rs_allocation a, uint32_t x);
short4 rsGetElementAt_short4(rs_allocation a, uint32_t x, uint32_t y);
short4 rsGetElementAt_short4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uchar rsGetElementAt_uchar(rs_allocation a, uint32_t x);
uchar rsGetElementAt_uchar(rs_allocation a, uint32_t x, uint32_t y);
uchar rsGetElementAt_uchar(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uchar2 rsGetElementAt_uchar2(rs_allocation a, uint32_t x);
uchar2 rsGetElementAt_uchar2(rs_allocation a, uint32_t x, uint32_t y);
uchar2 rsGetElementAt_uchar2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uchar3 rsGetElementAt_uchar3(rs_allocation a, uint32_t x);
uchar3 rsGetElementAt_uchar3(rs_allocation a, uint32_t x, uint32_t y);
uchar3 rsGetElementAt_uchar3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uchar4 rsGetElementAt_uchar4(rs_allocation a, uint32_t x);
uchar4 rsGetElementAt_uchar4(rs_allocation a, uint32_t x, uint32_t y);
uchar4 rsGetElementAt_uchar4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uint rsGetElementAt_uint(rs_allocation a, uint32_t x);
uint rsGetElementAt_uint(rs_allocation a, uint32_t x, uint32_t y);
uint rsGetElementAt_uint(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uint2 rsGetElementAt_uint2(rs_allocation a, uint32_t x);
uint2 rsGetElementAt_uint2(rs_allocation a, uint32_t x, uint32_t y);
uint2 rsGetElementAt_uint2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uint3 rsGetElementAt_uint3(rs_allocation a, uint32_t x);
uint3 rsGetElementAt_uint3(rs_allocation a, uint32_t x, uint32_t y);
uint3 rsGetElementAt_uint3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uint4 rsGetElementAt_uint4(rs_allocation a, uint32_t x);
uint4 rsGetElementAt_uint4(rs_allocation a, uint32_t x, uint32_t y);
uint4 rsGetElementAt_uint4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ulong rsGetElementAt_ulong(rs_allocation a, uint32_t x);
ulong rsGetElementAt_ulong(rs_allocation a, uint32_t x, uint32_t y);
ulong rsGetElementAt_ulong(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ulong2 rsGetElementAt_ulong2(rs_allocation a, uint32_t x);
ulong2 rsGetElementAt_ulong2(rs_allocation a, uint32_t x, uint32_t y);
ulong2 rsGetElementAt_ulong2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ulong3 rsGetElementAt_ulong3(rs_allocation a, uint32_t x);
ulong3 rsGetElementAt_ulong3(rs_allocation a, uint32_t x, uint32_t y);
ulong3 rsGetElementAt_ulong3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ulong4 rsGetElementAt_ulong4(rs_allocation a, uint32_t x);
ulong4 rsGetElementAt_ulong4(rs_allocation a, uint32_t x, uint32_t y);
ulong4 rsGetElementAt_ulong4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ushort rsGetElementAt_ushort(rs_allocation a, uint32_t x);
ushort rsGetElementAt_ushort(rs_allocation a, uint32_t x, uint32_t y);
ushort rsGetElementAt_ushort(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ushort2 rsGetElementAt_ushort2(rs_allocation a, uint32_t x);
ushort2 rsGetElementAt_ushort2(rs_allocation a, uint32_t x, uint32_t y);
ushort2 rsGetElementAt_ushort2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ushort3 rsGetElementAt_ushort3(rs_allocation a, uint32_t x);
ushort3 rsGetElementAt_ushort3(rs_allocation a, uint32_t x, uint32_t y);
ushort3 rsGetElementAt_ushort3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ushort4 rsGetElementAt_ushort4(rs_allocation a, uint32_t x);
ushort4 rsGetElementAt_ushort4(rs_allocation a, uint32_t x, uint32_t y);
ushort4 rsGetElementAt_ushort4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);

Questa funzione estrae una singola cella da un'allocazione.

Quando recuperi le allocazioni tridimensionali, utilizza le varianti x, y, z. Analogamente, utilizza le varianti x, y per le allocazioni bidimensionali e x per le allocazioni monodimensionali.

Questa funzione ha due stili. Uno restituisce l'indirizzo del valore utilizzando void*, l'altro restituisce il valore effettivo, ad esempio rsGetElementAt() rispetto a rsGetElementAt_int4(). Per i tipi primitivi, utilizza sempre il secondo in quanto è più efficiente.

rsGetElementAtYuv_uchar_U : ottieni il componente U di un'allocazione di YUV

uchar rsGetElementAtYuv_uchar_U(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 18

Estrae il componente U di un singolo valore YUV da un'allocazione 2D di YUV.

All'interno di un'allocazione, possono essere archiviati i componenti Y, U e V se sono presenti piani diversi e con risoluzioni diverse. Le coordinate x e y qui fornite corrispondono alle dimensioni del piano Y.

Consulta la funzione rsGetElementAtYuv_uchar_Y().

rsGetElementAtYuv_uchar_V : ottiene il componente V di un'allocazione di YUV

uchar rsGetElementAtYuv_uchar_V(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 18

Estrae il componente V di un singolo valore YUV da un'allocazione 2D di YUV.

All'interno di un'allocazione, possono essere archiviati i componenti Y, U e V se sono presenti piani diversi e con risoluzioni diverse. Le coordinate x e y qui fornite corrispondono alle dimensioni del piano Y.

Consulta la funzione rsGetElementAtYuv_uchar_Y().

rsGetElementAtYuv_uchar_Y : ottieni il componente Y di un'allocazione di YUV

uchar rsGetElementAtYuv_uchar_Y(rs_allocation a, uint32_t x, uint32_t y); Aggiunto al livello API 18

Estrae il componente Y di un singolo valore YUV da un'allocazione 2D di YUV.

All'interno di un'allocazione, possono essere archiviati i componenti Y, U e V se sono presenti piani diversi e con risoluzioni diverse. Le coordinate x e y qui fornite corrispondono alle dimensioni del piano Y.

Consulta rsGetElementAtYuv_uchar_U() e rsGetElementAtYuv_uchar_V().

rsSample : campiona un valore da un'allocazione di texture

float4 rsSample(rs_allocation a, rs_sampler s, posizione float); Aggiunto al livello API 16
float4 rsSample(rs_allocation a, rs_sampler s, float location, float lod); Aggiunto al livello API 16
float4 rsSample(rs_allocation a, rs_sampler s, float2 location); Aggiunto al livello API 16
float4 rsSample(rs_allocation a, rs_sampler s, float2 location, float lod); Aggiunto al livello API 16
Parametri
aAllocazione al campione da.
sStato del campionatore.
posizioneLocalità da cui eseguire il campionamento.
LodLivello mip da cui campionare; per i valori frazionari, i livelli mip verranno interpolati se viene utilizzato RS_EXAMPLER_LINEAR_MIP_LINEAR.

Recupera un valore dall'allocazione delle texture nel modo descritto dal campionatore.

Se l'allocazione è 1D, utilizza la variante con numero in virgola mobile per la località. Per il 2D, utilizza la variante float2.

Per ulteriori dettagli, visita la pagina android.renderscript.Sampler.

rsSetElementAt : imposta una cella di un'allocazione

void rsSetElementAt(rs_allocation a, void* ptr, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt(rs_allocation a, void* ptr, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_char(rs_allocation a, char val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_char(rs_allocation a, char val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_char(rs_allocation a, char val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_char2(rs_allocation a, char2 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_char3(rs_allocation a, char3 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_char4(rs_allocation a, char4 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_Double(rs_allocation a, double val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_Double(rs_allocation a, double val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_Double(rs_allocation a, double val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_Double2(rs_allocation a, Double2 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_DOUBLE2(rs_allocation a, Double2 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_Double2(rs_allocation a, Double2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_Double3(rs_allocation a, Double3 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_Double3(rs_allocation a, Double3 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_Double3(rs_allocation a, Double3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_Double4(rs_allocation a, Double4 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_Double4(rs_allocation a, Double4 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_ double4(rs_allocation a, Double4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_float(rs_allocation a, val float, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_float(rs_allocation a, val float, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_float(rs_allocation a, float val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_float2(rs_allocation a, float2 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_float3(rs_allocation a, float3 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_float4(rs_allocation a, float4 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_half(rs_allocation a, half val, uint32_t x); Aggiunto al livello API 23
void rsSetElementAt_half(rs_allocation a, half val, uint32_t x, uint32_t y); Aggiunto al livello API 23
void rsSetElementAt_half(rs_allocation a, half val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 23
void rsSetElementAt_half2(rs_allocation a, half2 val, uint32_t x); Aggiunto al livello API 23
void rsSetElementAt_half2(rs_allocation a, half2 val, uint32_t x, uint32_t y); Aggiunto al livello API 23
void rsSetElementAt_half2(rs_allocation a, half2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 23
void rsSetElementAt_half3(rs_allocation a, half3 val, uint32_t x); Aggiunto al livello API 23
void rsSetElementAt_half3(rs_allocation a, half3 val, uint32_t x, uint32_t y); Aggiunto al livello API 23
void rsSetElementAt_half3(rs_allocation a, half3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 23
void rsSetElementAt_half4(rs_allocation a, half4 val, uint32_t x); Aggiunto al livello API 23
void rsSetElementAt_half4(rs_allocation a, half4 val, uint32_t x, uint32_t y); Aggiunto al livello API 23
void rsSetElementAt_half4(rs_allocation a, half4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 23
void rsSetElementAt_int(rs_allocation a, int val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_int(rs_allocation a, int val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_int(rs_allocation a, int val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_int2(rs_allocation a, int2 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_int3(rs_allocation a, int3 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_int4(rs_allocation a, int4 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_long(rs_allocation a, long val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_long(rs_allocation a, long val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_long(rs_allocation a, long val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_long2(rs_allocation a, long2 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_long3(rs_allocation a, long3 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_long4(rs_allocation a, long4 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_short(rs_allocation a, short val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_short(rs_allocation a, short val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_short(rs_allocation a, short val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_short2(rs_allocation a, short2 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_short3(rs_allocation a, short3 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_short4(rs_allocation a, short4 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_uchar(rs_allocation a, uchar val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_uchar(rs_allocation a, uchar val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_uchar(rs_allocation a, uchar val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_uchar2(rs_allocation a, uchar2 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_uchar3(rs_allocation a, uchar3 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_uchar4(rs_allocation a, uchar4 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_uint(rs_allocation a, uint val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_uint(rs_allocation a, uint val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_uint(rs_allocation a, uint val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_uint2(rs_allocation a, uint2 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_uint3(rs_allocation a, uint3 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_uint4(rs_allocation a, uint4 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_ulong(rs_allocation a, ulong val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_ulong(rs_allocation a, ulong val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_ulong(rs_allocation a, ulong val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_ulong2(rs_allocation a, ulong2 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_ulong3(rs_allocation a, ulong3 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_ulong4(rs_allocation a, ulong4 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_ushort(rs_allocation a, ushort val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_ushort(rs_allocation a, ushort val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_ushort(rs_allocation a, ushort val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_ushort2(rs_allocation a, ushort2 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_ushort3(rs_allocation a, ushort3 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18
void rsSetElementAt_ushort4(rs_allocation a, ushort4 val, uint32_t x); Aggiunto al livello API 18
void rsSetElementAt_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y); Aggiunto al livello API 18
void rsSetElementAt_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y, uint32_t z); Aggiunto al livello API 18

Questa funzione memorizza un valore in una singola cella di un'allocazione.

Quando memorizzi in allocazioni tridimensionali, utilizza le varianti x, y, z. Analogamente, utilizza le varianti x, y per le allocazioni bidimensionali e x per le allocazioni monodimensionali.

Questa funzione ha due stili. Uno passa il valore da archiviare utilizzando un void*, l'altro ha il valore effettivo come argomento, ad esempio rsSetElementAt() rispetto a rsSetElementAt_int4(). Per i tipi primitivi, utilizza sempre il secondo in quanto è più efficiente.

Vedi anche rsGetElementAt().