#pragma once #include "src/Core/Core.h" #include "src/Rendering/Textures/Texture.h" #include "src/Rendering/Buffers/Framebuffer.h" class ThumbnailManager { private: std::unordered_map> m_Thumbnails; Ref m_Framebuffer; Ref m_ShadedFramebuffer; const Nuake::Vector2 m_ThumbnailSize = { 128, 128 }; public: ThumbnailManager(); ~ThumbnailManager() = default; static ThumbnailManager& Get(); bool IsThumbnailLoaded(const std::string& path) const; Ref GetThumbnail(const std::string& path); void MarkThumbnailAsDirty(const std::string& path); Ref GenerateThumbnail(const std::string& path, Ref texture); };