[RFC,v1,1/5] apps: cam: sdl_texture: Take list of buffers in span
diff mbox series

Message ID 20250421155109.175930-2-barnabas.pocze@ideasonboard.com
State New
Headers show
Series
  • apps: cam: Support {RGB,BGR}888 format
Related show

Commit Message

Barnabás Pőcze April 21, 2025, 3:51 p.m. UTC
Signed-off-by: Barnabás Pőcze <barnabas.pocze@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(-)

Patch
diff mbox series

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;
 };