RenderScript 할당 데이터 액세스 함수

개요

아래 함수는 할당을 구성하는 셀을 가져오고 설정하는 데 사용할 수 있습니다.

  • 개별 셀은 rsGetElementAt* 및 rsSetElementAt 함수를 사용하여 액세스됩니다.
  • rsAllocationCopy* 및 rsAllocationV* 함수를 사용하여 여러 셀을 복사할 수 있습니다.
  • 샘플러를 통해 값을 가져오려면 rsSample을 사용합니다.
rsGetElementAt 및 rsSetElement* 함수의 이름이 다소 잘못 지정되어 있습니다. 데이터 유형과 유사한 요소를 가져오거나 설정하지 않습니다. 셀을 가져오거나 설정합니다. rsGetCellAt 및 rsSetCellAt이라고 생각하면 됩니다.

요약

함수
rsAllocationCopy1DRange 할당 간에 연속된 셀 복사
rsAllocationCopy2DRange 할당 사이에 직사각형 영역 복사
rsAllocationVLoadX 스칼라 할당에서 벡터 가져오기
rsAllocationVStoreX 스칼라 할당에 벡터 저장
rsGetElementAt 할당에서 셀 반환
rsGetElementAtYuv_uchar_U YUV 할당의 U 구성요소 가져오기
rsGetElementAtYuv_uchar_V YUV 할당의 V 구성요소 가져오기
rsGetElementAtYuv_uchar_Y YUV 할당의 Y 구성요소 가져오기
rsSample 텍스처 할당의 값 샘플링
rsSetElementAt 할당 셀 설정

함수

rsAllocationCopy1DRange : 할당 간에 연속된 셀 복사

void rsAllocationCopy1DRange(rs_allocation dstAlloc, uint32_t dstOff, uint32_t dstMip, uint32_t count, rs_allocation srcAlloc, uint32_t srcOff, uint32_ srcMt{/1) API 수준 14에 추가되었습니다.
매개변수
dstAlloc셀을 복사할 할당입니다.
dstOff복사할 첫 번째 셀의 대상의 오프셋입니다.
dstMip대상 할당의 밉 수준입니다. 밉 매핑이 사용되지 않는 경우 0입니다.
복사할 셀 수입니다.
srcAlloc소스 할당.
src 사용 중지복사할 첫 번째 셀의 소스의 오프셋입니다.
srcMip소스 할당의 밉 수준입니다. 밉 매핑이 사용되지 않는 경우 0입니다.

한 할당에서 다른 할당으로 지정된 수의 셀을 복사합니다.

두 할당은 서로 달라야 합니다. 이 함수를 사용하여 동일한 할당 내에서 복사하면 정의되지 않은 결과가 생성됩니다.

이 함수는 오프셋과 개수가 할당 크기를 초과하는지 확인하지 않습니다. 주의:

이 함수는 1D 할당 사이에서만 호출해야 합니다. 다른 할당에서 호출하는 것은 정의되어 있지 않습니다.

이 함수는 커널 내부에서 호출하거나 커널에서 직접 또는 간접적으로 호출할 수 있는 함수에서 호출해서는 안 됩니다. 그렇게 하면 런타임 오류가 발생합니다.

rsAllocationCopy2DRange : 할당 사이에 직사각형 영역 복사

void rsAllocationCopy2DRange(rs_allocation dstAlloc, uint32_t dstXoff, uint32_t dstYoff, uint32_t dstMip, rs_allocation_cubemap_face dipstFace, uint32_face dipstFace, uint32_face dipstFace, uint32_face dipstFace, uint32_t}heightstFace, uint32_t}2_6, uint32_t} heightstFace, uint32_t}heightstFace, uint32_t}2_6, API 수준 14에 추가되었습니다.
매개변수
dstAlloc셀을 복사할 할당입니다.
dstXoff설정할 지역의 대상에서 X 오프셋입니다.
dstYoff설정할 지역의 대상 위치의 Y 오프셋입니다.
dstMip대상 할당의 밉 수준입니다. 밉 매핑이 사용되지 않는 경우 0입니다.
dstFace대상 할당의 큐브맵 페이스 큐브맵이 아닌 할당에서는 무시됩니다.
너비업데이트할 수신 지역의 너비입니다.
업데이트할 수신 지역의 높이입니다.
srcAlloc소스 할당.
srcXoff소스의 X 오프셋입니다.
소스 요프소스의 Y 오프셋입니다.
srcMip소스 할당의 밉 수준입니다. 밉 매핑이 사용되지 않는 경우 0입니다.
src얼굴소스 할당의 큐브맵 면 큐브맵이 아닌 할당에서는 무시됩니다.

