Fonctions d'accès aux données d'allocation RenderScript

Présentation

Les fonctions ci-dessous peuvent être utilisées pour obtenir et définir les cellules qui composent une allocation.

  • Les cellules individuelles sont accessibles à l'aide des fonctions rsGetElementAt* et rsSetElementAt.
  • Vous pouvez copier plusieurs cellules à l'aide des fonctions rsAllocationCopy* et rsAllocationV*.
  • Pour obtenir des valeurs via un échantillonneur, utilisez rsSample.
Les fonctions rsGetElementAt et rsSetElement* portent un nom incorrect. Ils n'obtiennent ni ne définissent d'éléments, qui s'apparentent aux types de données, mais obtiennent ou ne définissent des cellules. Considérez-les comme rsGetCellAt et rsSetCellAt.

Résumé

Fonctions
rsAllocationCopy1DRange Copier des cellules consécutives entre des allocations
rsAllocationCopy2DRange Copier une zone rectangulaire de cellules entre des allocations
rsAllocationVLoadX. Obtenir un vecteur à partir d'une allocation de scalaires
rsAllocationVStoreX Stocker un vecteur dans une allocation de scalaires
rsGetElementAt Renvoyer une cellule à partir d'une allocation
rsGetElementAtYuv_uchar_U Obtenir la composante U d'une allocation de YUV
rsGetElementAtYuv_uchar_V Obtenir la composante V d'une allocation de YUV
rsGetElementAtYuv_uchar_Y Obtenir la composante Y d'une allocation de YUV
rsSample Échantillonner une valeur à partir d'une allocation de texture
rsSetElementAt Définir une cellule d'allocation

Fonctions

rsAllocationCopy1DRange : copier des cellules consécutives entre des allocations

void rsAllocationCopy1DRange(rs_allocation dstAlloc, uint32_t dstOff, uint32_t dstMip, uint32_t count, rs_allocation srcAlloc, uint32_t srcOff, uintMip} src Ajouté au niveau d'API 14
Paramètres
dstAllocAllocation dans laquelle copier des cellules.
dstOffDécalage dans la destination de la première cellule dans laquelle copier.
DstMipNiveau Mip dans l'allocation de destination. 0 si le mappage mip n'est pas utilisé.
nombreNombre de cellules à copier.
srcAllocAllocation de la source.
srcOffDécalage dans la source de la première cellule à copier.
MipNiveau Mip dans l'allocation de la source. 0 si le mappage mip n'est pas utilisé.

Copie le nombre de cellules spécifié d'une allocation à une autre.

Les deux allocations doivent être différentes. L'utilisation de cette fonction pour effectuer une copie au sein de la même allocation génère des résultats non définis.

La fonction ne vérifie pas si le nombre de décalages supérieur dépasse la taille de l'une ou l'autre des allocations. Soyez prudent.

Cette fonction ne doit être appelée qu'entre des allocations unidimensionnelles. L'appeler sur d'autres allocations n'est pas défini.

Cette fonction ne doit pas être appelée depuis un noyau, ni depuis une fonction pouvant être appelée directement ou indirectement à partir d'un noyau. Cela entraînerait une erreur d'exécution.

rsAllocationCopy2DRange : copier une région rectangulaire de cellules entre les allocations

void rsAllocationCopy2DRange(rs_allocation dstAlloc, uint32_t dstXoff, uint32_t dstYoff, uint32_t dstMip, rs_allocation_cubemap_face dstFace, uint32_tallocation_width, uint2_facetFacet32} Ajouté au niveau d'API 14
Paramètres
dstAllocAllocation dans laquelle copier des cellules.
dstXoffDécalage X dans la destination de la région à définir.
dstYoffDécalage Y dans la destination de la région à définir.
DstMipNiveau Mip dans l'allocation de destination. 0 si le mappage mip n'est pas utilisé.
DstFaceVue cubique de l'allocation de destination. Ignoré pour les allocations qui ne sont pas des cubemaps.
largeurLargeur de la région entrante à mettre à jour.
tailleHauteur de la région entrante à mettre à jour.
srcAllocAllocation de la source.
srcXoffDécalage X dans la source.
srcYoffDécalage Y dans la source.
MipNiveau Mip dans l'allocation de la source. 0 si le mappage mip n'est pas utilisé.
srcFaceFace cubique de l'allocation source. Ignoré pour les allocations qui ne sont pas des cubemaps.

Copie une zone rectangulaire de cellules d'une allocation à une autre. (largeur x hauteur) sont copiées.

Les deux allocations doivent être différentes. L'utilisation de cette fonction pour effectuer une copie au sein de la même allocation génère des résultats non définis.

