Funciones de acceso a los datos de asignación de RenderScript

Descripción general

Las siguientes funciones se pueden usar para obtener y establecer las celdas que conforman una asignación.

  • Se puede acceder a las celdas individuales con las funciones rsGetElementAt* y rsSetElementAt.
  • Se pueden copiar varias celdas con las funciones rsAllocationCopy* y rsAllocationV*.
  • Para obtener valores a través de un muestreo, usa rsSample.
Las funciones rsGetElementAt y rsSetElement* tienen nombres incorrectos. No obtienen ni establecen elementos, que son similares a los tipos de datos, obtienen o establecen celdas. Considérelos como rsGetCellAt y rsSetCellAt.

Resumen

Funciones
rsAllocationCopy1DRange Copiar celdas consecutivas entre asignaciones
rsAllocationCopy2DRange Copiar una región rectangular de celdas entre asignaciones
rsAllocationVLoadX Obtener un vector a partir de una asignación de escalares
rsAllocationVStoreX Almacena un vector en una asignación de escalares
rsGetElementAt. Cómo mostrar una celda a partir de una asignación
rsGetElementAtYuv_uchar_U. Cómo obtener el componente U de una asignación de YUV
rsGetElementAtYuv_uchar_V. Cómo obtener el componente V de una asignación de YUV
rsGetElementAtYuv_uchar_Y. Cómo obtener el componente Y de una asignación de YUV
Muestra de rs Cómo tomar muestras de un valor de una asignación de textura
rsSetElementAt. Cómo establecer una celda de una asignación

Funciones

rsAllocationCopy1DRange : Cómo copiar celdas consecutivas entre asignaciones

