diff --git a/doc/namespaces.dox b/doc/namespaces.dox index 6d4e967ff..8ce3f9b8f 100644 --- a/doc/namespaces.dox +++ b/doc/namespaces.dox @@ -1,3 +1,9 @@ +/** @namespace Magnum::MeshTools +@brief %Mesh tools + +Tools for generating, optimizing and cleaning meshes. +*/ + /** @namespace Magnum::Shaders @brief Sample shaders diff --git a/src/MeshTools/AbstractTool.h b/src/MeshTools/AbstractTool.h deleted file mode 100644 index c5eb25e8e..000000000 --- a/src/MeshTools/AbstractTool.h +++ /dev/null @@ -1,81 +0,0 @@ -#ifndef Magnum_MeshTools_AbstractTool_h -#define Magnum_MeshTools_AbstractTool_h -/* - Copyright © 2010, 2011, 2012 Vladimír Vondruš - - This file is part of Magnum. - - Magnum is free software: you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License version 3 - only, as published by the Free Software Foundation. - - Magnum is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License version 3 for more details. -*/ - -/** @file - * @brief Class Magnum::MeshTools::AbstractTool - */ - -#include "MeshBuilder.h" - -namespace Magnum { - -/** - * @brief %Mesh tools - * - * Tools for generating, optimizing and cleaning meshes. - */ -namespace MeshTools { - -/** - * @brief Base class for mesh tools - * - * Provides access to internals of MeshBuilder instance for subclasses. See - * also AbstractIndexTool. - */ -template class AbstractTool { - public: - /** - * @brief Constructor - * @param builder %Mesh builder to operate on - */ - inline AbstractTool(MeshBuilder& builder): builder(builder), vertices(builder._vertices), indices(builder._indices) {} - - protected: - MeshBuilder& builder; /**< @brief Builder instance */ - std::vector& vertices; /**< @brief Builder vertices */ - std::vector& indices; /**< @brief Builder indices */ -}; - -/** - * @brief Base class for mesh tools operating only on indices - * - * Provides access only to index array and vertex count. See also - * AbstractTool. - */ -class MAGNUM_EXPORT AbstractIndexTool { - public: - /** - * @brief Constructor - * @param builder %Mesh builder to operate on - */ - template inline AbstractIndexTool(MeshBuilder& builder): indices(builder._indices), vertexCount(builder.vertexCount()) {} - - /** - * @brief Constructor - * @param indices Indices array to operate on - * @param vertexCount Vertex count - */ - inline AbstractIndexTool(std::vector& indices, unsigned int vertexCount): indices(indices), vertexCount(vertexCount) {} - - protected: - std::vector& indices; /**< @brief Builder indices */ - const unsigned int vertexCount; /**< @brief Count of builder vertices */ -}; - -}} - -#endif