The MappedFrameBuffer is a convenience feature which sits on top of the FrameBuffer and facilitates mapping it to CPU accessible memory with mmap. This implementation is internal and currently sits in the same internal files as the internal FrameBuffer, thus exposing those internals to users of the MappedFramebuffer implementation. Move the MappedFrameBuffer and MappedBuffer implementation to its own implementation files, and fix the sources throughout to use that accordingly. Reviewed-by: Hirokazu Honda <hiroh@chromium.org> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
30 lines
772 B
C++
30 lines
772 B
C++
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
|
/*
|
|
* Copyright (C) 2020, Google Inc.
|
|
*
|
|
* post_processor.h - CameraStream Post Processing Interface
|
|
*/
|
|
#ifndef __ANDROID_POST_PROCESSOR_H__
|
|
#define __ANDROID_POST_PROCESSOR_H__
|
|
|
|
#include <libcamera/framebuffer.h>
|
|
#include <libcamera/stream.h>
|
|
|
|
#include "camera_buffer.h"
|
|
|
|
class CameraMetadata;
|
|
|
|
class PostProcessor
|
|
{
|
|
public:
|
|
virtual ~PostProcessor() = default;
|
|
|
|
virtual int configure(const libcamera::StreamConfiguration &inCfg,
|
|
const libcamera::StreamConfiguration &outCfg) = 0;
|
|
virtual int process(const libcamera::FrameBuffer &source,
|
|
CameraBuffer *destination,
|
|
const CameraMetadata &requestMetadata,
|
|
CameraMetadata *resultMetadata) = 0;
|
|
};
|
|
|
|
#endif /* __ANDROID_POST_PROCESSOR_H__ */
|