SDL++
C++wrapperfortheSDLlibrary.
|
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