Funkcje dostępu do danych alokacji skryptu renderowania

Przegląd

Opisane poniżej funkcje służą do pobierania i ustawiania komórek, które składają się na alokację.

  • Dostęp do poszczególnych komórek można uzyskać za pomocą funkcji rsGetElementAt* i rsSetElementAt.
  • Za pomocą funkcji rsAllocationCopy* i rsAllocationV* możesz kopiować wiele komórek.
  • Aby pobierać wartości za pomocą próbnika, użyj rsSample.
Funkcje rsGetElementAt i rsSetElement* mają nieco błędne nazwy. Nie pobierają ani nie ustawiają elementów, które są podobne do typów danych. Pobierają lub ustawiają komórki. Można ich wyobrazić sobie jako rsGetCellAt i rsSetCellAt.

Podsumowanie

Funkcje
rsAllocationCopy1DRange, Kopiuj następujące po sobie komórki między przydziałami
rsAllocationCopy2DRange, Kopiuj prostokątny region komórek między przydziałami
rsAllocationVLoadX, Pobierz wektor z przydziału skalarów
rsAllocationVStoreX, Zapisuj wektor w alokacji skalarnych
rsGetElementAt Zwracanie komórki z alokacji
rsGetElementAtYuv_uchar_U Pobierz komponent U w przydziału jednostek YUV
rsGetElementAtYuv_uchar_V (tylko w języku angielskim) Pobierz komponent V przydziału jednostek YUV
rsGetElementAtYuv_uchar_Y (w języku angielskim) Pobierz komponent Y przydziału jednostek YUV
rsSample, Próbkowanie wartości z przydziału tekstury
rsSetElementAt, Ustaw komórkę w alokacji

Funkcje

rsAllocationCopy1DRange: kopiuj następujące po sobie komórki między alokacjami

