//
// Created by spenc on 5/21/2025.
//
#pragma once
#include "systems/Asset.h"
#include <string>

namespace OX {
    class Texture2D : public Asset {
    public:
        Texture2D() = default;
        ~Texture2D();

        std::string GetTypeName() const override { return "texture2D"; }
        bool LoadFromFile(const std::string& path) override { return false; } // Not used now

        void SetFromGL(uint32_t texID, int width, int height);

        uint32_t GetID() const { return m_TextureID; }
        int GetWidth() const { return m_Width; }
        int GetHeight() const { return m_Height; }

    private:
        uint32_t m_TextureID = 0;
        int m_Width = 0;
        int m_Height = 0;
    };
};
