minimap_texture_manager.cpp 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. #include "minimap_texture_manager.h"
  2. #include "minimap_generator.h"
  3. #include <QDebug>
  4. namespace Game::Map::Minimap {
  5. MinimapTextureManager::MinimapTextureManager()
  6. : m_generator(std::make_unique<MinimapGenerator>()),
  7. m_texture(std::make_unique<Render::GL::Texture>()) {}
  8. MinimapTextureManager::~MinimapTextureManager() = default;
  9. auto MinimapTextureManager::generate_for_map(const MapDefinition &map_def)
  10. -> bool {
  11. m_image = m_generator->generate(map_def);
  12. if (m_image.isNull()) {
  13. qWarning() << "MinimapTextureManager: Failed to generate minimap image";
  14. return false;
  15. }
  16. qDebug() << "MinimapTextureManager: Generated minimap of size"
  17. << m_image.width() << "x" << m_image.height();
  18. return true;
  19. }
  20. auto MinimapTextureManager::get_texture() const -> Render::GL::Texture * {
  21. return m_texture.get();
  22. }
  23. auto MinimapTextureManager::get_image() const -> const QImage & {
  24. return m_image;
  25. }
  26. void MinimapTextureManager::clear() { m_image = QImage(); }
  27. } // namespace Game::Map::Minimap