개요
아래 함수는 할당을 구성하는 셀을 가져오고 설정하는 데 사용할 수 있습니다.
- 개별 셀은 rsGetElementAt* 및 rsSetElementAt 함수를 사용하여 액세스됩니다.
- rsAllocationCopy* 및 rsAllocationV* 함수를 사용하여 여러 셀을 복사할 수 있습니다.
- 샘플러를 통해 값을 가져오려면 rsSample을 사용합니다.
요약
함수 | |
---|---|
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()도 참고하세요.