하나의 할당에서 다른 할당으로 셀의 직사각형 영역을 복사합니다. (너비 * 높이) 셀이 복사됩니다.

두 할당은 서로 달라야 합니다. 이 함수를 사용하여 동일한 할당 내에서 복사하면 정의되지 않은 결과가 생성됩니다.

이 함수는 소스 또는 대상 리전이 각 할당 크기를 초과하는지 확인하지 않습니다. 주의:

이 함수는 2D 할당 사이에서만 호출해야 합니다. 다른 할당에서 호출하는 것은 정의되어 있지 않습니다.

이 함수는 커널 내부에서 호출하거나 커널에서 직접 또는 간접적으로 호출할 수 있는 함수에서 호출해서는 안 됩니다. 그렇게 하면 런타임 오류가 발생합니다.

rsAllocationVLoadX : 스칼라 할당에서 벡터 가져오기

char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
double2 rsAllocationVLoadX_double2(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
double2 rsAllocationVLoadX_double2(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
double2 rsAllocationVLoadX_double2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
double3 rsAllocationVLoadX_double3(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
double3 rsAllocationVLoadX_double3(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
double3 rsAllocationVLoadX_double3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
double4 rsAllocationVLoadX_double4(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
double4 rsAllocationVLoadX_double4(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
double4 rsAllocationVLoadX_double4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x); API 수준 22에 추가되었습니다.
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
매개변수
a데이터를 가져올 할당입니다.
x복사할 첫 번째 셀 할당의 X 오프셋입니다.
y복사할 첫 번째 셀 할당의 Y 오프셋입니다.
z복사할 첫 번째 셀 할당의 Z 오프셋입니다.

이 함수는 할당의 연속적인 셀로 구성된 벡터를 반환합니다. 할당에 스칼라가 포함되어 있다고 가정합니다.

이름의 'X'는 X 색인을 늘리면 연속된 값이 추출됨을 나타냅니다. 현재 다른 측정기준을 증분하는 연속된 값을 가져오는 함수는 없습니다. 대신 rsGetElementAt()을 여러 번 호출하세요.

예를 들어 rsAllocationVLoadX_int4(a, 20, 30)를 호출하면 a[20, 30], a[21, 30], a[22, 30], a[23, 30] 으로 구성된 int4가 반환됩니다.

3차원 할당에서 검색할 때는 x, y, z 변형을 사용하세요. 마찬가지로 2차원 할당에는 x, y 변형을, 단차원 할당에는 x를 사용합니다.

효율성을 위해 이 함수는 입력을 검증하지 않습니다. X 색인을 래핑하려고 하거나, 할당 크기를 초과하거나, 할당의 차원과 호환되지 않는 색인을 사용하면 정의되지 않은 결과가 생성됩니다.

rsAllocationVStoreX()도 참고하세요.

rsAllocationVStoreX : 벡터를 스칼라 할당에 저장

void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_double2(rs_allocation a, double2 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_double2(rs_allocation a, double2 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_double2(rs_allocation a, double2 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_double3(rs_allocation a, double3 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_double3(rs_allocation a, double3 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_double3(rs_allocation a, double3 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_double4(rs_allocation a, double4 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_double4(rs_allocation a, double4 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_double4(rs_allocation a, double4 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y); API 수준 22에 추가되었습니다.
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y, uint32_t z); API 수준 22에 추가되었습니다.
매개변수
a데이터를 저장할 할당입니다.
저장할 값입니다.
x복사할 첫 번째 셀 할당의 X 오프셋입니다.
y복사할 첫 번째 셀 할당의 Y 오프셋입니다.
z복사할 첫 번째 셀 할당의 Z 오프셋입니다.

이 함수는 벡터의 항목을 할당의 연속적인 셀에 저장합니다. 할당에 스칼라가 포함되어 있다고 가정합니다.

이름에 포함된 'X'는 X 색인을 늘려 연속적인 값이 저장됨을 나타냅니다. 다른 측정기준을 증분하는 연속된 값을 저장하는 함수는 현재 없습니다. 대신 rsSetElementAt()을 여러 번 호출하세요.

예를 들어 rsAllocationVStoreX_int3(a, v, 20, 30)을 호출하면 v.x는 a[20, 30]에, v.y는 a[21, 30]에, v.z는 a[22, 30]에 저장됩니다.

3차원 할당에 저장할 때는 x, y, z 변형을 사용하세요. 마찬가지로 2차원 할당에는 x, y 변형을, 단차원 할당에는 x를 사용합니다.

효율성을 위해 이 함수는 입력을 검증하지 않습니다. X 색인을 래핑하려고 하거나, 할당 크기를 초과하거나, 할당의 측정기준과 호환되지 않는 색인을 사용하면 정의되지 않은 결과가 발생합니다.

rsAllocationVLoadX()도 참고하세요.

rsGetElementAt : 할당에서 셀 반환

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); API 수준 23에 추가되었습니다.
half rsGetElementAt_half(rs_allocation a, uint32_t x, uint32_t y); API 수준 23에 추가되었습니다.
half rsGetElementAt_half(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 23에 추가되었습니다.
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x); API 수준 23에 추가되었습니다.
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x, uint32_t y); API 수준 23에 추가되었습니다.
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 23에 추가되었습니다.
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x); API 수준 23에 추가되었습니다.
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x, uint32_t y); API 수준 23에 추가되었습니다.
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 23에 추가되었습니다.
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x); API 수준 23에 추가되었습니다.
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x, uint32_t y); API 수준 23에 추가되었습니다.
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); API 수준 23에 추가되었습니다.
int rsGetElementAt_int(rs_allocation a, uint32_t x);
int rsGetElementAt_int(rs_allocation a, uint32_t x, uint32_t y);
int rsGetElementAt_int(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
int2 rsGetElementAt_int2(rs_allocation a, uint32_t x);
int2 rsGetElementAt_int2(rs_allocation a, uint32_t x, uint32_t y);
int2 rsGetElementAt_int2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
int3 rsGetElementAt_int3(rs_allocation a, uint32_t x);
int3 rsGetElementAt_int3(rs_allocation a, uint32_t x, uint32_t y);
int3 rsGetElementAt_int3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
int4 rsGetElementAt_int4(rs_allocation a, uint32_t x);
int4 rsGetElementAt_int4(rs_allocation a, uint32_t x, uint32_t y);
int4 rsGetElementAt_int4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
long rsGetElementAt_long(rs_allocation a, uint32_t x);
long rsGetElementAt_long(rs_allocation a, uint32_t x, uint32_t y);
long rsGetElementAt_long(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
long2 rsGetElementAt_long2(rs_allocation a, uint32_t x);
long2 rsGetElementAt_long2(rs_allocation a, uint32_t x, uint32_t y);
long2 rsGetElementAt_long2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
long3 rsGetElementAt_long3(rs_allocation a, uint32_t x);
long3 rsGetElementAt_long3(rs_allocation a, uint32_t x, uint32_t y);
long3 rsGetElementAt_long3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
long4 rsGetElementAt_long4(rs_allocation a, uint32_t x);
long4 rsGetElementAt_long4(rs_allocation a, uint32_t x, uint32_t y);
long4 rsGetElementAt_long4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
short rsGetElementAt_short(rs_allocation a, uint32_t x);
short rsGetElementAt_short(rs_allocation a, uint32_t x, uint32_t y);
short rsGetElementAt_short(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
short2 rsGetElementAt_short2(rs_allocation a, uint32_t x);
short2 rsGetElementAt_short2(rs_allocation a, uint32_t x, uint32_t y);
short2 rsGetElementAt_short2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
short3 rsGetElementAt_short3(rs_allocation a, uint32_t x);
short3 rsGetElementAt_short3(rs_allocation a, uint32_t x, uint32_t y);
short3 rsGetElementAt_short3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
short4 rsGetElementAt_short4(rs_allocation a, uint32_t x);
short4 rsGetElementAt_short4(rs_allocation a, uint32_t x, uint32_t y);
short4 rsGetElementAt_short4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uchar rsGetElementAt_uchar(rs_allocation a, uint32_t x);
uchar rsGetElementAt_uchar(rs_allocation a, uint32_t x, uint32_t y);
uchar rsGetElementAt_uchar(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uchar2 rsGetElementAt_uchar2(rs_allocation a, uint32_t x);
uchar2 rsGetElementAt_uchar2(rs_allocation a, uint32_t x, uint32_t y);
uchar2 rsGetElementAt_uchar2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uchar3 rsGetElementAt_uchar3(rs_allocation a, uint32_t x);
uchar3 rsGetElementAt_uchar3(rs_allocation a, uint32_t x, uint32_t y);
uchar3 rsGetElementAt_uchar3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uchar4 rsGetElementAt_uchar4(rs_allocation a, uint32_t x);
uchar4 rsGetElementAt_uchar4(rs_allocation a, uint32_t x, uint32_t y);
uchar4 rsGetElementAt_uchar4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uint rsGetElementAt_uint(rs_allocation a, uint32_t x);
uint rsGetElementAt_uint(rs_allocation a, uint32_t x, uint32_t y);
uint rsGetElementAt_uint(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uint2 rsGetElementAt_uint2(rs_allocation a, uint32_t x);
uint2 rsGetElementAt_uint2(rs_allocation a, uint32_t x, uint32_t y);
uint2 rsGetElementAt_uint2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uint3 rsGetElementAt_uint3(rs_allocation a, uint32_t x);
uint3 rsGetElementAt_uint3(rs_allocation a, uint32_t x, uint32_t y);
uint3 rsGetElementAt_uint3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
uint4 rsGetElementAt_uint4(rs_allocation a, uint32_t x);
uint4 rsGetElementAt_uint4(rs_allocation a, uint32_t x, uint32_t y);
uint4 rsGetElementAt_uint4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ulong rsGetElementAt_ulong(rs_allocation a, uint32_t x);
ulong rsGetElementAt_ulong(rs_allocation a, uint32_t x, uint32_t y);
ulong rsGetElementAt_ulong(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ulong2 rsGetElementAt_ulong2(rs_allocation a, uint32_t x);
ulong2 rsGetElementAt_ulong2(rs_allocation a, uint32_t x, uint32_t y);
ulong2 rsGetElementAt_ulong2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ulong3 rsGetElementAt_ulong3(rs_allocation a, uint32_t x);
ulong3 rsGetElementAt_ulong3(rs_allocation a, uint32_t x, uint32_t y);
ulong3 rsGetElementAt_ulong3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ulong4 rsGetElementAt_ulong4(rs_allocation a, uint32_t x);
ulong4 rsGetElementAt_ulong4(rs_allocation a, uint32_t x, uint32_t y);
ulong4 rsGetElementAt_ulong4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ushort rsGetElementAt_ushort(rs_allocation a, uint32_t x);
ushort rsGetElementAt_ushort(rs_allocation a, uint32_t x, uint32_t y);
ushort rsGetElementAt_ushort(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ushort2 rsGetElementAt_ushort2(rs_allocation a, uint32_t x);
ushort2 rsGetElementAt_ushort2(rs_allocation a, uint32_t x, uint32_t y);
ushort2 rsGetElementAt_ushort2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ushort3 rsGetElementAt_ushort3(rs_allocation a, uint32_t x);
ushort3 rsGetElementAt_ushort3(rs_allocation a, uint32_t x, uint32_t y);
ushort3 rsGetElementAt_ushort3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);
ushort4 rsGetElementAt_ushort4(rs_allocation a, uint32_t x);
ushort4 rsGetElementAt_ushort4(rs_allocation a, uint32_t x, uint32_t y);
ushort4 rsGetElementAt_ushort4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z);

이 함수는 할당에서 단일 셀을 추출합니다.

3차원 할당에서 검색할 때는 x, y, z 변형을 사용하세요. 마찬가지로 2차원 할당에는 x, y 변형을, 단차원 할당에는 x를 사용합니다.

이 함수에는 두 가지 스타일이 있습니다. 하나는 void*를 사용하여 값의 주소를 반환하고 다른 하나는 실제 값을 반환합니다(예: rsGetElementAt()과 rsGetElementAt_int4()). 원시형의 경우 항상 후자가 더 효율적이므로 후자를 사용합니다.

rsGetElementAtYuv_uchar_U : YUV 할당의 U 구성요소 가져오기

uchar rsGetElementAtYuv_uchar_U(rs_allocation a, uint32_t x, uint32_t y); API 수준 18에 추가되었습니다.

YUV의 2D 할당에서 단일 YUV 값의 U 구성요소를 추출합니다.

할당 내에서 평면과 해상도가 다른 경우 Y, U, V 구성요소가 저장될 수 있습니다. 여기에 제공된 x, y 좌표는 Y 평면의 크기입니다.

rsGetElementAtYuv_uchar_Y()를 참고하세요.

rsGetElementAtYuv_uchar_V : YUV 할당의 V 구성요소 가져오기

uchar rsGetElementAtYuv_uchar_V(rs_allocation a, uint32_t x, uint32_t y); API 수준 18에 추가되었습니다.

YUV의 2D 할당에서 단일 YUV 값의 V 구성요소를 추출합니다.

할당 내에서 평면과 해상도가 다른 경우 Y, U, V 구성요소가 저장될 수 있습니다. 여기에 제공된 x, y 좌표는 Y 평면의 크기입니다.

rsGetElementAtYuv_uchar_Y()를 참고하세요.

rsGetElementAtYuv_uchar_Y : YUV 할당의 Y 구성요소 가져오기

uchar rsGetElementAtYuv_uchar_Y(rs_allocation a, uint32_t x, uint32_t y); API 수준 18에 추가되었습니다.

YUV의 2D 할당에서 단일 YUV 값의 Y 구성요소를 추출합니다.

할당 내에서 평면과 해상도가 다른 경우 Y, U, V 구성요소가 저장될 수 있습니다. 여기에 제공된 x, y 좌표는 Y 평면의 크기입니다.

rsGetElementAtYuv_uchar_U() 및 rsGetElementAtYuv_uchar_V()를 참조하세요.

rsSample : 텍스처 할당에서 값 샘플링

float4 rsSample(rs_allocation a, rs_sampler s, float location); API 수준 16에 추가되었습니다.
float4 rsSample(rs_allocation a, rs_sampler s, float location, float lod); API 수준 16에 추가되었습니다.
float4 rsSample(rs_allocation a, rs_sampler s, float2 location); API 수준 16에 추가되었습니다.
float4 rsSample(rs_allocation a, rs_sampler s, float2 location, float lod); API 수준 16에 추가되었습니다.
매개변수
a샘플링할 할당입니다.
샘플러 상태
위치 정보샘플링할 위치입니다.
로드샘플링할 밉니다. 소수 값의 경우 RS_SAMPLER_LINEAR_MIP_LINEAR이 사용되는 경우 밉 수준이 보간됩니다.

샘플러에서 설명한 방식으로 텍스처 할당에서 값을 가져옵니다.

할당이 1차원인 경우 위치에 부동 소수점 수를 포함한 대안을 사용합니다. 2D의 경우 float2 변형을 사용하세요.

자세한 내용은 android.renderscript.Sampler를 참고하세요.

rsSetElementAt : 할당 셀 설정

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

이 함수는 할당의 단일 셀에 값을 저장합니다.

3차원 할당에 저장할 때는 x, y, z 변형을 사용하세요. 마찬가지로 2차원 할당에는 x, y 변형을, 모노차원 할당에는 x를 사용합니다.

이 함수에는 두 가지 스타일이 있습니다. 하나는 void*를 사용하여 저장할 값을 전달하고, 다른 하나는 실제 값을 인수로 포함합니다(예: rsSetElementAt() vs. rsSetElementAt_int4()). 프리미티브 유형의 경우 항상 후자가 더 효율적이므로 후자를 사용합니다.

rsGetElementAt()도 참고하세요.