18 template<
typename T,
typename =
void>
19 struct has_Image : std::false_type {};
21 struct has_Image<T, std::void_t<typename T::Images>> : std::true_type {};
24 template<
typename T,
typename =
void>
25 struct has_Font : std::false_type {};
27 struct has_Font<T, std::void_t<typename T::Fonts>> : std::true_type {};
30 template<
typename T,
typename =
void>
31 struct has_Sound : std::false_type {};
33 struct has_Sound<T, std::void_t<typename T::Sounds>> : std::true_type {};
87 template<
typename Manifest>
108 template<
typename M = Manifest>
109 static std::enable_if_t<has_Image<M>::value,
const sf::Texture&>
110 get(
typename M::Images image);
120 template<
typename M = Manifest>
121 static std::enable_if_t<has_Font<M>::value,
const sf::Font&>
122 get(
typename M::Fonts font);
132 template<
typename M = Manifest>
134 get(
typename M::Sounds sound);
144 template<
typename M = Manifest>
145 static std::enable_if_t<has_Font<M>::value,
const sf::Font&>
151#include "../../../src/Resources/AssetsManager.tpp"
Unified asset accessor for textures, fonts, and sound buffers.
static std::enable_if_t< has_Image< M >::value, const sf::Texture & > get(typename M::Images image)
Retrieve a cached sf::Texture by manifest enum value.
static std::enable_if_t< has_Sound< M >::value, const sf::SoundBuffer & > get(typename M::Sounds sound)
Retrieve a cached sf::SoundBuffer by manifest enum value.
static std::enable_if_t< has_Font< M >::value, const sf::Font & > getDefaultFont()
Return the built-in Arial font.
static std::enable_if_t< has_Font< M >::value, const sf::Font & > get(typename M::Fonts font)
Retrieve a cached sf::Font by manifest enum value.
Manifest-driven cache for sf::Font resources.
Manifest-driven cache for sf::SoundBuffer resources.
Manifest-driven cache for sf::Texture resources.