void rsAllocationCopy1DRange(rs_allocation dstAlloc, uint32_t dstOff, uint32_t dstMip, recuento de uint32_t, rs_allocation srcAlloc, uint32_t srcOff, uint32_t{/12) Se agregó en el nivel de API 14.
Parámetros
dstAllocAsignación en la que se copiarán celdas.
dstOffDesplazamiento en el destino de la primera celda en la que se copiará.
dstMipNivel de Mip en la asignación de destino. Es 0 si no se usa la asignación de mip.
cantidadCantidad de celdas que se copiarán.
srcAllocAsignación de origen
srcOffDesplazamiento en el origen de la primera celda que se copiará.
srcMipNivel de Mip en la asignación de origen. Es 0 si no se usa la asignación de mip.

Copia el número especificado de celdas de una asignación a otra.

Las dos asignaciones deben ser diferentes. El uso de esta función para copiar dentro de la misma asignación produce resultados indefinidos.

La función no valida si el desplazamiento más grande excede el tamaño de cualquiera de las asignaciones. Ten cuidado,

Esta función solo se debe llamar entre asignaciones de 1D. La llamada en otras asignaciones no está definida.

Esta función no se debe llamar desde un kernel ni desde ninguna función a la que se pueda llamar de forma directa o indirecta desde un kernel. Si lo haces, se generaría un error de tiempo de ejecución.

rsAllocationCopy2DRange : Copia una región rectangular de celdas entre asignaciones

. Se agregó en el nivel de API 14.
Parámetros
dstAllocAsignación en la que se copiarán celdas.
dstXoffEs la compensación X en el destino de la región que se establecerá.
dstYoffEs la compensación Y en el destino de la región que se configurará.
dstMipNivel de Mip en la asignación de destino. Es 0 si no se usa la asignación de mip.
cara dstCara de cubemap de la asignación de destino. Se ignora para asignaciones que no son cubemaps.
anchoAncho de la región entrante que se actualizará.
alturaAltura de la región entrante que se actualizará.
srcAllocAsignación de origen
srcXoffEs la compensación X en el origen.
srcYoffEs la compensación Y en el origen.
srcMipNivel de Mip en la asignación de origen. Es 0 si no se usa la asignación de mip.
srcrostroCara de cubemap de la asignación de origen. Se ignora para asignaciones que no son cubemaps.

Copia una región rectangular de celdas de una asignación a otra. (ancho * alto) se copian las celdas.

Las dos asignaciones deben ser diferentes. El uso de esta función para copiar dentro de la misma asignación produce resultados indefinidos.

La función no valida si la región de origen o de destino supera el tamaño de su asignación respectiva. Ten cuidado,

Esta función solo se debe llamar entre asignaciones 2D. La llamada en otras asignaciones no está definida.

Esta función no se debe llamar desde un kernel ni desde ninguna función a la que se pueda llamar de forma directa o indirecta desde un kernel. Si lo haces, se generaría un error de tiempo de ejecución.

rsAllocationVLoadX : Obtén un vector de una asignación de escalares

char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x) Se agregó en el nivel de API 22.
char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x) Se agregó en el nivel de API 22.
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x) Se agregó en el nivel de API 22.
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
double2 rsAllocationVLoadX_double2(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
double2 rsAllocationVLoadX_double2(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
double2 rsAllocationVLoadX_double2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
double3 rsAllocationVLoadX_double3(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
double3 rsAllocationVLoadX_double3(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
double3 rsAllocationVLoadX_double3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
double4 rsAllocationVLoadX_double4(rs_allocation a, uint32_t x) Se agregó en el nivel de API 22.
double4 rsAllocationVLoadX_double4(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
double4 rsAllocationVLoadX_double4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x); Se agregó en el nivel de API 22.
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
Parámetros
pañalAsignación de la que se obtienen los datos.
xEs la compensación X en la asignación de la primera celda desde la que se copiará.
yEs la compensación Y en la asignación de la primera celda desde la que se copiará.
zDesplazamiento Z en la asignación de la primera celda desde la que se copiará.

Esta función muestra un vector compuesto por celdas sucesivas de la asignación. Se supone que la asignación contiene escalares.

La “X” en el nombre indica que los valores sucesivos se extraen mediante el aumento del índice X. Por el momento, no hay funciones para obtener valores sucesivos que incrementan otras dimensiones. En su lugar, usa varias llamadas a rsGetElementAt().

Por ejemplo, cuando llamas a rsAllocationVLoadX_int4(a, 20, 30), se muestra un int4 compuesto por a[20, 30], a[21, 30], a[22, 30] y a[23, 30].

Cuando recuperes de una asignación tridimensional, usa la variante x, y, z. De manera similar, usa la variante x e y para asignaciones de dos dimensiones y x para asignaciones monodimensionales.

Para mayor eficiencia, esta función no valida las entradas. Si intentas ajustar el índice X, excede el tamaño de la asignación o usas índices incompatibles con la dimensionalidad de la asignación, se obtienen resultados indefinidos.

Consulta también rsAllocationVStoreX().

rsAllocationVStoreX : Almacena un vector en una asignación de escalares

void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_double2(rs_allocation a, double2 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_double2(rs_allocation a, double2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_double2(rs_allocation a, double2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_double3(rs_allocation a, double3 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_double3(rs_allocation a, double3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_double3(rs_allocation a, double3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_double4(rs_allocation a, double4 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_double4(rs_allocation a, double4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_double4(rs_allocation a, double4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 22.
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 22.
Parámetros
pañalAsignación en la que se almacenarán los datos.
valValor que se almacenará.
xEs la compensación X en la asignación de la primera celda en la que se copiará.
yEs la compensación Y en la asignación de la primera celda en la que se copiará.
zDesplazamiento Z en la asignación de la primera celda en la que se copiará.

Esta función almacena las entradas de un vector en celdas sucesivas de una asignación. Se supone que la asignación contiene escalares.

La "X" en el nombre indica que los valores sucesivos se almacenan aumentando el índice X. Por el momento, no hay funciones para almacenar valores sucesivos que incrementan otras dimensiones. En su lugar, usa varias llamadas a rsSetElementAt().

Por ejemplo, cuando llamas a rsAllocationVStoreX_int3(a, v, 20, 30), v.x se almacena en a[20, 30], v.y en a[21, 30] y v.z en a[22, 30].

Cuando almacenes en asignaciones tridimensionales, utiliza la variante x, y, z. De manera similar, usa la variante x e y para asignaciones de dos dimensiones y x para asignaciones monodimensionales.

Para mayor eficiencia, esta función no valida las entradas. Cuando intentas ajustar el índice X, excede el tamaño de la asignación o usas índices incompatibles con la dimensionalidad de los resultados indefinidos de los valores de asignación.

Consulta también rsAllocationVLoadX().

rsGetElementAt : Muestra una celda desde una asignación.

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);
doble rsGetElementAt_double(rs_allocation a, uint32_t x);
doble rsGetElementAt_double(rs_allocation a, uint32_t x, uint32_t y);
doble 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);
double3 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); Se agregó en el nivel de API 23.
half rsGetElementAt_half(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 23.
half rsGetElementAt_half(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 23.
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x); Se agregó en el nivel de API 23.
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 23.
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 23.
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x); Se agregó en el nivel de API 23.
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 23.
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 23.
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x); Se agregó en el nivel de API 23.
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 23.
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de 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);
largo 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);
corto rsGetElementAt_short(rs_allocation a, uint32_t x);
corto rsGetElementAt_short(rs_allocation a, uint32_t x, uint32_t y);
corto 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);

Esta función extrae una sola celda de una asignación.

Cuando recuperes de una asignación tridimensional, usa la variante x, y, z. De manera similar, usa la variante x e y para asignaciones de dos dimensiones y x para asignaciones monodimensionales.

Esta función tiene dos estilos. Una muestra la dirección del valor con un valor void*, la otra muestra el valor real, p. ej., rsGetElementAt() frente a rsGetElementAt_int4(). Para los tipos primitivos, usa siempre este último, ya que es más eficiente.

rsGetElementAtYuv_uchar_U : Obtén el componente de U de una asignación de YUV.

uchar rsGetElementAtYuv_uchar_U(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.

Extrae el componente U de un valor YUV único de una asignación 2D de YUV.

Dentro de una asignación, los componentes Y, U y V se pueden almacenar si tienen planos diferentes y en resoluciones diferentes. Las coordenadas x e y que se proporcionan aquí están en las dimensiones del plano Y.

Consulta rsGetElementAtYuv_uchar_Y().

rsGetElementAtYuv_uchar_V : Obtén el componente V de una asignación de YUV.

uchar rsGetElementAtYuv_uchar_V(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.

Extrae el componente V de un valor YUV único de una asignación 2D de YUV.

Dentro de una asignación, los componentes Y, U y V se pueden almacenar si tienen planos diferentes y en resoluciones diferentes. Las coordenadas x e y que se proporcionan aquí están en las dimensiones del plano Y.

Consulta rsGetElementAtYuv_uchar_Y().

rsGetElementAtYuv_uchar_Y : Obtén el componente Y de una asignación de YUV.

uchar rsGetElementAtYuv_uchar_Y(rs_allocation a, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.

Extrae el componente Y de un valor YUV único de una asignación 2D de YUV.

Dentro de una asignación, los componentes Y, U y V se pueden almacenar si tienen planos diferentes y en resoluciones diferentes. Las coordenadas x e y que se proporcionan aquí están en las dimensiones del plano Y.

Consulta rsGetElementAtYuv_uchar_U() y rsGetElementAtYuv_uchar_V().

rsSample : Cómo tomar muestras de un valor de una asignación de textura

float4 rsSample(rs_allocation a, rs_sampler s, ubicación float); Se agregó en el nivel de API 16.
float4 rsSample(rs_allocation a, rs_sampler s, ubicación float, float lod); Se agregó en el nivel de API 16.
float4 rsSample(rs_allocation a, rs_sampler s, ubicación float2); Se agregó en el nivel de API 16.
float4 rsSample(rs_allocation a, rs_sampler s, ubicación float2, float lod); Se agregó en el nivel de API 16.
Parámetros
pañalAsignación para seleccionar de la que se debe obtener la muestra.
sEstado del sampler.
ubicaciónEs la ubicación desde la que se debe tomar la muestra.
cariñoEl nivel de MIME desde el que se tomará la muestra para los valores fraccionarios, los niveles de mip se interpolarán si se usa RS_SAMPLER_LINEAR_MIP_LINEAR.

Recupera un valor de una asignación de texturas como la describe el sampler.

Si tu asignación es 1D, usa la variante con número de punto flotante para la ubicación. Para 2D, usa la variante float2.

Consulta android.renderscript.Sampler para obtener más información.

rsSetElementAt : Configura la celda de una asignación

void rsSetElementAt(rs_allocation a, void* ptr, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt(rs_allocation a, void* ptr, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_char(rs_allocation a, char val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_char(rs_allocation a, char val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_char(rs_allocation a, char val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_char2(rs_allocation a, char2 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_char3(rs_allocation a, char3 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_char4(rs_allocation a, char4 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_double(rs_allocation a, doble valor, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_double(rs_allocation a, doble valor, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_double(rs_allocation a, doble valor, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_double2(rs_allocation a, double2 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_double2(rs_allocation a, double2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_double2(rs_allocation a, double2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_double3(rs_allocation a, double3 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_double3(rs_allocation a, double3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_double3(rs_allocation a, double3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_double4(rs_allocation a, double4 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_double4(rs_allocation a, double4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_double4(rs_allocation a, double4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_float(rs_allocation a, float val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_float(rs_allocation a, float val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_float(rs_allocation a, float val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_float2(rs_allocation a, float2 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_float3(rs_allocation a, float3 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_float4(rs_allocation a, float4 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_half(rs_allocation a, half val, uint32_t x); Se agregó en el nivel de API 23.
void rsSetElementAt_half(rs_allocation a, half val, uint32_t x, uint32_t y); Se agregó en el nivel de API 23.
void rsSetElementAt_half(rs_allocation a, half val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 23.
void rsSetElementAt_half2(rs_allocation a, half2 val, uint32_t x); Se agregó en el nivel de API 23.
void rsSetElementAt_half2(rs_allocation a, half2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 23.
void rsSetElementAt_half2(rs_allocation a, half2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 23.
void rsSetElementAt_half3(rs_allocation a, half3 val, uint32_t x); Se agregó en el nivel de API 23.
void rsSetElementAt_half3(rs_allocation a, half3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 23.
void rsSetElementAt_half3(rs_allocation a, half3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 23.
void rsSetElementAt_half4(rs_allocation a, half4 val, uint32_t x); Se agregó en el nivel de API 23.
void rsSetElementAt_half4(rs_allocation a, half4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 23.
void rsSetElementAt_half4(rs_allocation a, half4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 23.
void rsSetElementAt_int(rs_allocation a, int val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_int(rs_allocation a, int val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_int(rs_allocation a, int val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_int2(rs_allocation a, int2 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_int3(rs_allocation a, int3 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_int4(rs_allocation a, int4 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_long(rs_allocation a, long val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_long(rs_allocation a, long val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_long(rs_allocation a, long val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_long2(rs_allocation a, long2 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_long3(rs_allocation a, long3 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_long4(rs_allocation a, long4 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_short(rs_allocation a, short val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_short(rs_allocation a, short val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_short(rs_allocation a, short val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_short2(rs_allocation a, short2 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_short3(rs_allocation a, short3 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_short4(rs_allocation a, short4 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_uchar(rs_allocation a, uchar val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_uchar(rs_allocation a, uchar val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_uchar(rs_allocation a, uchar val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_uchar2(rs_allocation a, uchar2 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_uchar3(rs_allocation a, uchar3 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_uchar4(rs_allocation a, uchar4 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_uint(rs_allocation a, uint val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_uint(rs_allocation a, uint val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_uint(rs_allocation a, uint val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_uint2(rs_allocation a, uint2 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_uint3(rs_allocation a, uint3 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_uint4(rs_allocation a, uint4 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_ulong(rs_allocation a, ulong val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_ulong(rs_allocation a, ulong val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_ulong(rs_allocation a, ulong val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_ulong2(rs_allocation a, ulong2 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_ulong3(rs_allocation a, ulong3 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_ulong4(rs_allocation a, ulong4 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_ushort(rs_allocation a, ushort val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_ushort(rs_allocation a, ushort val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_ushort(rs_allocation a, ushort val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_ushort2(rs_allocation a, ushort2 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_ushort3(rs_allocation a, ushort3 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.
void rsSetElementAt_ushort4(rs_allocation a, ushort4 val, uint32_t x); Se agregó en el nivel de API 18.
void rsSetElementAt_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y); Se agregó en el nivel de API 18.
void rsSetElementAt_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y, uint32_t z); Se agregó en el nivel de API 18.

Esta función almacena un valor en una sola celda de una asignación.

Cuando almacenes en asignaciones tridimensionales, utiliza la variante x, y, z. De manera similar, usa la variante x e y para asignaciones de dos dimensiones y x para las asignaciones monodimensionales.

Esta función tiene dos estilos. Uno pasa el valor que se almacenará con un valor vacío*, el otro tiene el valor real como argumento, p. ej., rsSetElementAt() frente a rsSetElementAt_int4(). Para los tipos primitivos, siempre usa este último, ya que es más eficiente.

Consulta también rsGetElementAt().