SDL++
C++wrapperfortheSDLlibrary.

misc/is_base_of_all.h

Go to the documentation of this file.
00001 
00021 #ifndef SDL_MISC_IS_BASE_OF_ALL_H
00022 #define SDL_MISC_IS_BASE_OF_ALL_H
00023 
00024 #include <SDL.h>
00025 
00026 #include <boost/type_traits/is_base_of.hpp>
00027 
00028 namespace sdl {
00029 namespace misc {
00037     template<typename Base, typename... Ts>
00038     struct is_base_of_all {}; //is_base_of_all
00039 
00046     template<typename Base>
00047     struct is_base_of_all<Base> {
00051         const static bool value = true; 
00052     }; //is_base_of_all
00053 
00062     template<typename Base, typename T, typename... Ts>
00063     struct is_base_of_all<Base, T, Ts...> {
00067         const static bool value = boost::is_base_of<Base, T>::value && is_base_of_all<Base, Ts...>::value;
00068     }; //is_base_of_all
00069 }; //misc
00070 }; //sdl
00071 
00072 #endif //SDL_MISC_IS_BASE_OF_ALL_H
00073 
 All Classes Namespaces Files Functions Variables Typedefs