RenderScript の割り当て作成関数

概要

以下の関数を使用して、スクリプトから割り当てを作成できます。

これらの関数は、呼び出し可能な関数から直接、または間接的に呼び出すことができます。なんらかの制御フローパスにより、RenderScript カーネル関数からこれらの関数が呼び出されると、コンパイラ エラーが生成されます。

まとめ

関数
rsCreateAllocation 指定された型の rs_allocation オブジェクトを作成します。
rsCreateElement 指定されたデータ型の rs_element オブジェクトを作成します
rsCreatePixelElement 指定されたデータ型とデータ型の rs_element オブジェクトを作成します
rsCreateType 指定された要素とシェイプの属性を持つ rs_type オブジェクトを作成します。
rsCreateVectorElement 指定されたデータ型とベクトル幅の rs_element オブジェクトを作成します

関数

rsCreateAllocation : 指定されたタイプの rs_allocation オブジェクトを作成します。

rs_allocation rsCreateAllocation(rs_type type); API レベル 24 で追加されました
rs_allocation rsCreateAllocation(rs_type type, rs_allocation_mipmap_control mipmap, uint32_t usages, void* ptr); API レベル 24 で追加されました
rs_allocation rsCreateAllocation(rs_type type, uint32_t usage); 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 rsCreateAllocation_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 で追加されました
パラメータ
type割り当てのタイプ
電力使用量割り当ての使用フラグ
mipmap
使用状況
PTTR
ディメンション X
薄暗い
ディメンション Z

指定されたタイプと用途の rs_allocation オブジェクトを作成します。

RenderScript スクリプト内から作成された割り当てに対して、サポートされている用途フラグは RS_ALLOCATION_USAGE_SCRIPT と RS_ALLOCATION_USAGE_GRAPHICS_TEXTURE のみです。

また、rsCreateAllocation_ ラッパー関数を使用すると、中間の rs_element または rs_type オブジェクトを作成せずにスカラーおよびベクトル数値型の割り当てを直接作成できます。

たとえば、rsCreateAllocation_int4() は、指定されたディメンションの 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 に設定され、vector_width は 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 element, uint32_t dimX); API レベル 24 で追加されました
rs_type rsCreateType(rs_element element, uint32_t dimX, uint32_t dimY); API レベル 24 で追加されました
rs_type rsCreateType(rs_element element, uint32_t dimX, uint32_t dimY, uint32_t dimZ); API レベル 24 で追加されました
rs_type rsCreateType(rs_element element, uint32_t dimX、uint32_t dimY、uint32_t dimZ、bool mipmap、bool face、rs_yuv_format yuv_format); API レベル 24 で追加されました
パラメータ
要素タイプに関連付ける要素
ディメンション XX 寸法に沿ったサイズ
薄暗いY ディメンションに沿ったサイズ
ディメンション ZZ 寸法に沿ったサイズ
mipmapタイプに mipmap チェーンがあるかどうかを示すフラグ
型がキューブマップかどうかを示すフラグ
yuv_formatタイプの YUV レイアウト

指定された要素とシェイプの属性を持つ rs_type オブジェクトを作成します。

dimX は、X ディメンションのサイズを指定します。

dimY は、ゼロでない場合、Y ディメンションが存在することを示し、そのサイズを示します。

dimZ は、ゼロでない場合、Z ディメンションが存在することを示し、そのサイズを示します。

mipmaps は詳細レベル(LOD)の存在を示します。

actions は、キューブマップの面が存在することを示します。

yuv_format は、関連する YUV 形式(RS_YUV_NONE)を示します。

rsCreateVectorElement : 指定されたデータ型とベクター幅の rs_element オブジェクトを作成します。

rs_element rsCreateVectorElement(rs_data_type data_type, uint32_t vector_width); API レベル 24 で追加されました
パラメータ
データ型要素のデータ型
vector_widthベクターの幅(2、3、4 のいずれか)

指定されたデータ型とベクター幅の rs_element オブジェクトを作成します。 vector_width の値は 2、3、または 4 にする必要があります。要素のデータの種類は RS_KIND_USER に設定されます。