Browse Source

Template aliases also can't have "conflicting" default arguments.

Clang didn't like that (and I thought these workarounds aren't needed
with C++11's alias template anymore).
pull/7/head
Vladimír Vondruš 13 years ago
parent
commit
55fecaff5a
  1. 14
      src/SceneGraph/AbstractCamera.h
  2. 14
      src/SceneGraph/AbstractFeature.h
  3. 14
      src/SceneGraph/AbstractGroupedFeature.h
  4. 14
      src/SceneGraph/AbstractObject.h
  5. 14
      src/SceneGraph/AbstractTransformation.h
  6. 14
      src/SceneGraph/Animable.h
  7. 14
      src/SceneGraph/AnimableGroup.h
  8. 37
      src/SceneGraph/Drawable.h
  9. 14
      src/SceneGraph/FeatureGroup.h

14
src/SceneGraph/AbstractCamera.h

@ -169,7 +169,12 @@ for more information.
@note Not available on GCC < 4.7. Use <tt>%AbstractCamera<2, T></tt> instead.
@see AbstractCamera3D
*/
template<class T = GLfloat> using AbstractCamera2D = AbstractCamera<2, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using AbstractCamera2D = AbstractCamera<2, T>;
/**
@brief Base for three-dimensional cameras
@ -179,7 +184,12 @@ for more information.
@note Not available on GCC < 4.7. Use <tt>%AbstractCamera<3, T></tt> instead.
@see AbstractCamera2D
*/
template<class T = GLfloat> using AbstractCamera3D = AbstractCamera<3, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using AbstractCamera3D = AbstractCamera<3, T>;
#endif
}}

14
src/SceneGraph/AbstractFeature.h

@ -293,7 +293,12 @@ for more information.
@note Not available on GCC < 4.7. Use <tt>%AbstractFeature<2, T></tt> instead.
@see AbstractFeature3D
*/
template<class T = GLfloat> using AbstractFeature2D = AbstractFeature<2, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using AbstractFeature2D = AbstractFeature<2, T>;
/**
@brief Base for three-dimensional features
@ -303,7 +308,12 @@ for more information.
@note Not available on GCC < 4.7. Use <tt>%AbstractFeature<3, T></tt> instead.
@see AbstractFeature2D
*/
template<class T = GLfloat> using AbstractFeature3D = AbstractFeature<3, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using AbstractFeature3D = AbstractFeature<3, T>;
#endif
}}

14
src/SceneGraph/AbstractGroupedFeature.h

@ -102,7 +102,12 @@ AbstractGroupedFeature for more information.
instead.
@see AbstractGroupedFeature3D
*/
template<class Derived, class T = GLfloat> using AbstractGroupedFeature2D = AbstractGroupedFeature<2, Derived, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class Derived, class T = GLfloat>
#else
template<class Derived, class T>
#endif
using AbstractGroupedFeature2D = AbstractGroupedFeature<2, Derived, T>;
/**
@brief Base for three-dimensional grouped features
@ -113,7 +118,12 @@ AbstractGroupedFeature for more information.
instead.
@see AbstractGroupedFeature2D
*/
template<class Derived, class T = GLfloat> using AbstractGroupedFeature3D = AbstractGroupedFeature<3, Derived, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class Derived, class T = GLfloat>
#else
template<class Derived, class T>
#endif
using AbstractGroupedFeature3D = AbstractGroupedFeature<3, Derived, T>;
#endif
}}

14
src/SceneGraph/AbstractObject.h

@ -197,7 +197,12 @@ for more information.
@note Not available on GCC < 4.7. Use <tt>%AbstractObject<2, T></tt> instead.
@see AbstractObject3D
*/
template<class T = GLfloat> using AbstractObject2D = AbstractObject<2, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using AbstractObject2D = AbstractObject<2, T>;
/**
@brief Base for three-dimensional objects
@ -207,7 +212,12 @@ for more information.
@note Not available on GCC < 4.7. Use <tt>%AbstractObject<3, T></tt> instead.
@see AbstractObject2D
*/
template<class T = GLfloat> using AbstractObject3D = AbstractObject<3, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using AbstractObject3D = AbstractObject<3, T>;
#endif
}}

14
src/SceneGraph/AbstractTransformation.h

@ -149,7 +149,12 @@ AbstractTransformation for more information.
instead.
@see AbstractTransformation3D
*/
template<class T = GLfloat> using AbstractTransformation2D = AbstractTransformation<2, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using AbstractTransformation2D = AbstractTransformation<2, T>;
/**
@brief Base for three-dimensional transformations
@ -160,7 +165,12 @@ AbstractTransformation for more information.
instead.
@see AbstractTransformation2D
*/
template<class T = GLfloat> using AbstractTransformation3D = AbstractTransformation<3, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using AbstractTransformation3D = AbstractTransformation<3, T>;
#endif
}}

