libcamera  v0.2.0+31-5e4dc46a
Supporting cameras in Linux since 2019
core_ipa_interface.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
2 /*
3  * Copyright (C) 2020, Google Inc.
4  *
5  * core_ipa_interface.h - libcamera core definitions for Image Processing Algorithms
6  *
7  * This file is auto-generated. Do not edit.
8  */
9 
10 #pragma once
11 
12 
13 #include <vector>
14 
16 
17 namespace libcamera {
18 
19 
20 
21 
22 
24 {
25 public:
26 #ifndef __DOXYGEN__
29  {
30  }
31 
32  IPACameraSensorInfo(const std::string &_model, uint32_t _bitsPerPixel, uint32_t _cfaPattern, const Size &_activeAreaSize, const Rectangle &_analogCrop, const Size &_outputSize, uint64_t _pixelRate, uint32_t _minLineLength, uint32_t _maxLineLength, uint32_t _minFrameLength, uint32_t _maxFrameLength)
33  : model(_model), bitsPerPixel(_bitsPerPixel), cfaPattern(_cfaPattern), activeAreaSize(_activeAreaSize), analogCrop(_analogCrop), outputSize(_outputSize), pixelRate(_pixelRate), minLineLength(_minLineLength), maxLineLength(_maxLineLength), minFrameLength(_minFrameLength), maxFrameLength(_maxFrameLength)
34  {
35  }
36 #endif
37 
38 
39  std::string model;
40  uint32_t bitsPerPixel;
41  uint32_t cfaPattern;
45  uint64_t pixelRate;
46  uint32_t minLineLength;
47  uint32_t maxLineLength;
48  uint32_t minFrameLength;
49  uint32_t maxFrameLength;
50 };
51 
52 struct IPABuffer
53 {
54 public:
55 #ifndef __DOXYGEN__
56  IPABuffer()
57  : id(0)
58  {
59  }
60 
61  IPABuffer(uint32_t _id, const std::vector<FrameBuffer::Plane> &_planes)
62  : id(_id), planes(_planes)
63  {
64  }
65 #endif
66 
67 
68  uint32_t id;
69  std::vector<FrameBuffer::Plane> planes;
70 };
71 
73 {
74 public:
75 #ifndef __DOXYGEN__
76  IPASettings()
77  {
78  }
79 
80  IPASettings(const std::string &_configurationFile, const std::string &_sensorModel)
81  : configurationFile(_configurationFile), sensorModel(_sensorModel)
82  {
83  }
84 #endif
85 
86 
87  std::string configurationFile;
88  std::string sensorModel;
89 };
90 
91 struct IPAStream
92 {
93 public:
94 #ifndef __DOXYGEN__
95  IPAStream()
96  : pixelFormat(0)
97  {
98  }
99 
100  IPAStream(uint32_t _pixelFormat, const Size &_size)
101  : pixelFormat(_pixelFormat), size(_size)
102  {
103  }
104 #endif
105 
106 
107  uint32_t pixelFormat;
109 };
110 
111 
112 } /* namespace libcamera */
Report the image sensor characteristics.
Definition: core_ipa_interface.h:23
Size activeAreaSize
The size of the pixel array active area of the sensor.
Definition: core_ipa_interface.h:42
uint32_t minLineLength
The minimum line length in pixels.
Definition: core_ipa_interface.h:46
Image Processing Algorithm interface.
Top-level libcamera namespace.
Definition: backtrace.h:17
uint32_t pixelFormat
The stream pixel format.
Definition: core_ipa_interface.h:107
uint32_t id
The buffer unique ID.
Definition: core_ipa_interface.h:68
Describe a two-dimensional size.
Definition: geometry.h:52
uint32_t bitsPerPixel
The number of bits per pixel of the image format produced by the image sensor.
Definition: core_ipa_interface.h:40
uint32_t cfaPattern
The arrangement of colour filters on the image sensor.
Definition: core_ipa_interface.h:41
Stream configuration for the IPA interface.
Definition: core_ipa_interface.h:91
Rectangle analogCrop
The portion of the pixel array active area which is read-out and processed.
Definition: core_ipa_interface.h:43
Describe a rectangle&#39;s position and dimensions.
Definition: geometry.h:242
IPA interface initialization settings.
Definition: core_ipa_interface.h:72
uint32_t maxFrameLength
The maximum allowable frame length in units of lines.
Definition: core_ipa_interface.h:49
uint32_t maxLineLength
The maximum line length in pixels.
Definition: core_ipa_interface.h:47
Size outputSize
The size of the images produced by the camera sensor.
Definition: core_ipa_interface.h:44
std::string configurationFile
The name of the IPA configuration file.
Definition: core_ipa_interface.h:87
uint64_t pixelRate
The number of pixels produced in a second.
Definition: core_ipa_interface.h:45
std::vector< FrameBuffer::Plane > planes
The buffer planes description.
Definition: core_ipa_interface.h:69
uint32_t minFrameLength
The minimum allowable frame length in units of lines.
Definition: core_ipa_interface.h:48
Size size
The stream size in pixels.
Definition: core_ipa_interface.h:108
Buffer information for the IPA interface.
Definition: core_ipa_interface.h:52
std::string model
The image sensor model name.
Definition: core_ipa_interface.h:39
std::string sensorModel
The sensor model name.
Definition: core_ipa_interface.h:88