diff options
author | Alex Sakhartchouk <alexst@google.com> | 2012-03-21 09:58:15 -0700 |
---|---|---|
committer | Alex Sakhartchouk <alexst@google.com> | 2012-03-21 09:58:15 -0700 |
commit | 79c23f0f884ceb494c922d6769e6f12260c72daa (patch) | |
tree | 569777c50450fd5c53110db62f7aff908c587b27 /libs/rs | |
parent | d87eb6c7c686182aaf0e7dd6facacb9e229f9684 (diff) | |
download | frameworks_base-79c23f0f884ceb494c922d6769e6f12260c72daa.zip frameworks_base-79c23f0f884ceb494c922d6769e6f12260c72daa.tar.gz frameworks_base-79c23f0f884ceb494c922d6769e6f12260c72daa.tar.bz2 |
Breaking up rs headers by logical components.
Change-Id: I2d23eec0277b1136852b8a7acb61aecf6f699a7d
Diffstat (limited to 'libs/rs')
-rw-r--r-- | libs/rs/scriptc/rs_allocation.rsh | 123 | ||||
-rw-r--r-- | libs/rs/scriptc/rs_core.rsh | 4 | ||||
-rw-r--r-- | libs/rs/scriptc/rs_element.rsh | 134 | ||||
-rw-r--r-- | libs/rs/scriptc/rs_mesh.rsh | 93 | ||||
-rw-r--r-- | libs/rs/scriptc/rs_program.rsh | 152 | ||||
-rw-r--r-- | libs/rs/scriptc/rs_sampler.rsh | 97 |
6 files changed, 480 insertions, 123 deletions
diff --git a/libs/rs/scriptc/rs_allocation.rsh b/libs/rs/scriptc/rs_allocation.rsh index 89696b8..392a3ef 100644 --- a/libs/rs/scriptc/rs_allocation.rsh +++ b/libs/rs/scriptc/rs_allocation.rsh @@ -176,129 +176,6 @@ extern rs_element __attribute__((overloadable)) rsAllocationGetElement(rs_allocation a); /** - * @param m mesh to get data from - * @return number of allocations in the mesh that contain vertex - * data - */ -extern uint32_t __attribute__((overloadable)) - rsMeshGetVertexAllocationCount(rs_mesh m); - -/** - * @param m mesh to get data from - * @return number of primitive groups in the mesh. This would - * include simple primitives as well as allocations - * containing index data - */ -extern uint32_t __attribute__((overloadable)) - rsMeshGetPrimitiveCount(rs_mesh m); - -/** - * @param m mesh to get data from - * @param index index of the vertex allocation - * @return allocation containing vertex data - */ -extern rs_allocation __attribute__((overloadable)) - rsMeshGetVertexAllocation(rs_mesh m, uint32_t index); - -/** - * @param m mesh to get data from - * @param index index of the index allocation - * @return allocation containing index data - */ -extern rs_allocation __attribute__((overloadable)) - rsMeshGetIndexAllocation(rs_mesh m, uint32_t index); - -/** - * @param m mesh to get data from - * @param index index of the primitive - * @return primitive describing how the mesh is rendered - */ -extern rs_primitive __attribute__((overloadable)) - rsMeshGetPrimitive(rs_mesh m, uint32_t index); - -/** - * @param e element to get data from - * @return number of sub-elements in this element - */ -extern uint32_t __attribute__((overloadable)) - rsElementGetSubElementCount(rs_element e); - -/** - * @param e element to get data from - * @param index index of the sub-element to return - * @return sub-element in this element at given index - */ -extern rs_element __attribute__((overloadable)) - rsElementGetSubElement(rs_element, uint32_t index); - -/** - * @param e element to get data from - * @param index index of the sub-element to return - * @return length of the sub-element name including the null - * terminator (size of buffer needed to write the name) - */ -extern uint32_t __attribute__((overloadable)) - rsElementGetSubElementNameLength(rs_element e, uint32_t index); - -/** - * @param e element to get data from - * @param index index of the sub-element - * @param name array to store the name into - * @param nameLength length of the provided name array - * @return number of characters actually written, excluding the - * null terminator - */ -extern uint32_t __attribute__((overloadable)) - rsElementGetSubElementName(rs_element e, uint32_t index, char *name, uint32_t nameLength); - -/** - * @param e element to get data from - * @param index index of the sub-element - * @return array size of sub-element in this element at given - * index - */ -extern uint32_t __attribute__((overloadable)) - rsElementGetSubElementArraySize(rs_element e, uint32_t index); - -/** - * @param e element to get data from - * @param index index of the sub-element - * @return offset in bytes of sub-element in this element at - * given index - */ -extern uint32_t __attribute__((overloadable)) - rsElementGetSubElementOffsetBytes(rs_element e, uint32_t index); - -/** - * @param e element to get data from - * @return total size of the element in bytes - */ -extern uint32_t __attribute__((overloadable)) - rsElementGetSizeBytes(rs_element e); - -/** - * @param e element to get data from - * @return element's data type - */ -extern rs_data_type __attribute__((overloadable)) - rsElementGetDataType(rs_element e); - -/** - * @param e element to get data from - * @return element's data size - */ -extern rs_data_kind __attribute__((overloadable)) - rsElementGetDataKind(rs_element e); - -/** - * @param e element to get data from - * @return length of the element vector (for float2, float3, - * etc.) - */ -extern uint32_t __attribute__((overloadable)) - rsElementGetVectorSize(rs_element e); - -/** * Fetch allocation in a way described by the sampler * @param a 1D allocation to sample from * @param s sampler state diff --git a/libs/rs/scriptc/rs_core.rsh b/libs/rs/scriptc/rs_core.rsh index be900cb..5b99976 100644 --- a/libs/rs/scriptc/rs_core.rsh +++ b/libs/rs/scriptc/rs_core.rsh @@ -31,10 +31,14 @@ #include "rs_atomic.rsh" #include "rs_cl.rsh" #include "rs_debug.rsh" +#include "rs_element.rsh" #include "rs_math.rsh" +#include "rs_mesh.rsh" #include "rs_matrix.rsh" #include "rs_object.rsh" +#include "rs_program.rsh" #include "rs_quaternion.rsh" +#include "rs_sampler.rsh" #include "rs_time.rsh" diff --git a/libs/rs/scriptc/rs_element.rsh b/libs/rs/scriptc/rs_element.rsh new file mode 100644 index 0000000..72cb51c --- /dev/null +++ b/libs/rs/scriptc/rs_element.rsh @@ -0,0 +1,134 @@ +/* + * Copyright (C) 2012 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/*! \mainpage notitle + * + * Renderscript is a high-performance runtime that provides graphics rendering and + * compute operations at the native level. Renderscript code is compiled on devices + * at runtime to allow platform-independence as well. + * This reference documentation describes the Renderscript runtime APIs, which you + * can utilize to write Renderscript code in C99. The Renderscript header + * files are automatically included for you, except for the rs_graphics.rsh header. If + * you are doing graphics rendering, include the graphics header file like this: + * + * <code>#include "rs_graphics.rsh"</code> + * + * To use Renderscript, you need to utilize the Renderscript runtime APIs documented here + * as well as the Android framework APIs for Renderscript. + * For documentation on the Android framework APIs, see the <a target="_parent" href= + * "http://developer.android.com/reference/android/renderscript/package-summary.html"> + * android.renderscript</a> package reference. + * For more information on how to develop with Renderscript and how the runtime and + * Android framework APIs interact, see the <a target="_parent" href= + * "http://developer.android.com/guide/topics/renderscript/index.html">Renderscript + * developer guide</a> and the <a target="_parent" href= + * "http://developer.android.com/resources/samples/RenderScript/index.html"> + * Renderscript samples</a>. + */ + +/** @file rs_element.rsh + * \brief Element routines + * + * + */ + +#ifndef __RS_ELEMENT_RSH__ +#define __RS_ELEMENT_RSH__ + +/** + * @param e element to get data from + * @return number of sub-elements in this element + */ +extern uint32_t __attribute__((overloadable)) + rsElementGetSubElementCount(rs_element e); + +/** + * @param e element to get data from + * @param index index of the sub-element to return + * @return sub-element in this element at given index + */ +extern rs_element __attribute__((overloadable)) + rsElementGetSubElement(rs_element, uint32_t index); + +/** + * @param e element to get data from + * @param index index of the sub-element to return + * @return length of the sub-element name including the null + * terminator (size of buffer needed to write the name) + */ +extern uint32_t __attribute__((overloadable)) + rsElementGetSubElementNameLength(rs_element e, uint32_t index); + +/** + * @param e element to get data from + * @param index index of the sub-element + * @param name array to store the name into + * @param nameLength length of the provided name array + * @return number of characters actually written, excluding the + * null terminator + */ +extern uint32_t __attribute__((overloadable)) + rsElementGetSubElementName(rs_element e, uint32_t index, char *name, uint32_t nameLength); + +/** + * @param e element to get data from + * @param index index of the sub-element + * @return array size of sub-element in this element at given + * index + */ +extern uint32_t __attribute__((overloadable)) + rsElementGetSubElementArraySize(rs_element e, uint32_t index); + +/** + * @param e element to get data from + * @param index index of the sub-element + * @return offset in bytes of sub-element in this element at + * given index + */ +extern uint32_t __attribute__((overloadable)) + rsElementGetSubElementOffsetBytes(rs_element e, uint32_t index); + +/** + * @param e element to get data from + * @return total size of the element in bytes + */ +extern uint32_t __attribute__((overloadable)) + rsElementGetSizeBytes(rs_element e); + +/** + * @param e element to get data from + * @return element's data type + */ +extern rs_data_type __attribute__((overloadable)) + rsElementGetDataType(rs_element e); + +/** + * @param e element to get data from + * @return element's data size + */ +extern rs_data_kind __attribute__((overloadable)) + rsElementGetDataKind(rs_element e); + +/** + * @param e element to get data from + * @return length of the element vector (for float2, float3, + * etc.) + */ +extern uint32_t __attribute__((overloadable)) + rsElementGetVectorSize(rs_element e); + +#endif // __RS_ELEMENT_RSH__ + diff --git a/libs/rs/scriptc/rs_mesh.rsh b/libs/rs/scriptc/rs_mesh.rsh new file mode 100644 index 0000000..88f229b --- /dev/null +++ b/libs/rs/scriptc/rs_mesh.rsh @@ -0,0 +1,93 @@ +/* + * Copyright (C) 2012 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/*! \mainpage notitle + * + * Renderscript is a high-performance runtime that provides graphics rendering and + * compute operations at the native level. Renderscript code is compiled on devices + * at runtime to allow platform-independence as well. + * This reference documentation describes the Renderscript runtime APIs, which you + * can utilize to write Renderscript code in C99. The Renderscript header + * files are automatically included for you, except for the rs_graphics.rsh header. If + * you are doing graphics rendering, include the graphics header file like this: + * + * <code>#include "rs_graphics.rsh"</code> + * + * To use Renderscript, you need to utilize the Renderscript runtime APIs documented here + * as well as the Android framework APIs for Renderscript. + * For documentation on the Android framework APIs, see the <a target="_parent" href= + * "http://developer.android.com/reference/android/renderscript/package-summary.html"> + * android.renderscript</a> package reference. + * For more information on how to develop with Renderscript and how the runtime and + * Android framework APIs interact, see the <a target="_parent" href= + * "http://developer.android.com/guide/topics/renderscript/index.html">Renderscript + * developer guide</a> and the <a target="_parent" href= + * "http://developer.android.com/resources/samples/RenderScript/index.html"> + * Renderscript samples</a>. + */ + +/** @file rs_mesh.rsh + * \brief Mesh routines + * + * + */ + +#ifndef __RS_MESH_RSH__ +#define __RS_MESH_RSH__ + +/** + * @param m mesh to get data from + * @return number of allocations in the mesh that contain vertex + * data + */ +extern uint32_t __attribute__((overloadable)) + rsMeshGetVertexAllocationCount(rs_mesh m); + +/** + * @param m mesh to get data from + * @return number of primitive groups in the mesh. This would + * include simple primitives as well as allocations + * containing index data + */ +extern uint32_t __attribute__((overloadable)) + rsMeshGetPrimitiveCount(rs_mesh m); + +/** + * @param m mesh to get data from + * @param index index of the vertex allocation + * @return allocation containing vertex data + */ +extern rs_allocation __attribute__((overloadable)) + rsMeshGetVertexAllocation(rs_mesh m, uint32_t index); + +/** + * @param m mesh to get data from + * @param index index of the index allocation + * @return allocation containing index data + */ +extern rs_allocation __attribute__((overloadable)) + rsMeshGetIndexAllocation(rs_mesh m, uint32_t index); + +/** + * @param m mesh to get data from + * @param index index of the primitive + * @return primitive describing how the mesh is rendered + */ +extern rs_primitive __attribute__((overloadable)) + rsMeshGetPrimitive(rs_mesh m, uint32_t index); + +#endif // __RS_MESH_RSH__ + diff --git a/libs/rs/scriptc/rs_program.rsh b/libs/rs/scriptc/rs_program.rsh new file mode 100644 index 0000000..8c52680 --- /dev/null +++ b/libs/rs/scriptc/rs_program.rsh @@ -0,0 +1,152 @@ +/* + * Copyright (C) 2012 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/*! \mainpage notitle + * + * Renderscript is a high-performance runtime that provides graphics rendering and + * compute operations at the native level. Renderscript code is compiled on devices + * at runtime to allow platform-independence as well. + * This reference documentation describes the Renderscript runtime APIs, which you + * can utilize to write Renderscript code in C99. The Renderscript header + * files are automatically included for you, except for the rs_graphics.rsh header. If + * you are doing graphics rendering, include the graphics header file like this: + * + * <code>#include "rs_graphics.rsh"</code> + * + * To use Renderscript, you need to utilize the Renderscript runtime APIs documented here + * as well as the Android framework APIs for Renderscript. + * For documentation on the Android framework APIs, see the <a target="_parent" href= + * "http://developer.android.com/reference/android/renderscript/package-summary.html"> + * android.renderscript</a> package reference. + * For more information on how to develop with Renderscript and how the runtime and + * Android framework APIs interact, see the <a target="_parent" href= + * "http://developer.android.com/guide/topics/renderscript/index.html">Renderscript + * developer guide</a> and the <a target="_parent" href= + * "http://developer.android.com/resources/samples/RenderScript/index.html"> + * Renderscript samples</a>. + */ + +/** @file rs_program.rsh + * \brief Program object routines + * + * + */ + +#ifndef __RS_PROGRAM_RSH__ +#define __RS_PROGRAM_RSH__ + +/** + * @hide + * Get program store depth function + * + * @param ps + */ +extern rs_depth_func __attribute__((overloadable)) + rsProgramStoreGetDepthFunc(rs_program_store ps); + +/** + * @hide + * Get program store depth mask + * + * @param ps + */ +extern bool __attribute__((overloadable)) + rsProgramStoreGetDepthMask(rs_program_store ps); +/** + * @hide + * Get program store red component color mask + * + * @param ps + */ +extern bool __attribute__((overloadable)) + rsProgramStoreGetColorMaskR(rs_program_store ps); + +/** + * @hide + * Get program store green component color mask + * + * @param ps + */ +extern bool __attribute__((overloadable)) + rsProgramStoreGetColorMaskG(rs_program_store ps); + +/** + * @hide + * Get program store blur component color mask + * + * @param ps + */ +extern bool __attribute__((overloadable)) + rsProgramStoreGetColorMaskB(rs_program_store ps); + +/** + * @hide + * Get program store alpha component color mask + * + * @param ps + */ +extern bool __attribute__((overloadable)) + rsProgramStoreGetColorMaskA(rs_program_store ps); + +/** + * @hide + * Get program store blend source function + * + * @param ps + */ +extern rs_blend_src_func __attribute__((overloadable)) + rsProgramStoreGetBlendSrcFunc(rs_program_store ps); + +/** + * @hide + * Get program store blend destination function + * + * @param ps + */ +extern rs_blend_dst_func __attribute__((overloadable)) + rsProgramStoreGetBlendDstFunc(rs_program_store ps); + +/** + * @hide + * Get program store dither state + * + * @param ps + */ +extern bool __attribute__((overloadable)) + rsProgramStoreGetDitherEnabled(rs_program_store ps); + +/** + * @hide + * Get program raster point sprite state + * + * @param pr + */ +extern bool __attribute__((overloadable)) + rsProgramRasterGetPointSpriteEnabled(rs_program_raster pr); + +/** + * @hide + * Get program raster cull mode + * + * @param pr + */ +extern rs_cull_mode __attribute__((overloadable)) + rsProgramRasterGetCullMode(rs_program_raster pr); + + + +#endif // __RS_PROGRAM_RSH__ + diff --git a/libs/rs/scriptc/rs_sampler.rsh b/libs/rs/scriptc/rs_sampler.rsh new file mode 100644 index 0000000..130eca0 --- /dev/null +++ b/libs/rs/scriptc/rs_sampler.rsh @@ -0,0 +1,97 @@ +/* + * Copyright (C) 2012 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/*! \mainpage notitle + * + * Renderscript is a high-performance runtime that provides graphics rendering and + * compute operations at the native level. Renderscript code is compiled on devices + * at runtime to allow platform-independence as well. + * This reference documentation describes the Renderscript runtime APIs, which you + * can utilize to write Renderscript code in C99. The Renderscript header + * files are automatically included for you, except for the rs_graphics.rsh header. If + * you are doing graphics rendering, include the graphics header file like this: + * + * <code>#include "rs_graphics.rsh"</code> + * + * To use Renderscript, you need to utilize the Renderscript runtime APIs documented here + * as well as the Android framework APIs for Renderscript. + * For documentation on the Android framework APIs, see the <a target="_parent" href= + * "http://developer.android.com/reference/android/renderscript/package-summary.html"> + * android.renderscript</a> package reference. + * For more information on how to develop with Renderscript and how the runtime and + * Android framework APIs interact, see the <a target="_parent" href= + * "http://developer.android.com/guide/topics/renderscript/index.html">Renderscript + * developer guide</a> and the <a target="_parent" href= + * "http://developer.android.com/resources/samples/RenderScript/index.html"> + * Renderscript samples</a>. + */ + +/** @file rs_sampler.rsh + * \brief Sampler routines + * + * + */ + +#ifndef __RS_SAMPLER_RSH__ +#define __RS_SAMPLER_RSH__ + +/** + * @hide + * Get sampler minification value + * + * @param pr + */ +extern rs_sampler_value __attribute__((overloadable)) + rsSamplerGetMinification(rs_sampler s); + +/** + * @hide + * Get sampler magnification value + * + * @param pr + */ +extern rs_sampler_value __attribute__((overloadable)) + rsSamplerGetMagnification(rs_sampler s); + +/** + * @hide + * Get sampler wrap S value + * + * @param pr + */ +extern rs_sampler_value __attribute__((overloadable)) + rsSamplerGetWrapS(rs_sampler s); + +/** + * @hide + * Get sampler wrap T value + * + * @param pr + */ +extern rs_sampler_value __attribute__((overloadable)) + rsSamplerGetWrapT(rs_sampler s); + +/** + * @hide + * Get sampler anisotropy + * + * @param pr + */ +extern float __attribute__((overloadable)) + rsSamplerGetAnisotropy(rs_sampler s); + +#endif // __RS_SAMPLER_RSH__ + |