blob: c404a5fdaf61f995e2f3c6a84d6c0da238fa4397 [file] [log] [blame]
/*
* Copyright (C) 2015 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.
*/
// Don't edit this file! It is auto-generated by frameworks/rs/api/gen_runtime.
/*
* rs_mesh.rsh: Mesh routines
*
*/
#ifndef RENDERSCRIPT_RS_MESH_RSH
#define RENDERSCRIPT_RS_MESH_RSH
/*
* Returns an allocation containing index data or a null
* allocation if only the primitive is specified
*
* Parameters:
* m mesh to get data from
* index index of the index allocation
*
* Returns: allocation containing index data
*/
#if (defined(RS_VERSION) && (RS_VERSION >= 16))
extern rs_allocation __attribute__((overloadable))
rsgMeshGetIndexAllocation(rs_mesh m, uint32_t index);
#endif
/*
* Returns the primitive describing how a part of the mesh is
* rendered
*
* Parameters:
* m mesh to get data from
* index index of the primitive
*
* Returns: primitive describing how the mesh is rendered
*/
#if (defined(RS_VERSION) && (RS_VERSION >= 16))
extern rs_primitive __attribute__((overloadable))
rsgMeshGetPrimitive(rs_mesh m, uint32_t index);
#endif
/*
* Meshes could have multiple index sets, this function returns
* the number.
*
* Parameters:
* m mesh to get data from
*
* Returns: number of primitive groups in the mesh. This would include simple primitives as well as allocations containing index data
*/
#if (defined(RS_VERSION) && (RS_VERSION >= 16))
extern uint32_t __attribute__((overloadable))
rsgMeshGetPrimitiveCount(rs_mesh m);
#endif
/*
* Returns an allocation that is part of the mesh and contains
* vertex data, e.g. positions, normals, texcoords
*
* Parameters:
* m mesh to get data from
* index index of the vertex allocation
*
* Returns: allocation containing vertex data
*/
#if (defined(RS_VERSION) && (RS_VERSION >= 16))
extern rs_allocation __attribute__((overloadable))
rsgMeshGetVertexAllocation(rs_mesh m, uint32_t index);
#endif
/*
* Returns the number of allocations in the mesh that contain
* vertex data
*
* Parameters:
* m mesh to get data from
*
* Returns: number of allocations in the mesh that contain vertex data
*/
#if (defined(RS_VERSION) && (RS_VERSION >= 16))
extern uint32_t __attribute__((overloadable))
rsgMeshGetVertexAllocationCount(rs_mesh m);
#endif
#endif // RENDERSCRIPT_RS_MESH_RSH