class EE::Graphics::ShaderProgramManager¶
The Shader Program Manager is a singleton class that manages all the instances of Shader Programs instanciated. Releases the Shader Program instances automatically. So the user doesn’t need to release any Shader Program instance.
#include <shaderprogrammanager.hpp> class ShaderProgramManager: public EE::System::ResourceManager { public: // construction virtual ~ShaderProgramManager(); // methods void reload(); };
Inherited Members¶
public: // methods virtual T* add(T* resource); bool remove(T* resource, bool remove = true); bool removeById(const String::HashType& id, bool remove = true); bool removeByName(const std::string& name, bool remove = true); T* getByName(const std::string& name); T* getById(const String::HashType& id); Uint32 getCount(); Uint32 getCount(const std::string& name); Uint32 getCount(const String::HashType& id); bool exists(const std::string& name); bool existsId(const String::HashType& id); void destroy(); void printNames(); UnorderedMap<String::HashType, T*>& getResources(); const bool& isDestroying() const; template <typename Predicate> void each(Predicate pred) const; template <typename Predicate> void each(Predicate pred); template <typename Predicate> T* findIf(Predicate pred) const; template <typename Predicate> T* findIf(Predicate pred);