/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * Copyright (C) 2019, Google Inc. * * File Sink */ #pragma once #include #include #include #include #include "frame_sink.h" class Image; class FileSink : public FrameSink { public: FileSink(const libcamera::Camera *camera, const std::map &streamNames, const std::string &pattern = ""); ~FileSink(); int configure(const libcamera::CameraConfiguration &config) override; void mapBuffer(libcamera::FrameBuffer *buffer) override; bool processRequest(libcamera::Request *request) override; private: void writeBuffer(const libcamera::Stream *stream, libcamera::FrameBuffer *buffer, const libcamera::ControlList &metadata); #ifdef HAVE_TIFF const libcamera::Camera *camera_; #endif std::map streamNames_; std::string pattern_; std::map> mappedBuffers_; }; camera official repositorygit repository hosting on libcamera.org
summaryrefslogtreecommitdiff
blob: 7a4cb6257dec614e0acdf01e9f97267a921c0473 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20