Multi-planar frame buffers can store their planes contiguously in memory, or split them in discontiguous memory areas. Add a private function to check in which of these two categories the frame buffer belongs. This will be used to correctly handle the differences between the V4L2 single and multi planar APIs. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Hirokazu Honda <hiroh@chromium.org>
34 lines
694 B
C++
34 lines
694 B
C++
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
|
/*
|
|
* Copyright (C) 2020, Google Inc.
|
|
*
|
|
* framebuffer.h - Internal frame buffer handling
|
|
*/
|
|
#ifndef __LIBCAMERA_INTERNAL_FRAMEBUFFER_H__
|
|
#define __LIBCAMERA_INTERNAL_FRAMEBUFFER_H__
|
|
|
|
#include <libcamera/base/class.h>
|
|
|
|
#include <libcamera/framebuffer.h>
|
|
|
|
namespace libcamera {
|
|
|
|
class FrameBuffer::Private : public Extensible::Private
|
|
{
|
|
LIBCAMERA_DECLARE_PUBLIC(FrameBuffer)
|
|
|
|
public:
|
|
Private();
|
|
|
|
void setRequest(Request *request) { request_ = request; }
|
|
bool isContiguous() const { return isContiguous_; }
|
|
|
|
private:
|
|
Request *request_;
|
|
bool isContiguous_;
|
|
};
|
|
|
|
} /* namespace libcamera */
|
|
|
|
#endif /* __LIBCAMERA_INTERNAL_FRAMEBUFFER_H__ */
|