From 681914e2d0246285e350019b3b5249752bf025dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Sun, 18 Nov 2012 18:42:45 +0100 Subject: [PATCH] Forward declarations for Shaders namespace in Shaders/Shaders.h. --- doc/compilation-speedup.dox | 1 + src/Shaders/CMakeLists.txt | 1 + src/Shaders/Shaders.h | 38 +++++++++++++++++++++++++++++++++++++ 3 files changed, 40 insertions(+) create mode 100644 src/Shaders/Shaders.h diff --git a/doc/compilation-speedup.dox b/doc/compilation-speedup.dox index 2ad9b2960..13dfef0ee 100644 --- a/doc/compilation-speedup.dox +++ b/doc/compilation-speedup.dox @@ -21,6 +21,7 @@ available, each namespace has its own: - Magnum.h - SceneGraph/SceneGraph.h + - Shaders/Shaders.h @section compilation-speedup-templates Templates diff --git a/src/Shaders/CMakeLists.txt b/src/Shaders/CMakeLists.txt index 46139bbed..5ef7001c6 100644 --- a/src/Shaders/CMakeLists.txt +++ b/src/Shaders/CMakeLists.txt @@ -11,6 +11,7 @@ set(MagnumShaders_SRCS set(MagnumShaders_HEADERS FlatShader.h PhongShader.h + Shaders.h VertexColorShader.h magnumShadersVisibility.h) diff --git a/src/Shaders/Shaders.h b/src/Shaders/Shaders.h new file mode 100644 index 000000000..5a36b34f8 --- /dev/null +++ b/src/Shaders/Shaders.h @@ -0,0 +1,38 @@ +#ifndef Magnum_Shaders_Shader_h +#define Magnum_Shaders_Shader_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 Forward declarations for Magnum::Shaders namespace + */ + +#include + +namespace Magnum { namespace Shaders { + +template class FlatShader; +typedef FlatShader<2> FlatShader2D; +typedef FlatShader<3> FlatShader3D; + +class PhongShader; + +template class VertexColorShader; +typedef VertexColorShader<2> VertexColorShader2D; +typedef VertexColorShader<3> VertexColorShader3D; + +}} + +#endif