rs_object_types.rsh revision be2163801c33d6849ae580d42b919b8803d55095
1be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
2be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * Copyright (C) 2015 The Android Open Source Project
3be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
4be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * Licensed under the Apache License, Version 2.0 (the "License");
5be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * you may not use this file except in compliance with the License.
6be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * You may obtain a copy of the License at
7be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
8be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *      http://www.apache.org/licenses/LICENSE-2.0
9be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
10be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * Unless required by applicable law or agreed to in writing, software
11be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * distributed under the License is distributed on an "AS IS" BASIS,
12be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * See the License for the specific language governing permissions and
14be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * limitations under the License.
15be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
16be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
17be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet// Don't edit this file!  It is auto-generated by frameworks/rs/api/gen_runtime.
18be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
19be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
20be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_object_types.rsh: Standard RenderScript types
21be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
22be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * TODO desc.
23be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
24be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#ifndef RENDERSCRIPT_RS_OBJECT_TYPES_RSH
25be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#define RENDERSCRIPT_RS_OBJECT_TYPES_RSH
26be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
27be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#define NULL ((void *)0)
28be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
29be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet// Opaque handle to a RenderScript object. Do not use this directly.
30be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#ifndef __LP64__
31be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#define _RS_HANDLE \
32be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouilletstruct {\
33be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet  const int* const p;\
34be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet} __attribute__((packed, aligned(4)))
35be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#else
36be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#define _RS_HANDLE \
37be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouilletstruct {\
38be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet  const long* const p;\
39be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet  const long* const r;\
40be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet  const long* const v1;\
41be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet  const long* const v2;\
42be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet}
43be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#endif
44be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
45be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
46be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_element: Handle to an element
47be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
48be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * Opaque handle to a RenderScript element.
49be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * See: android.renderscript.Element
50be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
51be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef _RS_HANDLE rs_element;
52be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
53be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
54be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_type: Handle to a Type
55be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
56be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * Opaque handle to a RenderScript type.
57be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * See: android.renderscript.Type
58be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
59be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef _RS_HANDLE rs_type;
60be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
61be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
62be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_allocation: Handle to an allocation
63be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
64be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * Opaque handle to a RenderScript allocation.
65be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * See: android.renderscript.Allocation
66be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
67be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef _RS_HANDLE rs_allocation;
68be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
69be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
70be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_sampler: Handle to a Sampler
71be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
72be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * Opaque handle to a RenderScript sampler object.
73be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * See: android.renderscript.Sampler
74be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
75be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef _RS_HANDLE rs_sampler;
76be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
77be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
78be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_script: Handle to a Script
79be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
80be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * Opaque handle to a RenderScript script object.
81be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * See: android.renderscript.ScriptC
82be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
83be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef _RS_HANDLE rs_script;
84be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
85be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
86be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_matrix4x4: 4x4 matrix of 32 bit floats
87be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
88be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * Native holder for RS matrix.  Elements are stored in the array at the
89be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * location [row*4 + col]
90be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
91be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef struct {
92be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    float m[16];
93be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet} rs_matrix4x4;
94be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
95be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
96be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_matrix3x3: 3x3 matrix of 32 bit floats
97be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
98be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * Native holder for RS matrix.  Elements are stored in the array at the
99be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * location [row*3 + col]
100be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
101be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef struct {
102be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    float m[9];
103be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet} rs_matrix3x3;
104be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
105be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
106be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_matrix2x2: 2x2 matrix of 32 bit floats
107be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
108be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * Native holder for RS matrix.  Elements are stored in the array at the
109be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * location [row*2 + col]
110be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
111be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef struct {
112be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    float m[4];
113be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet} rs_matrix2x2;
114be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
115be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
116be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_quaternion: Quarternion
117be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
118be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * Quaternion type for use with the quaternion functions
119be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
120be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef float4 rs_quaternion;
121be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
122be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
123be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_allocation_cubemap_face: Enum for selecting cube map faces
124be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
125be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
126be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#if (defined(RS_VERSION) && (RS_VERSION >= 14))
127be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef enum {
128be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_ALLOCATION_CUBEMAP_FACE_POSITIVE_X = 0,
129be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_ALLOCATION_CUBEMAP_FACE_NEGATIVE_X = 1,
130be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_ALLOCATION_CUBEMAP_FACE_POSITIVE_Y = 2,
131be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_ALLOCATION_CUBEMAP_FACE_NEGATIVE_Y = 3,
132be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_ALLOCATION_CUBEMAP_FACE_POSITIVE_Z = 4,
133be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_ALLOCATION_CUBEMAP_FACE_NEGATIVE_Z = 5
134be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet} rs_allocation_cubemap_face;
135be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#endif
136be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
137be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
138be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_allocation_usage_type: Bitfield to specify the usage types for an allocation
139be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
140be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * These values are ORed together to specify which usages or memory spaces are
141be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * relevant to an allocation or an operation on an allocation.
142be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
143be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#if (defined(RS_VERSION) && (RS_VERSION >= 14))
144be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef enum {
145be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_ALLOCATION_USAGE_SCRIPT = 0x0001,
146be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_ALLOCATION_USAGE_GRAPHICS_TEXTURE = 0x0002, // Deprecated.
147be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_ALLOCATION_USAGE_GRAPHICS_VERTEX = 0x0004, // Deprecated.
148be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_ALLOCATION_USAGE_GRAPHICS_CONSTANTS = 0x0008, // Deprecated.
149be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_ALLOCATION_USAGE_GRAPHICS_RENDER_TARGET = 0x0010 // Deprecated.
150be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet} rs_allocation_usage_type;
151be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#endif
152be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
153be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
154be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_data_type: Element data types
155be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
156be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * DataType represents the basic type information for a basic element.  The
157be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * naming convention follows.  For numeric types it is FLOAT,
158be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * SIGNED, or UNSIGNED followed by the _BITS where BITS is the
159be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * size of the data.  BOOLEAN is a true / false (1,0)
160be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * represented in an 8 bit container.  The UNSIGNED variants
161be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * with multiple bit definitions are for packed graphical data
162be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * formats and represent vectors with per vector member sizes
163be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * which are treated as a single unit for packing and alignment
164be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * purposes.
165be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
166be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * MATRIX the three matrix types contain FLOAT_32 elements and are treated
167be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * as 32 bits for alignment purposes.
168be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
169be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * RS_* objects.  32 bit opaque handles.
170be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
171be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#if (defined(RS_VERSION) && (RS_VERSION >= 16))
172be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef enum {
173be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_NONE             = 0,
174be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_FLOAT_32         = 2,
175be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_FLOAT_64         = 3,
176be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_SIGNED_8         = 4,
177be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_SIGNED_16        = 5,
178be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_SIGNED_32        = 6,
179be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_SIGNED_64        = 7,
180be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_UNSIGNED_8       = 8,
181be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_UNSIGNED_16      = 9,
182be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_UNSIGNED_32      = 10,
183be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_UNSIGNED_64      = 11,
184be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_BOOLEAN          = 12,
185be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_UNSIGNED_5_6_5   = 13,
186be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_UNSIGNED_5_5_5_1 = 14,
187be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_UNSIGNED_4_4_4_4 = 15,
188be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_MATRIX_4X4       = 16,
189be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_MATRIX_3X3       = 17,
190be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_MATRIX_2X2       = 18,
191be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_ELEMENT          = 1000,
192be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_TYPE             = 1001,
193be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_ALLOCATION       = 1002,
194be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_SAMPLER          = 1003,
195be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_SCRIPT           = 1004,
196be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_MESH             = 1005,
197be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_PROGRAM_FRAGMENT = 1006,
198be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_PROGRAM_VERTEX   = 1007,
199be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_PROGRAM_RASTER   = 1008,
200be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_PROGRAM_STORE    = 1009,
201be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_FONT             = 1010,
202be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_TYPE_INVALID          = 10000
203be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet} rs_data_type;
204be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#endif
205be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
206be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
207be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_data_kind: Element data kind
208be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
209be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * The special interpretation of the data if required.  This is primarly
210be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * useful for graphical data.  USER indicates no special interpretation is
211be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * expected.  PIXEL is used in conjunction with the standard data types for
212be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * representing texture formats.
213be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
214be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#if (defined(RS_VERSION) && (RS_VERSION >= 16))
215be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef enum {
216be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_KIND_USER         = 0,
217be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_KIND_PIXEL_L      = 7,
218be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_KIND_PIXEL_A      = 8,
219be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_KIND_PIXEL_LA     = 9,
220be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_KIND_PIXEL_RGB    = 10,
221be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_KIND_PIXEL_RGBA   = 11,
222be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_KIND_PIXEL_DEPTH  = 12,
223be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_KIND_PIXEL_YUV    = 13,
224be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_KIND_INVALID      = 100
225be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet} rs_data_kind;
226be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#endif
227be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
228be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet/*
229be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet * rs_sampler_value: Sampler wrap T value
230be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet *
231be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet */
232be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#if (defined(RS_VERSION) && (RS_VERSION >= 16))
233be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillettypedef enum {
234be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_SAMPLER_NEAREST              = 0,
235be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_SAMPLER_LINEAR               = 1,
236be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_SAMPLER_LINEAR_MIP_LINEAR    = 2,
237be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_SAMPLER_WRAP                 = 3,
238be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_SAMPLER_CLAMP                = 4,
239be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_SAMPLER_LINEAR_MIP_NEAREST   = 5,
240be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_SAMPLER_MIRRORED_REPEAT      = 6,
241be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet    RS_SAMPLER_INVALID              = 100
242be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet} rs_sampler_value;
243be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#endif
244be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet
245be2163801c33d6849ae580d42b919b8803d55095Jean-Luc Brouillet#endif // RENDERSCRIPT_RS_OBJECT_TYPES_RSH
246