class glw::ProgramList

#include <ShaderProgramList.h>

class ProgramList {
public:
    // construction

    ProgramList();
    ~ProgramList();

    // methods

    static PProgramList Create();
    void ClearAll();
    void Reload();
    void AddFromFile(const std::string& program_name, const ShaderPipeline& files, const std::map<std::string, std::string> replace_map = std::map<std::string, std::string>());
    void AddFromSource(const std::string& program_name, const ShaderPipeline& sources, const std::map<std::string, std::string> replace_map = std::map<std::string, std::string>());
    bool Exist(const std::string& program_name);
    void Use(const std::string& program_name) const;
    std::vector<std::string> GetAllProgramNames() const;
    glw::PProgram GetProgram(const std::string& program_name);
    bool IsEmpty();
};