From 7f194f94b4f242eb4e9fb3c03715fbe06cc33b65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Sun, 15 Apr 2012 18:55:07 +0200 Subject: [PATCH] Trade::MeshData const-correctness. "Counting" functions are always constant, added const versions of data accessing functions, so MeshData can be now passed and used as const reference. --- src/Trade/MeshData.h | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/Trade/MeshData.h b/src/Trade/MeshData.h index ca82147d7..d13d174bf 100644 --- a/src/Trade/MeshData.h +++ b/src/Trade/MeshData.h @@ -60,9 +60,10 @@ class MAGNUM_EXPORT MeshData { * @return Indices or nullptr if the mesh is not indexed. */ inline std::vector* indices() { return _indices; } + inline const std::vector* indices() const { return _indices; } /**< @copydoc indices() */ /** @brief Count of vertex arrays */ - inline size_t vertexArrayCount() { return _vertices.size(); }; + inline size_t vertexArrayCount() const { return _vertices.size(); }; /** * @brief Vertices @@ -71,9 +72,10 @@ class MAGNUM_EXPORT MeshData { * ID. */ inline std::vector* vertices(size_t id) { return _vertices[id]; } + inline const std::vector* vertices(size_t id) const { return _vertices[id]; } /**< @copydoc vertices() */ /** @brief Count of normal arrays */ - inline size_t normalArrayCount() { return _normals.size(); }; + inline size_t normalArrayCount() const { return _normals.size(); }; /** * @brief Normals @@ -82,9 +84,10 @@ class MAGNUM_EXPORT MeshData { * ID. */ inline std::vector* normals(size_t id) { return _normals[id]; } + inline const std::vector* normals(size_t id) const { return _normals[id]; } /**< @copydoc normals() */ /** @brief Count of 2D texture coordinate arrays */ - inline size_t textureCoords2DArrayCount() { return _textureCoords2D.size(); }; + inline size_t textureCoords2DArrayCount() const { return _textureCoords2D.size(); }; /** * @brief 2D texture coordinates @@ -93,6 +96,7 @@ class MAGNUM_EXPORT MeshData { * coordinates array with given ID. */ inline std::vector* textureCoords2D(size_t id) { return _textureCoords2D[id]; } + inline const std::vector* textureCoords2D(size_t id) const { return _textureCoords2D[id]; } /**< @copydoc textureCoords2D() */ private: Mesh::Primitive _primitive;