libcamera  v0.3.1+12-19bbca3c
Supporting cameras in Linux since 2019
Public Types | Public Member Functions | List of all members
libcamera::MappedFrameBuffer Class Reference

Map a FrameBuffer using the MappedBuffer interface. More...

Inheritance diagram for libcamera::MappedFrameBuffer:
Inheritance graph
[legend]
Collaboration diagram for libcamera::MappedFrameBuffer:
Collaboration graph
[legend]

Public Types

enum  MapFlag { MapFlag::Read = 1 << 0, MapFlag::Write = 1 << 1, MapFlag::ReadWrite = Read | Write }
 Specify the mapping mode for the FrameBuffer. More...
 
using MapFlags = Flags< MapFlag >
 A bitwise combination of MappedFrameBuffer::MapFlag values.
 
- Public Types inherited from libcamera::MappedBuffer
using Plane = Span< uint8_t >
 A mapped region of memory accessible to the CPU. More...
 

Public Member Functions

 MappedFrameBuffer (const FrameBuffer *buffer, MapFlags flags)
 Map all planes of a FrameBuffer. More...
 
- Public Member Functions inherited from libcamera::MappedBuffer
 MappedBuffer (MappedBuffer &&other)
 Move constructor, construct the MappedBuffer with the contents of other using move semantics. More...
 
MappedBufferoperator= (MappedBuffer &&other)
 Move assignment operator, replace the mappings with those of other. More...
 
bool isValid () const
 Check if the MappedBuffer instance is valid. More...
 
int error () const
 Retrieve the map error status. More...
 
const std::vector< Plane > & planes () const
 Retrieve the mapped planes. More...
 

Additional Inherited Members

- Protected Member Functions inherited from libcamera::MappedBuffer
 MappedBuffer ()
 Construct an empty MappedBuffer.
 
- Protected Attributes inherited from libcamera::MappedBuffer
int error_
 Stores the error value if present. More...
 
std::vector< Planeplanes_
 Stores the internal mapped planes. More...
 
std::vector< Planemaps_
 Stores the mapped buffer. More...
 

Detailed Description

Map a FrameBuffer using the MappedBuffer interface.

Member Enumeration Documentation

◆ MapFlag

Specify the mapping mode for the FrameBuffer.

Enumerator
Read 

Create a read-only mapping.

Write 

Create a write-only mapping.

ReadWrite 

Create a mapping that can be both read and written.

Constructor & Destructor Documentation

◆ MappedFrameBuffer()

libcamera::MappedFrameBuffer::MappedFrameBuffer ( const FrameBuffer buffer,
MapFlags  flags 
)

Map all planes of a FrameBuffer.

Parameters
[in]bufferFrameBuffer to be mapped
[in]flagsProtection flags to apply to map

Construct an object to map a frame buffer for CPU access. The mapping can be made as Read only, Write only or support Read and Write operations by setting the MapFlag flags accordingly.


The documentation for this class was generated from the following files: