Message ID | 20250425104703.805170-2-barnabas.pocze@ideasonboard.com |
---|---|
State | New |
Headers | show |
Series |
|
Related | show |
Quoting Barnabás Pőcze (2025-04-25 11:47:00) > A non-owning span is sufficient, so use that instead of a vector. > > Signed-off-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com> > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> > --- > src/apps/cam/sdl_texture.h | 4 ++-- > src/apps/cam/sdl_texture_mjpg.cpp | 2 +- > src/apps/cam/sdl_texture_mjpg.h | 2 +- > src/apps/cam/sdl_texture_yuv.cpp | 4 ++-- > src/apps/cam/sdl_texture_yuv.h | 4 ++-- > 5 files changed, 8 insertions(+), 8 deletions(-) > > diff --git a/src/apps/cam/sdl_texture.h b/src/apps/cam/sdl_texture.h > index 990f83b6e..39e1c7b38 100644 > --- a/src/apps/cam/sdl_texture.h > +++ b/src/apps/cam/sdl_texture.h > @@ -7,7 +7,7 @@ > > #pragma once > > -#include <vector> > +#include <libcamera/base/span.h> > > #include <SDL2/SDL.h> > > @@ -19,7 +19,7 @@ public: > SDLTexture(const SDL_Rect &rect, uint32_t pixelFormat, const int stride); > virtual ~SDLTexture(); > int create(SDL_Renderer *renderer); > - virtual void update(const std::vector<libcamera::Span<const uint8_t>> &data) = 0; > + virtual void update(libcamera::Span<const libcamera::Span<const uint8_t>> data) = 0; > SDL_Texture *get() const { return ptr_; } > > protected: > diff --git a/src/apps/cam/sdl_texture_mjpg.cpp b/src/apps/cam/sdl_texture_mjpg.cpp > index cace18fc6..ca49a1142 100644 > --- a/src/apps/cam/sdl_texture_mjpg.cpp > +++ b/src/apps/cam/sdl_texture_mjpg.cpp > @@ -76,7 +76,7 @@ int SDLTextureMJPG::decompress(Span<const uint8_t> data) > return 0; > } > > -void SDLTextureMJPG::update(const std::vector<libcamera::Span<const uint8_t>> &data) > +void SDLTextureMJPG::update(libcamera::Span<const libcamera::Span<const uint8_t>> data) > { > decompress(data[0]); > SDL_UpdateTexture(ptr_, nullptr, rgb_.get(), stride_); > diff --git a/src/apps/cam/sdl_texture_mjpg.h b/src/apps/cam/sdl_texture_mjpg.h > index 37bed5f0e..be8a55fe7 100644 > --- a/src/apps/cam/sdl_texture_mjpg.h > +++ b/src/apps/cam/sdl_texture_mjpg.h > @@ -14,7 +14,7 @@ class SDLTextureMJPG : public SDLTexture > public: > SDLTextureMJPG(const SDL_Rect &rect); > > - void update(const std::vector<libcamera::Span<const uint8_t>> &data) override; > + void update(libcamera::Span<const libcamera::Span<const uint8_t>> data) override; > > private: > int decompress(libcamera::Span<const uint8_t> data); > diff --git a/src/apps/cam/sdl_texture_yuv.cpp b/src/apps/cam/sdl_texture_yuv.cpp > index 480d7a379..80a5ec05d 100644 > --- a/src/apps/cam/sdl_texture_yuv.cpp > +++ b/src/apps/cam/sdl_texture_yuv.cpp > @@ -15,7 +15,7 @@ SDLTextureNV12::SDLTextureNV12(const SDL_Rect &rect, unsigned int stride) > { > } > > -void SDLTextureNV12::update(const std::vector<libcamera::Span<const uint8_t>> &data) > +void SDLTextureNV12::update(libcamera::Span<const libcamera::Span<const uint8_t>> data) > { > SDL_UpdateNVTexture(ptr_, &rect_, data[0].data(), stride_, > data[1].data(), stride_); > @@ -27,7 +27,7 @@ SDLTextureYUYV::SDLTextureYUYV(const SDL_Rect &rect, unsigned int stride) > { > } > > -void SDLTextureYUYV::update(const std::vector<libcamera::Span<const uint8_t>> &data) > +void SDLTextureYUYV::update(libcamera::Span<const libcamera::Span<const uint8_t>> data) > { > SDL_UpdateTexture(ptr_, &rect_, data[0].data(), stride_); > } > diff --git a/src/apps/cam/sdl_texture_yuv.h b/src/apps/cam/sdl_texture_yuv.h > index 29c756e77..db877f503 100644 > --- a/src/apps/cam/sdl_texture_yuv.h > +++ b/src/apps/cam/sdl_texture_yuv.h > @@ -14,7 +14,7 @@ class SDLTextureNV12 : public SDLTexture > { > public: > SDLTextureNV12(const SDL_Rect &rect, unsigned int stride); > - void update(const std::vector<libcamera::Span<const uint8_t>> &data) override; > + void update(libcamera::Span<const libcamera::Span<const uint8_t>> data) override; > }; > #endif > > @@ -22,5 +22,5 @@ class SDLTextureYUYV : public SDLTexture > { > public: > SDLTextureYUYV(const SDL_Rect &rect, unsigned int stride); > - void update(const std::vector<libcamera::Span<const uint8_t>> &data) override; > + void update(libcamera::Span<const libcamera::Span<const uint8_t>> data) override; > }; > -- > 2.49.0 >
diff --git a/src/apps/cam/sdl_texture.h b/src/apps/cam/sdl_texture.h index 990f83b6e..39e1c7b38 100644 --- a/src/apps/cam/sdl_texture.h +++ b/src/apps/cam/sdl_texture.h @@ -7,7 +7,7 @@ #pragma once -#include <vector> +#include <libcamera/base/span.h> #include <SDL2/SDL.h> @@ -19,7 +19,7 @@ public: SDLTexture(const SDL_Rect &rect, uint32_t pixelFormat, const int stride); virtual ~SDLTexture(); int create(SDL_Renderer *renderer); - virtual void update(const std::vector<libcamera::Span<const uint8_t>> &data) = 0; + virtual void update(libcamera::Span<const libcamera::Span<const uint8_t>> data) = 0; SDL_Texture *get() const { return ptr_; } protected: diff --git a/src/apps/cam/sdl_texture_mjpg.cpp b/src/apps/cam/sdl_texture_mjpg.cpp index cace18fc6..ca49a1142 100644 --- a/src/apps/cam/sdl_texture_mjpg.cpp +++ b/src/apps/cam/sdl_texture_mjpg.cpp @@ -76,7 +76,7 @@ int SDLTextureMJPG::decompress(Span<const uint8_t> data) return 0; } -void SDLTextureMJPG::update(const std::vector<libcamera::Span<const uint8_t>> &data) +void SDLTextureMJPG::update(libcamera::Span<const libcamera::Span<const uint8_t>> data) { decompress(data[0]); SDL_UpdateTexture(ptr_, nullptr, rgb_.get(), stride_); diff --git a/src/apps/cam/sdl_texture_mjpg.h b/src/apps/cam/sdl_texture_mjpg.h index 37bed5f0e..be8a55fe7 100644 --- a/src/apps/cam/sdl_texture_mjpg.h +++ b/src/apps/cam/sdl_texture_mjpg.h @@ -14,7 +14,7 @@ class SDLTextureMJPG : public SDLTexture public: SDLTextureMJPG(const SDL_Rect &rect); - void update(const std::vector<libcamera::Span<const uint8_t>> &data) override; + void update(libcamera::Span<const libcamera::Span<const uint8_t>> data) override; private: int decompress(libcamera::Span<const uint8_t> data); diff --git a/src/apps/cam/sdl_texture_yuv.cpp b/src/apps/cam/sdl_texture_yuv.cpp index 480d7a379..80a5ec05d 100644 --- a/src/apps/cam/sdl_texture_yuv.cpp +++ b/src/apps/cam/sdl_texture_yuv.cpp @@ -15,7 +15,7 @@ SDLTextureNV12::SDLTextureNV12(const SDL_Rect &rect, unsigned int stride) { } -void SDLTextureNV12::update(const std::vector<libcamera::Span<const uint8_t>> &data) +void SDLTextureNV12::update(libcamera::Span<const libcamera::Span<const uint8_t>> data) { SDL_UpdateNVTexture(ptr_, &rect_, data[0].data(), stride_, data[1].data(), stride_); @@ -27,7 +27,7 @@ SDLTextureYUYV::SDLTextureYUYV(const SDL_Rect &rect, unsigned int stride) { } -void SDLTextureYUYV::update(const std::vector<libcamera::Span<const uint8_t>> &data) +void SDLTextureYUYV::update(libcamera::Span<const libcamera::Span<const uint8_t>> data) { SDL_UpdateTexture(ptr_, &rect_, data[0].data(), stride_); } diff --git a/src/apps/cam/sdl_texture_yuv.h b/src/apps/cam/sdl_texture_yuv.h index 29c756e77..db877f503 100644 --- a/src/apps/cam/sdl_texture_yuv.h +++ b/src/apps/cam/sdl_texture_yuv.h @@ -14,7 +14,7 @@ class SDLTextureNV12 : public SDLTexture { public: SDLTextureNV12(const SDL_Rect &rect, unsigned int stride); - void update(const std::vector<libcamera::Span<const uint8_t>> &data) override; + void update(libcamera::Span<const libcamera::Span<const uint8_t>> data) override; }; #endif @@ -22,5 +22,5 @@ class SDLTextureYUYV : public SDLTexture { public: SDLTextureYUYV(const SDL_Rect &rect, unsigned int stride); - void update(const std::vector<libcamera::Span<const uint8_t>> &data) override; + void update(libcamera::Span<const libcamera::Span<const uint8_t>> data) override; };