#ifndef FB_FB_HPP #define FB_FB_HPP #include #include "math/vector.hpp" namespace engine::fb { template concept FrameBufferConcept = requires (T fb, int x, int y, unsigned w, unsigned h, engine::math::Vector4 point) { { fb.resize(w, h) } -> std::same_as; { fb.clear() } -> std::same_as; { fb.draw_point(x, y, point) } -> std::same_as; { fb.width() } -> std::same_as; { fb.height() } -> std::same_as; }; } #endif // FB_FB_HPP