La fonction ne vérifie pas si la région source ou de destination dépasse la taille de son allocation respective. Soyez prudent.

Cette fonction ne doit être appelée qu'entre des allocations 2D. L'appeler sur d'autres allocations n'est pas défini.

Cette fonction ne doit pas être appelée depuis un noyau, ni depuis une fonction pouvant être appelée directement ou indirectement à partir d'un noyau. Cela entraînerait une erreur d'exécution.

rsAllocationVLoadX : obtenir un vecteur à partir d'une allocation de scalaires

char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
double2 rsAllocationVLoadX_double2(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
double2 rsAllocationVLoadX_double2(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
double2 rsAllocationVLoadX_double2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
double3 rsAllocationVLoadX_double3(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
double3 rsAllocationVLoadX_double3(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
double3 rsAllocationVLoadX_double3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
double4 rsAllocationVLoadX_double4(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
double4 rsAllocationVLoadX_double4(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
double4 rsAllocationVLoadX_double4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x); Ajouté au niveau d'API 22
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
Paramètres
aAllocation d'obtention des données.
xDécalage X dans l'allocation de la première cellule à partir de laquelle la copie est effectuée.
yDécalage Y dans l'allocation de la première cellule à partir de laquelle la copie est effectuée.
mDécalage Z dans l'allocation de la première cellule à partir de laquelle la copie est effectuée.

Cette fonction renvoie un vecteur composé de cellules successives de l'allocation. Il part du principe que l'allocation contient des scalaires.

La lettre "X" dans le nom indique que les valeurs successives sont extraites en augmentant l'index X. Il n'existe actuellement aucune fonction permettant d'obtenir des valeurs successives incrémentant d'autres dimensions. Utilisez plutôt plusieurs appels à rsGetElementAt().

Par exemple, lorsque vous appelez rsAllocationVLoadX_int4(a, 20, 30), une valeur int4 composée de a[20, 30], a[21, 30], a[22, 30] et a[23, 30] est renvoyée.

Lorsque vous extrayez des données à partir d'une répartition tridimensionnelle, utilisez la variante x, y, z. De même, utilisez les variantes x et y pour les allocations en deux dimensions et x pour les allocations monodimensionnelles.

Pour des raisons d'efficacité, cette fonction ne valide pas les entrées. Si vous essayez d'encapsuler l'index X, de dépasser la taille de l'allocation ou d'utiliser des index incompatibles avec la dimensionnalité de l'allocation, vous obtiendrez des résultats non définis.

Consultez également rsAllocationVStoreX().

rsAllocationVStoreX : stocker un vecteur dans une allocation de scalaires

void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_double2(rs_allocation a, double2 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_double2(rs_allocation a, double2 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_double2(rs_allocation a, double2 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_double3(rs_allocation a, double3 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_double3(rs_allocation a, double3 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_double3(rs_allocation a, double3 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_double4(rs_allocation a, double4 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_double4(rs_allocation a, double4 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_double4(rs_allocation a, double4 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y); Ajouté au niveau d'API 22
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 22
Paramètres
aAllocation dans laquelle stocker les données.
ValValeur à stocker.
xDécalage X dans l'allocation de la première cellule dans laquelle copier.
yDécalage Y dans l'allocation de la première cellule dans laquelle copier.
mDécalage Z dans l'allocation de la première cellule dans laquelle copier.

Cette fonction stocke les entrées d'un vecteur dans des cellules successives d'une allocation. Il part du principe que l'allocation contient des scalaires.

La lettre "X" dans le nom indique que les valeurs successives sont stockées en augmentant l'index X. Il n'existe actuellement aucune fonction permettant de stocker des valeurs successives incrémentant d'autres dimensions. Utilisez plutôt plusieurs appels à rsSetElementAt().

Par exemple, lorsque vous appelez rsAllocationVStoreX_int3(a, v, 20, 30), v.x est stocké en a[20, 30], v.y en a[21, 30] et v.z en a[22, 30].

Lors du stockage dans des allocations en trois dimensions, utilisez la variante x, y, z. De même, utilisez les variantes x et y pour les allocations en deux dimensions et x pour les allocations monodimensionnelles.

Pour des raisons d'efficacité, cette fonction ne valide pas les entrées. Si vous encapsulez l'index X, si vous dépassez la taille de l'allocation ou si vous utilisez des index incompatibles avec la dimensionnalité de l'allocation, vous obtenez des résultats non définis.

Consultez également rsAllocationVLoadX().

rsGetElementAt : renvoie une cellule à partir d'une allocation

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);
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); Ajouté au niveau d'API 23
half rsGetElementAt_half(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 23
half rsGetElementAt_half(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 23
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x); Ajouté au niveau d'API 23
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 23
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 23
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x); Ajouté au niveau d'API 23
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 23
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'API 23
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x); Ajouté au niveau d'API 23
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 23
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Ajouté au niveau d'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);
court rsGetElementAt_short(rs_allocation a, uint32_t x);
court rsGetElementAt_short(rs_allocation a, uint32_t x, uint32_t y);
court 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);

Cette fonction extrait une seule cellule d'une allocation.

Lorsque vous extrayez des données à partir d'une répartition tridimensionnelle, utilisez la variante x, y, z. De même, utilisez les variantes x et y pour les allocations en deux dimensions et x pour les allocations monodimensionnelles.

Cette fonction présente deux styles. L'un renvoie l'adresse de la valeur à l'aide d'un vide*, l'autre renvoie la valeur réelle (par exemple, rsGetElementAt() et rsGetElementAt_int4()). Pour les types primitifs, utilisez toujours cette dernière, car elle est plus efficace.

rsGetElementAtYuv_uchar_U : récupère le composant U d'une allocation de YUV

uchar rsGetElementAtYuv_uchar_U(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 18

Extrait la composante U d'une valeur YUV unique à partir d'une allocation 2D des YUV.

À l'intérieur d'une allocation, les composants Y, U et V peuvent être stockés dans des plans différents et avec des résolutions différentes. Les coordonnées x et y fournies ici sont aux dimensions du plan Y.

Voir rsGetElementAtYuv_uchar_Y().

rsGetElementAtYuv_uchar_V : obtient le composant V d'une allocation de YUV

uchar rsGetElementAtYuv_uchar_V(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 18

Extrait la composante V d'une valeur YUV unique à partir d'une allocation 2D des YUV.

À l'intérieur d'une allocation, les composants Y, U et V peuvent être stockés dans des plans différents et avec des résolutions différentes. Les coordonnées x et y fournies ici sont aux dimensions du plan Y.

Voir rsGetElementAtYuv_uchar_Y().

rsGetElementAtYuv_uchar_Y : obtient le composant Y d'une allocation de YUV

uchar rsGetElementAtYuv_uchar_Y(rs_allocation a, uint32_t x, uint32_t y); Ajouté au niveau d'API 18

Extrait la composante Y d'une valeur YUV unique à partir d'une allocation 2D des YUV.

À l'intérieur d'une allocation, les composants Y, U et V peuvent être stockés dans des plans différents et avec des résolutions différentes. Les coordonnées x et y fournies ici sont aux dimensions du plan Y.

Consultez rsGetElementAtYuv_uchar_U() et rsGetElementAtYuv_uchar_V().

rsSample : échantillonner une valeur à partir d'une allocation de texture

float4 rsSample(rs_allocation a, rs_sampler s, float location); Ajouté au niveau d'API 16
float4 rsSample(rs_allocation a, rs_sampler s, float location, float lod); Ajouté au niveau d'API 16
float4 rsSample(rs_allocation a, rs_sampler s, emplacement float2); Ajouté au niveau d'API 16
float4 rsSample(rs_allocation a, rs_sampler s, emplacement float2, float lod); Ajouté au niveau d'API 16
Paramètres
aAllocation à partir de laquelle l'échantillonnage est effectué.
sÉtat de l'échantillonneur.
positionEmplacement à partir duquel effectuer l'échantillonnage.
LodLe niveau mip à partir duquel échantillonner les valeurs (pour les valeurs fractionnaires, les niveaux mip seront interpolés si RS_SampleR_LINEAR_MIP_LINEAR est utilisé).

Récupère une valeur à partir d'une allocation de texture d'une manière décrite par l'échantillonneur.

Si votre allocation est de type 1D, utilisez la variante avec float pour l'emplacement. Pour la 2D, utilisez la variante float2.

Pour en savoir plus, consultez android.renderscript.Sampler.

rsSetElementAt : définir une cellule d'allocation

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

Cette fonction stocke une valeur dans une seule cellule d'une allocation.

Lors du stockage dans des allocations en trois dimensions, utilisez la variante x, y, z. De même, utilisez les variantes x et y pour les allocations en deux dimensions et x pour les allocations monodimensionnelles.

Cette fonction présente deux styles. L'une transmet la valeur à stocker à l'aide d'un void*, l'autre a la valeur réelle en tant qu'argument (par exemple, rsSetElementAt() et rsSetElementAt_int4()). Pour les types primitifs, utilisez toujours ce dernier, car il est plus efficace.

Consultez également rsGetElementAt().