Hàm tạo phân bổ RenderScript

Tổng quan

Bạn có thể dùng các hàm bên dưới để tạo Allocations từ một Tập lệnh.

Các hàm này có thể được gọi trực tiếp hoặc gián tiếp từ một hàm không gọi được. Nếu một số đường dẫn luồng điều khiển có thể dẫn đến lệnh gọi đến các hàm này từ hàm hạt nhân RenderScript, thì lỗi trình biên dịch sẽ được tạo.

Tóm tắt

Hàm
rsCreateAllocation Tạo một đối tượng rs_allocation thuộc Loại đã cho.
rsCreateElement Tạo một đối tượng rs_element thuộc loại dữ liệu được chỉ định
rsCreatePixelElement Tạo một đối tượng rs_element thuộc loại dữ liệu và loại dữ liệu được chỉ định
rsCreateType Tạo một đối tượng rs_type có các thuộc tính hình dạng và phần tử được chỉ định
rsCreateVectorElement Tạo một đối tượng rs_element có kiểu dữ liệu và chiều rộng vectơ được chỉ định

Hàm

rsCreateAllocation : Tạo đối tượng rs_allocation thuộc Loại nhất định.

rs_allocation rsCreateAllocation(loại rs_type); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation(loại rs_type, rs_allocation_mipmap_control mipmap, cách sử dụng uint32_t, void* ptr); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation(loại rs_type, sử dụng uint32_t); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_char(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_char(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_char(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_char2(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_char2(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_char2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_char3(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_char3(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_char3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_char4(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_char4(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_char4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_Double(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_Double(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ web Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_Double2(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_Double2(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_22(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_Double3(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_Double3(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_Double3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_Double4(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_Double4(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_Double4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_float(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_float(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_float(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_float2(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_float2(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_float2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_float3(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_float3(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_float3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_float4(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_float4(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_float4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_half(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_half(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_half(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_half2(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_half2(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_half2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_half3(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_half3(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_half3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_half4(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_half4(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_half4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_int(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_int(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_int(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_int2(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_int2(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_int2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_int3(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_int3(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_int3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_int4(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_int4(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_int4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_long(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_long(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_long(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_long2(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_long2(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_long2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_long3(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_long3(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_long3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_long4(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_long4(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_long4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_short(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_short(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_short(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_short2(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_short2(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_short2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_short3(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_short3(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_short3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_short4(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_short4(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_short4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uchar(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uchar(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uchar(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uchar2(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uchar2(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uchar2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uchar3(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uchar3(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uchar3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uchar4(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uchar4(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uchar4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uint(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uint(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uint(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uint2(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uint2(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uint2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uint3(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uint3(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uint3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uint4(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uint4(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_uint4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ulong(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ulong(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ulong(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ulong2(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ulong2(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ulong2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ulong3(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ulong3(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ulong3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ulong4(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ulong4(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ulong4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ushort(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ushort(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ushort(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ushort2(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ushort2(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ushort2(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ushort3(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ushort3(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ushort3(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ushort4(uint32_t dimX); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ushort4(uint32_t dimX, uint32_t dimY); Đã thêm vào API cấp 24
rs_allocation rsCreateAllocation_ushort4(uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
Tham số
loạiLoại phân bổ
mức sử dụngCờ sử dụng cho hoạt động phân bổ
mipmap
sử dụng
điểm
DimX
tối mờ mờ
dimZ (màu đen)

Tạo một đối tượng rs_allocation thuộc Loại và cách sử dụng đã cho.

RS_ALLOCATION_USAGE_SCRIPT và RS_ALLOCATION_USAGE_GRAPHICS_TEXTURE là những cờ sử dụng duy nhất được hỗ trợ cho Allocations được tạo từ trong một Tập lệnh RenderScript.

Bạn cũng có thể dùng các hàm bao bọc rsCreateAllocation_ để trực tiếp tạo Allocations các kiểu số vô hướng và vectơ mà không cần tạo đối tượng rs_element hoặc rs_type trung gian.

Ví dụ: rsCreateAllocation_int4() trả về Allocation gồm loại dữ liệu int4 của các phương diện đã chỉ định.

rsCreateElement : Tạo một đối tượng rs_element thuộc loại dữ liệu được chỉ định

rs_element rsCreateElement(int32_t data_type, int32_t data_=, bool được chuẩn hoá, uint32_t vecSize); Đã thêm vào API cấp 24
rs_element rsCreateElement(rs_data_type data_type); Đã thêm vào API cấp 24
Tham số
loại_dữ_liệuLoại dữ liệu của Phần tử
loại_dữ_liệu
được chuẩn hoá
vecSize

Tạo một đối tượng rs_element của loại dữ liệu được chỉ định. Loại dữ liệu của Phần tử sẽ được đặt thành RS_KIND_USER và vector_width sẽ được đặt thành 1, cho biết các giá trị không phải vectơ.

rsCreatePixelElement : Tạo một đối tượng rs_element thuộc loại dữ liệu và loại dữ liệu được chỉ định

rs_element rsCreatePixelElement(rs_data_type data_type, rs_data_ kind dữ liệu_loại); Đã thêm vào API cấp 24
Tham số
loại_dữ_liệuLoại dữ liệu của Phần tử
loại_dữ_liệuLoại dữ liệu của Phần tử

Tạo một đối tượng rs_element thuộc loại dữ liệu và loại dữ liệu đã chỉ định. Vectơ_chiều rộng của Phần tử sẽ được đặt thành 1, cho biết các giá trị không phải vectơ.

rsCreateType : Tạo một đối tượng rs_type có các thuộc tính phần tử và hình dạng được chỉ định

rs_type rsCreateType(phần tử rs_element, uint32_t dimX); Đã thêm vào API cấp 24
rs_type rsCreateType(phần tử rs_element, uint32_t dimX, uint32_t diy); Đã thêm vào API cấp 24
rs_type rsCreateType(phần tử rs_element, uint32_t dimX, uint32_t dimY, uint32_t dimZ); Đã thêm vào API cấp 24
rs_type rsCreateType(phần tử rs_element, uint32_t dimX, uint32_t dimY, uint32_t dimZ, bool mipmaps, mặt bool, rs_yuv_format yuv_format); Đã thêm vào API cấp 24
Tham số
phần tửPhần tử được liên kết với Loại
DimXKích thước dọc theo phương diện X
tối mờ mờKích thước dọc theo phương diện Y
dimZ (màu đen)Kích thước dọc theo phương diện Z
mipmapCờ cho biết liệu Loại có chuỗi mipmap hay không
khuôn mặtCờ cho biết liệu Loại có phải là bản đồ khối lập phương hay không
định_dạng_yuvBố cục YUV cho Loại

Tạo một đối tượng rs_type có các thuộc tính Phần tử và hình dạng được chỉ định.

dimX chỉ định kích thước của chiều X.

dimY, nếu có và khác 0, thì phương diện Y có mặt và cho biết kích thước của chiều Y.

dimZ, nếu có và khác 0, thì phương diện Z có mặt và cho biết kích thước của tham số đó.

mipmap cho biết sự hiện diện của mức độ chi tiết (LOD).

mặt cho biết sự hiện diện của các mặt trong bản đồ lập phương.

yuv_format cho biết định dạng YUV được liên kết (hoặc RS_YUV_NONE).

rsCreateVectorElement : Tạo một đối tượng rs_element có loại dữ liệu và chiều rộng vectơ được chỉ định

rs_element rsCreateVectorElement(rs_data_type data_type, uint32_t vector_width); Đã thêm vào API cấp 24
Tham số
loại_dữ_liệuLoại dữ liệu của Phần tử
chiều rộng_vectơChiều rộng vectơ (2, 3 hoặc 4)

Tạo một đối tượng rs_element có kiểu dữ liệu và chiều rộng vectơ được chỉ định. Giá trị của vector_width phải là 2, 3 hoặc 4. Loại dữ liệu của Phần tử sẽ được đặt thành RS_KIND_USER.