Files
MapLibreParticleLab/include/mln/webgpu/dynamic_texture.hpp
Bart Louwers 2a8ebc4906 core: rename mbgl directories to mln (#4511)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2026-08-22 20:50:14 +02:00

31 lines
796 B
C++

#pragma once
#include <mln/gfx/dynamic_texture.hpp>
namespace mln {
namespace webgpu {
class Context;
class DynamicTexture : public gfx::DynamicTexture {
public:
DynamicTexture(Context& context, Size size, gfx::TexturePixelType pixelType);
void uploadImage(const uint8_t* pixelData, gfx::TextureHandle& texHandle) override;
void uploadDeferredImages(gfx::UploadPass&) override;
bool removeTexture(const gfx::TextureHandle& texHandle) override;
using ImagesToUpload =
std::unordered_map<gfx::TextureHandle, std::unique_ptr<uint8_t[]>, gfx::TextureHandle::Hasher>;
private:
Context& context;
Size size;
gfx::TexturePixelType pixelType;
bool deferredCreation = false;
ImagesToUpload imagesToUpload;
};
} // namespace webgpu
} // namespace mln