#pragma once
#include "DeerRender/Render/FrameBuffer.h"

#include <cstring>
#include <stdint.h>

namespace Deer {
    // TODO: Add safety
    namespace FrameBufferManager {
        uint16_t createRGBA8FrameBuffer(std::string& name, int, int);
        void resizeFrameBuffer(uint16_t frameBufferId, int, int);

        int getFrameBufferWidth(uint16_t frameBufferId);
        int getFrameBufferHeight(uint16_t frameBufferId);

        const std::string& getFrameBufferName(uint16_t);
        uint16_t getFrameBufferId(std::string& name);
        FrameBuffer& getFrameBuffer(uint16_t);

        void unloadAllFrameBuffer();
    }
}