Обзор
Приведенные ниже функции можно использовать для создания выделений из сценария.
Эти функции можно вызывать прямо или косвенно из вызываемой функции. Если какой-либо путь потока управления может привести к вызову этих функций из функции ядра RenderScript, будет сгенерирована ошибка компилятора.
Краткое содержание
Функции | |
---|---|
rsCreateAllocation | Создайте объект rs_allocation заданного типа. |
rsCreateElement | Создает объект rs_element указанного типа данных. |
rsCreatePixelElement | Создает объект rs_element указанного типа данных и типа данных. |
rsCreateType | Создает объект rs_type с указанными атрибутами элемента и формы. |
rsCreateVectorElement | Создает объект rs_element указанного типа данных и ширины вектора. |
Функции
rsCreateAlllocation : создать объект rs_allocation заданного типа.
rs_allocation rsCreateAllocation (тип rs_type ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation (тип rs_type , rs_allocation_mipmap_control mipmap, использование uint32_t , void* ptr); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation (тип rs_type , использование uint32_t ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_char ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_char ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_char( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_char2 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_char2 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_char2 ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_char3 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_char3( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_char3( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_char4 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_char4 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_char4 ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_double ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_double ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_double( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_double2 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_double2 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_double2( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_double3 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_double3( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_double3( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_double4 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_double4( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_double4( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_float ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_float ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_float( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_float2 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_float2 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_float2 ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_float3 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_float3 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_float3( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_float4 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_float4 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_float4 ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_half ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_half ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_half( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_half2 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_half2 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_half2( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_half3 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_half3( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_half3( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_half4 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_half4 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_half4( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_int ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_int ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_int( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_int2 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_int2 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_int2( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_int3 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_int3 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_int3( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_int4 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_int4 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_int4( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAlllocation_long ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_long ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_long ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_long2 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_long2 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_long2( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_long3 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_long3 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_long3( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_long4 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_long4 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_long4 ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_short ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_short ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_short ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_short2 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_short2 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_short2 ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_short3 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_short3 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_short3( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_short4 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_short4 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_short4 ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uchar ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uchar ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uchar ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uchar2 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uchar2 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uchar2( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uchar3 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uchar3 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uchar3( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uchar4 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uchar4 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uchar4( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uint ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uint ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uint( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uint2 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uint2 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uint2( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uint3 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uint3( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uint3( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uint4 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uint4 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_uint4( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ulong ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ulong ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ulong ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ulong2 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ulong2 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ulong2 ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ulong3 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ulong3 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ulong3( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ulong4 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ulong4 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ulong4 ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ushort ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ushort( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ushort( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ushort2 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ushort2 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ushort2( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ushort3 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ushort3 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ushort3( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ushort4 ( uint32_t dimX); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ushort4 ( uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_allocation rsCreateAllocation_ushort4 ( uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
Параметры
тип | Тип распределения |
---|---|
использование | Флаг использования для выделения |
MIP-карта | |
обычаи | |
ПТР | |
dimX | |
тусклый | |
димZ |
Создает объект rs_allocation заданного типа и использования.
RS_ALLOCATION_USAGE_SCRIPT и RS_ALLOCATION_USAGE_GRAPHICS_TEXTURE — единственные поддерживаемые флаги использования для выделений, созданных из сценария RenderScript.
Вы также можете использовать rsCreateAllocation_
Например, rsCreateAllocation_int4() возвращает тип данных Allocation of int4 указанных размеров.
rsCreateElement : создает объект rs_element указанного типа данных.
rs_element rsCreateElement( int32_t data_type, int32_t data_kind, bool isNormalized, uint32_t vecSize); | Добавлено на уровне API 24. |
rs_element rsCreateElement( rs_data_type data_type); | Добавлено на уровне API 24. |
Параметры
тип_данных | Тип данных элемента |
---|---|
вид_данных | |
нормализовано | |
vecSize |
Создает объект rs_element указанного типа данных. Тип данных элемента будет установлен на RS_KIND_USER, а вектор_ширина будет установлен на 1, что указывает на невекторный характер.
rsCreatePixelElement : создает объект rs_element указанного типа данных и типа данных.
rs_element rsCreatePixelElement( rs_data_type data_type, rs_data_kind data_kind); | Добавлено на уровне API 24. |
Параметры
тип_данных | Тип данных элемента |
---|---|
вид_данных | Вид данных элемента |
Создает объект rs_element указанного типа данных и типа данных. Vector_width элемента будет установлен в 1, что указывает на то, что он не является векторным.
rsCreateType : создает объект rs_type с указанными атрибутами элемента и формы.
rs_type rsCreateType (элемент rs_element , uint32_t dimX); | Добавлено на уровне API 24. |
rs_type rsCreateType( элемент rs_element , uint32_t dimX, uint32_t dimY); | Добавлено на уровне API 24. |
rs_type rsCreateType( элемент rs_element , uint32_t dimX, uint32_t dimY, uint32_t dimZ); | Добавлено на уровне API 24. |
rs_type rsCreateType( элемент rs_element , uint32_t dimX, uint32_t dimY, uint32_t dimZ, bool mipmaps, bool face, rs_yuv_format yuv_format); | Добавлено на уровне API 24. |
Параметры
элемент | Элемент, который будет связан с типом |
---|---|
dimX | Размер по оси X |
тусклый | Размер по оси Y |
димZ | Размер по оси Z |
MIP-карты | Флаг, указывающий, имеет ли тип цепочку MIP-карт. |
лица | Флаг, указывающий, является ли Тип кубической картой. |
yuv_format | Макет YUV для типа |
Создает объект rs_type с указанными атрибутами Element и shape.
dimX определяет размер измерения X.
dimY, если он присутствует и не равен нулю, указывает на наличие размера Y и указывает его размер.
dimZ, если он присутствует и не равен нулю, указывает на наличие размера Z и указывает его размер.
mipmaps указывает на наличие уровня детализации (LOD).
Faces указывает на наличие граней кубической карты.
yuv_format указывает связанный формат YUV (или RS_YUV_NONE).
rsCreateVectorElement : создает объект rs_element указанного типа данных и ширины вектора.
rs_element rsCreateVectorElement( rs_data_type data_type, uint32_t вектор_ширина); | Добавлено на уровне API 24. |
Параметры
тип_данных | Тип данных элемента |
---|---|
вектор_ширина | Ширина вектора (2, 3 или 4) |
Создает объект rs_element указанного типа данных и ширины вектора. Значение вектора_ширины должно быть 2, 3 или 4. Тип данных элемента будет установлен как RS_KIND_USER.