//
// Created by slinky on 5/1/26.
//

#ifndef B_ENGINE_TEXTUREMANAGER_H
#define B_ENGINE_TEXTUREMANAGER_H

#include <memory>
#include <unordered_map>

#include "Texture.h"

class TextureManager {
public:
    static std::unordered_map<std::string, std::shared_ptr<Texture>> textures;

    static std::shared_ptr<Texture> load_from_file(std::string_view filePath);
    static std::shared_ptr<Texture> load_from_data(unsigned char* data, int width, int height, int channels);
};

#endif //B_ENGINE_TEXTUREMANAGER_H