void rsAllocationCopy1DRange(rs_allocation dstAlloc, uint32_t dstOff, uint32_t dstMip, uint32_t liczba, rs_allocation srcAlloc, uint32_t srcOff, uint32_t Dodano do poziomu interfejsu API 14.
Parametry
dstAllocPrzydział, do którego mają być skopiowane komórki.
dstWyłączonoPrzesunięcie w miejscu docelowym pierwszej komórki, do której chcesz skopiować zawartość.
DSTMipPoziom MIME w przydziale miejsca docelowego. Wartość 0, jeśli mapowanie mip nie jest używane.
liczbaLiczba komórek do skopiowania.
srcPrzydziałPrzydział źródła.
srcWyłączonoPrzesunięcie w źródle pierwszej komórki do skopiowania.
srcMip.Poziom MIME w przydziale źródła. Wartość 0, jeśli mapowanie mip nie jest używane.

Kopiuje określoną liczbę komórek z jednego przydziału do drugiego.

Te 2 przydziały muszą się różnić. Użycie tej funkcji do skopiowania w ramach tego samego przydziału daje niezdefiniowane wyniki.

Ta funkcja nie sprawdza, czy przesunięcie plus liczba przekracza rozmiar żadnego z alokacji. Zachowaj ostrożność.

Funkcja ta powinna być wywoływana tylko między alokacjami 1D. Wywoływanie go w innych przydziałach jest niezdefiniowane.

Funkcja ta nie powinna być wywoływana z jądra jądra ani z żadnej funkcji, która może być wywoływana bezpośrednio lub pośrednio z jądra. Spowodowałoby to błąd środowiska wykonawczego.

rsAllocationCopy2DRange: kopiowanie prostokątnego regionu komórek między przydziałami

void rsAllocationCopy2DRange(rs_allocation dstAlloc, uint32_t dstXoff, uint32_t dstYoff, uint32_t dstMip, rs_allocation_cubemap_face, rstFace, uint32_t szerokość, uint32_t Dodano do poziomu interfejsu API 14.
Parametry
dstAllocPrzydział, do którego mają być skopiowane komórki.
DSTXoffPrzesunięcie X w miejscu docelowym regionu do ustawienia.
DSTYoffPrzesunięcie Y w miejscu docelowym regionu do ustawienia.
DSTMipPoziom MIME w przydziale miejsca docelowego. Wartość 0, jeśli mapowanie mip nie jest używane.
DSAMapa sześcienna przydziału miejsca docelowego. Ignorowany w przypadku alokacji, które nie są mapami sześciennymi.
widthSzerokość regionu przychodzącego do zaktualizowania.
wzrostWysokość regionu przychodzącego do zaktualizowania.
srcPrzydziałPrzydział źródła.
srcXoffprzesunięcie X w źródle.
srcYoffPrzesunięcie Y w źródle.
srcMip.Poziom MIME w przydziale źródła. Wartość 0, jeśli mapowanie mip nie jest używane.
Źródłowa twarzMapa sześcienna alokacji źródła. Ignorowany w przypadku alokacji, które nie są mapami sześciennymi.

Kopiuje prostokątny obszar komórek z jednego przydziału do drugiego. Kopiowane są komórki (szerokość * wysokość).

Te 2 przydziały muszą się różnić. Użycie tej funkcji do skopiowania w ramach tego samego przydziału daje niezdefiniowane wyniki.

Ta funkcja nie sprawdza, czy region źródłowy czy docelowy przekracza rozmiar odpowiedniego przydziału. Zachowaj ostrożność.

Funkcja ta powinna być wywoływana tylko między alokacjami 2D. Wywoływanie go w innych przydziałach jest niezdefiniowane.

Funkcja ta nie powinna być wywoływana z jądra jądra ani z żadnej funkcji, która może być wywoływana bezpośrednio lub pośrednio z jądra. Spowodowałoby to błąd środowiska wykonawczego.

rsAllocationVLoadX : pobierz wektor z alokacji skalarnych

char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
char2 rsAllocationVLoadX_char2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
char3 rsAllocationVLoadX_char3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
char4 rsAllocationVLoadX_char4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
double2 rsAllocationVLoadX_double2(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
double2 rsAllocationVLoadX_double2(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
double2 rsAllocationVLoadX_double2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
double3 rsAllocationVLoadX_double3(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
double3 rsAllocationVLoadX_double3(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
double3 rsAllocationVLoadX_double3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
double4 rsAllocationVLoadX_double4(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
double4 rsAllocationVLoadX_double4(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
Double4 rsAllocationVLoadX_double4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
float2 rsAllocationVLoadX_float2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
float3 rsAllocationVLoadX_float3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
float4 rsAllocationVLoadX_float4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
int2 rsAllocationVLoadX_int2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
int3 rsAllocationVLoadX_int3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
int4 rsAllocationVLoadX_int4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
long2 rsAllocationVLoadX_long2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
long3 rsAllocationVLoadX_long3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
long4 rsAllocationVLoadX_long4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
short2 rsAllocationVLoadX_short2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
short3 rsAllocationVLoadX_short3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
short4 rsAllocationVLoadX_short4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
uchar2 rsAllocationVLoadX_uchar2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
uchar3 rsAllocationVLoadX_uchar3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
uchar4 rsAllocationVLoadX_uchar4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
uint2 rsAllocationVLoadX_uint2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
uint3 rsAllocationVLoadX_uint3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
uint4 rsAllocationVLoadX_uint4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
ulong2 rsAllocationVLoadX_ulong2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
ulong3 rsAllocationVLoadX_ulong3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
ulong4 rsAllocationVLoadX_ulong4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
ushort2 rsAllocationVLoadX_ushort2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
ushort3 rsAllocationVLoadX_ushort3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 22
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
ushort4 rsAllocationVLoadX_ushort4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
Parametry
aPrzydział, z którego mają być pobierane dane.
xPrzesunięcie X w przydziale pierwszej komórki, z której ma zostać skopiowana.
YPrzesunięcie Y w przydziale pierwszej komórki, z której ma zostać skopiowana.
ZPrzesunięcie Z w przydziale pierwszej komórki, z której ma zostać skopiowana.

Ta funkcja zwraca wektor składający się z kolejnych komórek w ramach przydziału. Zakładamy, że alokacja zawiera skalary.

Znak „X” w nazwie oznacza, że kolejne wartości są wyodrębniane przez zwiększenie indeksu X. Obecnie nie ma funkcji, które mogłyby uzyskiwać kolejne wartości przyrostowe w innych wymiarach. Użyj zamiast tego wielu wywołań funkcji rsGetElementAt().

Na przykład wywołanie metody rsAllocationVLoadX_int4(a, 20, 30) powoduje zwracanie wartości int4 składającej się z a[20, 30], a[21, 30], a[22, 30] oraz a[23, 30].

Przy pobieraniu z przydziałów trójwymiarowych użyj wariantu x, y i z. Podobnie użyj wariantu x i y do przydziałów dwuwymiarowych, a wariantu x do przydziałów jednowymiarowych.

Ze względu na wydajność ta funkcja nie weryfikuje danych wejściowych. Próba opakowania indeksu X, przekroczenie rozmiaru przydziału lub użycie indeksów niezgodnych z wymiarami przydziału przynosi niezdefiniowane wyniki.

Zobacz też rsAllocationVStoreX().

rsAllocationVStoreX : przechowywanie wektora w alokacji skalarnych

void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_Double2(rs_allocation a, double2 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_Double2(rs_allocation a, double2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_Double2(rs_allocation a, double2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_double3(rs_allocation a, Double3 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_Double3(rs_allocation a, double3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_Double3(rs_allocation a, double3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_Double4(rs_allocation a, double4 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_Double4(rs_allocation a, double4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_Double4(rs_allocation a, double4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 22
void rsAllocationVStoreX_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 22
Parametry
aPrzydział zapisu danych.
wartośćWartość do zapisania.
xPrzesunięcie X w przydziale pierwszej komórki, do której ma zostać skopiowana.
YPrzesunięcie Y w przydziale pierwszej komórki, do której ma zostać skopiowana.
Zprzesunięcie Z w przydziale pierwszej komórki, do której zostanie skopiowana.

Ta funkcja przechowuje wpisy wektora w kolejnych komórkach alokacji. Zakładamy, że alokacja zawiera skalary.

Znak „X” w nazwie oznacza, że kolejne wartości są przechowywane przez zwiększenie indeksu X. Obecnie nie ma funkcji przechowujących kolejne wartości rosnąco w innych wymiarach. Zamiast tego użyj wielu wywołań funkcji rsSetElementAt().

Na przykład podczas wywoływania rsAllocationVStoreX_int3(a, v, 20, 30) wersja v.x jest przechowywana w a[20, 30], v.y a[21, 30] i v.z o [22, 30].

Jeśli zapisujesz je w trójwymiarowych przydziałach, użyj wariantu x, y i z. Podobnie użyj wariantu x i y do przydziałów dwuwymiarowych, a wariantu x do przydziałów jednowymiarowych.

Ze względu na wydajność ta funkcja nie weryfikuje danych wejściowych. Próba opakowania indeksu X, przekroczenia rozmiaru przydziału lub użycie indeksów niezgodnych z wymiarami zysków alokacji w celu uzyskania niezdefiniowanych wyników.

Zobacz też rsAllocationVLoadX().

rsGetElementAt : zwraca komórkę z alokacji

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); Dodano do poziomu interfejsu API 23.
half rsGetElementAt_half(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 23.
half rsGetElementAt_half(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 23.
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 23.
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 23.
half2 rsGetElementAt_half2(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 23.
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 23.
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 23.
half3 rsGetElementAt_half3(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 23.
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x); Dodano do poziomu interfejsu API 23.
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 23.
half4 rsGetElementAt_half4(rs_allocation a, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu 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);

Ta funkcja wyodrębnia z alokacji pojedynczą komórkę.

Przy pobieraniu z przydziałów trójwymiarowych użyj wariantu x, y i z. Podobnie użyj wariantu x i y do przydziałów dwuwymiarowych, a wariantu x do przydziałów jednowymiarowych.

Ta funkcja ma 2 style. Jeden zwraca adres wartości, używając pustej*, a drugi zwraca rzeczywistą wartość, np. rsGetElementAt() kontra rsGetElementAt_int4(). W przypadku typów podstawowych używaj zawsze tej drugiej wartości, ponieważ jest ona wydajniejsza.

rsGetElementAtYuv_uchar_U: pobierz komponent U w przydziale jednostek YUV.

uchar rsGetElementAtYuv_uchar_U(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18

Wyodrębnia komponent U w pojedynczej wartości YUV z przydziału 2D YUV.

W obrębie przydziału komponenty Y, U i V mogą być przechowywane, jeśli występują w różnych płaszczyznach i w różnych rozdzielczościach. Podane współrzędne x i y są podane w wymiarach płaszczyzny Y.

Patrz funkcja rsGetElementAtYuv_uchar_Y().

rsGetElementAtYuv_uchar_V : pobierz komponent V przydziału YUV.

uchar rsGetElementAtYuv_uchar_V(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18

Wyodrębnia komponent V pojedynczej wartości YUV z przydziału 2D jednostek YUV.

W obrębie przydziału komponenty Y, U i V mogą być przechowywane, jeśli występują w różnych płaszczyznach i w różnych rozdzielczościach. Podane współrzędne x i y są podane w wymiarach płaszczyzny Y.

Patrz funkcja rsGetElementAtYuv_uchar_Y().

rsGetElementAtYuv_uchar_Y: pobierz komponent Y przydziału YUV.

uchar rsGetElementAtYuv_uchar_Y(rs_allocation a, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18

Wyodrębnia komponent Y pojedynczej wartości YUV z przydziału 2D jednostek YUV.

W obrębie przydziału komponenty Y, U i V mogą być przechowywane, jeśli występują w różnych płaszczyznach i w różnych rozdzielczościach. Podane współrzędne x i y są podane w wymiarach płaszczyzny Y.

Patrz rsGetElementAtYuv_uchar_U() i rsGetElementAtYuv_uchar_V().

rsSample : próbkowanie wartości z alokacji tekstury

float4 rsSample(rs_allocation a, rs_sampler s, float location); Dodano do poziomu interfejsu API 16.
float4 rsSample(rs_allocation a, rs_sampler s, float location, float lod); Dodano do poziomu interfejsu API 16.
float4 rsSample(rs_allocation a, rs_sampler s, float2 location); Dodano do poziomu interfejsu API 16.
float4 rsSample(rs_allocation a, rs_sampler s, float2 location, float lod); Dodano do poziomu interfejsu API 16.
Parametry
aPrzydział do próbkowania.
sStan próbkowania.
lokalizacjaLokalizacja, z której pochodzi próbka.
LodPoziom miP, z którego uzyskano próbkowanie dla wartości ułamkowych, zostanie interpolowany, jeśli używana jest funkcja RS_SAMPLER_LINEAR_MIP_LINEAR.

Pobiera wartość z przydziału tekstury w sposób opisany przez próbkę.

Jeśli przydział to 1 D, użyj wariantu z liczbą zmiennoprzecinkową na potrzeby lokalizacji. W przypadku 2D użyj wariantu float2.

Więcej informacji znajdziesz na stronie android.renderscript.Sampler.

rsSetElementAt : ustaw komórkę alokacji

void rsSetElementAt(rs_allocation a, void* ptr, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt(rs_allocation a, void* ptr, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_char(rs_allocation a, char val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_char(rs_allocation a, char val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_char(rs_allocation a, char val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_char2(rs_allocation a, char2 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_char2(rs_allocation a, char2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_char3(rs_allocation a, char3 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_char3(rs_allocation a, char3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_char4(rs_allocation a, char4 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_char4(rs_allocation a, char4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_double(rs_allocation a, podwójna wartość, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_double(rs_allocation a, podwójna wartość, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_Double(rs_allocation a, podwójna wartość, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_double2(rs_allocation a, Double2 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_double2(rs_allocation a, Double2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_Double2(rs_allocation a, Double2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_double3(rs_allocation a, Double3 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_double3(rs_allocation a, double3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_double3(rs_allocation a, Double3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_Double4(rs_allocation a, double4 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_Double4(rs_allocation a, Double4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_double4(rs_allocation a, double4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_float(rs_allocation a, float, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_float(rs_allocation a, float, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_float(rs_allocation a, wartość zmiennoprzecinkowa, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_float2(rs_allocation a, float2 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_float2(rs_allocation a, float2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_float2(rs_allocation a, float2, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_float3(rs_allocation a, float3 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_float3(rs_allocation a, float3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_float3(rs_allocation a, float3, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_float4(rs_allocation a, float4 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_float4(rs_allocation a, float4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_float4(rs_allocation a, float4, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_half(rs_allocation a, połowa wartości, uint32_t x); Dodano do poziomu interfejsu API 23.
void rsSetElementAt_half(rs_allocation a, połowa wartości, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 23.
void rsSetElementAt_half(rs_allocation a, połowa wartości, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 23.
void rsSetElementAt_half2(rs_allocation a, pół2 wartość, uint32_t x); Dodano do poziomu interfejsu API 23.
void rsSetElementAt_half2(rs_allocation a, half2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 23.
void rsSetElementAt_half2(rs_allocation a, half2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 23.
void rsSetElementAt_half3(rs_allocation a, pół3 wartość, uint32_t x); Dodano do poziomu interfejsu API 23.
void rsSetElementAt_half3(rs_allocation a, half3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 23.
void rsSetElementAt_half3(rs_allocation a, half3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 23.
void rsSetElementAt_half4(rs_allocation a, half4 val, uint32_t x); Dodano do poziomu interfejsu API 23.
void rsSetElementAt_half4(rs_allocation a, half4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 23.
void rsSetElementAt_half4(rs_allocation a, half4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 23.
void rsSetElementAt_int(rs_allocation a, int val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_int(rs_allocation a, int val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_int(rs_allocation a, int val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_int2(rs_allocation a, int2 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_int2(rs_allocation a, int2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_int3(rs_allocation a, int3 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_int3(rs_allocation a, int3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_int4(rs_allocation a, int4 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_int4(rs_allocation a, int4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_long(rs_allocation a, long val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_long(rs_allocation a, long val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_long(rs_allocation a, long val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_long2(rs_allocation a, long2 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_long2(rs_allocation a, long2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_long3(rs_allocation a, long3 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_long3(rs_allocation a, long3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_long4(rs_allocation a, long4 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_long4(rs_allocation a, long4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_short(rs_allocation a, krótka wartość, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_short(rs_allocation a, krótka wartość, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_short(rs_allocation a, short val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_short2(rs_allocation a, short2 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_short2(rs_allocation a, short2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_short3(rs_allocation a, short3 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_short3(rs_allocation a, short3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_short4(rs_allocation a, short4 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_short4(rs_allocation a, short4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uchar(rs_allocation a, uchar val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uchar(rs_allocation a, uchar val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uchar(rs_allocation a, uchar val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uchar2(rs_allocation a, uchar2 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uchar2(rs_allocation a, uchar2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uchar3(rs_allocation a, uchar3 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uchar3(rs_allocation a, uchar3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uchar4(rs_allocation a, uchar4 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uchar4(rs_allocation a, uchar4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uint(rs_allocation a, uint val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uint(rs_allocation a, uint val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uint(rs_allocation a, uint val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uint2(rs_allocation a, uint2 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uint2(rs_allocation a, uint2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uint3(rs_allocation a, uint3 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uint3(rs_allocation a, uint3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uint4(rs_allocation a, uint4 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_uint4(rs_allocation a, uint4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ulong(rs_allocation a, ulong val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ulong(rs_allocation a, ulong val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ulong(rs_allocation a, ulong val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ulong2(rs_allocation a, ulong2 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ulong2(rs_allocation a, ulong2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ulong3(rs_allocation a, ulong3 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ulong3(rs_allocation a, ulong3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ulong4(rs_allocation a, ulong4 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ulong4(rs_allocation a, ulong4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ushort(rs_allocation a, ushort val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ushort(rs_allocation a, ushort val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ushort(rs_allocation a, ushort val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ushort2(rs_allocation a, ushort2 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ushort2(rs_allocation a, ushort2 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ushort3(rs_allocation a, ushort3 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ushort3(rs_allocation a, ushort3 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ushort4(rs_allocation a, ushort4 val, uint32_t x); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y); Dodano do poziomu interfejsu API 18
void rsSetElementAt_ushort4(rs_allocation a, ushort4 val, uint32_t x, uint32_t y, uint32_t z); Dodano do poziomu interfejsu API 18

Ta funkcja przechowuje wartość w jednej komórce przydziału.

Jeśli zapisujesz je w trójwymiarowych przydziałach, użyj wariantu x, y i z. Podobnie użyj wariantu x i y do alokacji dwuwymiarowych, a wariantu x do przydziałów jednowymiarowych.

Ta funkcja ma 2 style. Jedna z nich przekazuje wartość do zapisania za pomocą pustej*, a druga – jako argument, np. rsSetElementAt() i rsSetElementAt_int4(). W przypadku typów podstawowych zawsze używaj tej drugiej, bo jest ona bardziej efektywna.

Patrz też rsGetElementAt().