/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * Copyright (C) 2022, Ideas on Board Oy * * SDL Sink */ #pragma once #include #include #include #include #include "frame_sink.h" class Image; class SDLTexture; class SDLSink : public FrameSink { public: SDLSink(); ~SDLSink(); int configure(const libcamera::CameraConfiguration &config) override; int start() override; int stop() override; void mapBuffer(libcamera::FrameBuffer *buffer) override; bool processRequest(libcamera::Request *request) override; private: void renderBuffer(libcamera::FrameBuffer *buffer); void processSDLEvents(); std::map> mappedBuffers_; std::unique_ptr texture_; SDL_Window *window_; SDL_Renderer *renderer_; SDL_Rect rect_; bool init_; }; class='form'>
Jacopo Mondi's clone of libcameragit repository hosting on libcamera.org
summaryrefslogtreecommitdiff
blob: 0a0586d36713bfbb299f4b17f53aa9d04aebceb4 (plain)
1