14
src/SceneGraph/Animable.h

@ -331,7 +331,12 @@ information.
@note Not available on GCC < 4.7. Use <tt>%Animable<2, T></tt> instead.
@see Animable3D
*/
template<class T = GLfloat> using Animable2D = Animable<2, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using Animable2D = Animable<2, T>;
/**
@brief Three-dimensional animable
@ -341,7 +346,12 @@ information.
@note Not available on GCC < 4.7. Use <tt>%Animable<3, T></tt> instead.
@see Animable2D
*/
template<class T = GLfloat> using Animable3D = Animable<3, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using Animable3D = Animable<3, T>;
#endif
}}

14
src/SceneGraph/AnimableGroup.h

@ -76,7 +76,12 @@ more information.
@note Not available on GCC < 4.7. Use <tt>%AnimableGroup<2, T></tt> instead.
@see AnimableGroup3D
*/
template<class T = GLfloat> using AnimableGroup2D = AnimableGroup<2, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using AnimableGroup2D = AnimableGroup<2, T>;
/**
@brief Three-dimensional animable
@ -86,7 +91,12 @@ more information.
@note Not available on GCC < 4.7. Use <tt>%AnimableGroup<3, T></tt> instead.
@see AnimableGroup2D
*/
template<class T = GLfloat> using AnimableGroup3D = AnimableGroup<3, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using AnimableGroup3D = AnimableGroup<3, T>;
#endif
}}

37
src/SceneGraph/Drawable.h

@ -144,7 +144,12 @@ information.
@note Not available on GCC < 4.7. Use <tt>%Drawable<2, T></tt> instead.
@see Drawable3D
*/
template<class T = GLfloat> using Drawable2D = Drawable<2, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using Drawable2D = Drawable<2, T>;
/**
@brief Three-dimensional drawable
@ -154,7 +159,12 @@ information.
@note Not available on GCC < 4.7. Use <tt>%Drawable<3, T></tt> instead.
@see Drawable2D
*/
template<class T = GLfloat> using Drawable3D = Drawable<3, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using Drawable3D = Drawable<3, T>;
#endif
/**
@ -164,12 +174,17 @@ See Drawable for more information.
@see @ref scenegraph, DrawableGroup2D, DrawableGroup3D
*/
#ifndef CORRADE_GCC46_COMPATIBILITY
template<std::uint8_t dimensions, class T = GLfloat> using DrawableGroup = FeatureGroup<dimensions, Drawable<dimensions, T>, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<std::uint8_t dimensions, class T = GLfloat>
#else
#ifndef DOXYGEN_GENERATING_OUTPUT
template<std::uint8_t dimensions, class T>
#endif
using DrawableGroup = FeatureGroup<dimensions, Drawable<dimensions, T>, T>;
#else
#ifdef DOXYGEN_GENERATING_OUTPUT
template<std::uint8_t dimensions, class T = GLfloat>
#else
template<std::uint8_t dimensions, class T>
#endif
class DrawableGroup: public FeatureGroup<dimensions, Drawable<dimensions, T>, T> {};
#endif
@ -183,7 +198,12 @@ more information.
@note Not available on GCC < 4.7. Use <tt>%Drawable<2, T></tt> instead.
@see DrawableGroup3D
*/
template<class T = GLfloat> using DrawableGroup2D = DrawableGroup<2, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using DrawableGroup2D = DrawableGroup<2, T>;
/**
@brief Group of three-dimensional drawables
@ -193,7 +213,12 @@ more information.
@note Not available on GCC < 4.7. Use <tt>%Drawable<3, T></tt> instead.
@see DrawableGroup2D
*/
template<class T = GLfloat> using DrawableGroup3D = DrawableGroup<3, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class T = GLfloat>
#else
template<class T>
#endif
using DrawableGroup3D = DrawableGroup<3, T>;
#endif
}}

14
src/SceneGraph/FeatureGroup.h

@ -118,7 +118,12 @@ AbstractGroupedFeature for more information.
instead.
@see FeatureGroup3D
*/
template<class Feature, class T = GLfloat> using FeatureGroup2D = FeatureGroup<2, Feature, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class Feature, class T = GLfloat>
#else
template<class Feature, class T>
#endif
using FeatureGroup2D = FeatureGroup<2, Feature, T>;
/**
@brief Base for three-dimensional object features
@ -129,7 +134,12 @@ AbstractGroupedFeature for more information.
instead.
@see FeatureGroup2D
*/
template<class Feature, class T = GLfloat> using FeatureGroup3D = FeatureGroup<3, Feature, T>;
#ifdef DOXYGEN_GENERATING_OUTPUT
template<class Feature, class T = GLfloat>
#else
template<class Feature, class T>
#endif
using FeatureGroup3D = FeatureGroup<3, Feature, T>;
#endif
}}

Loading…
Cancel
Save