libcamera  v0.0.2
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, 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), 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;
44  uint64_t pixelRate;
45  uint32_t minLineLength;
46  uint32_t maxLineLength;
47  uint32_t minFrameLength;
48  uint32_t maxFrameLength;
49 };
50 
51 struct IPABuffer
52 {
53 public:
54 #ifndef __DOXYGEN__
55  IPABuffer()
56  : id(0)
57  {
58  }
59 
60  IPABuffer(uint32_t _id, const std::vector<FrameBuffer::Plane> &_planes)
61  : id(_id), planes(_planes)
62  {
63  }
64 #endif
65 
66 
67  uint32_t id;
68  std::vector<FrameBuffer::Plane> planes;
69 };
70 
72 {
73 public:
74 #ifndef __DOXYGEN__
75  IPASettings()
76  {
77  }
78 
79  IPASettings(const std::string &_configurationFile, const std::string &_sensorModel)
80  : configurationFile(_configurationFile), sensorModel(_sensorModel)
81  {
82  }
83 #endif
84 
85 
86  std::string configurationFile;
87  std::string sensorModel;
88 };
89 
90 struct IPAStream
91 {
92 public:
93 #ifndef __DOXYGEN__
94  IPAStream()
95  : pixelFormat(0)
96  {
97  }
98 
99  IPAStream(uint32_t _pixelFormat, const Size &_size)
100  : pixelFormat(_pixelFormat), size(_size)
101  {
102  }
103 #endif
104 
105 
106  uint32_t pixelFormat;
108 };
109 
110 
111 } /* namespace libcamera */
Describe a rectangle's position and dimensions.
Definition: geometry.h:243
Describe a two-dimensional size.
Definition: geometry.h:53
Image Processing Algorithm interface.
Top-level libcamera namespace.
Definition: backtrace.h:17
Buffer information for the IPA interface.
Definition: core_ipa_interface.h:52
uint32_t id
The buffer unique ID.
Definition: core_ipa_interface.h:67
std::vector< FrameBuffer::Plane > planes
The buffer planes description.
Definition: core_ipa_interface.h:68
Report the image sensor characteristics.
Definition: core_ipa_interface.h:24
Size outputSize
The size of the images produced by the camera sensor.
Definition: core_ipa_interface.h:43
Size activeAreaSize
The size of the pixel array active area of the sensor.
Definition: core_ipa_interface.h:41
uint32_t minFrameLength
The minimum allowable frame length in units of lines.
Definition: core_ipa_interface.h:47
Rectangle analogCrop
The portion of the pixel array active area which is read-out and processed.
Definition: core_ipa_interface.h:42
uint32_t maxFrameLength
The maximum allowable frame length in units of lines.
Definition: core_ipa_interface.h:48
uint32_t maxLineLength
The maximum line length in pixels.
Definition: core_ipa_interface.h:46
uint32_t bitsPerPixel
The number of bits per pixel of the image format produced by the image sensor.
Definition: core_ipa_interface.h:40
std::string model
The image sensor model name.
Definition: core_ipa_interface.h:39
uint32_t minLineLength
The minimum line length in pixels.
Definition: core_ipa_interface.h:45
uint64_t pixelRate
The number of pixels produced in a second.
Definition: core_ipa_interface.h:44
IPA interface initialization settings.
Definition: core_ipa_interface.h:72
std::string sensorModel
The sensor model name.
Definition: core_ipa_interface.h:87
std::string configurationFile
The name of the IPA configuration file.
Definition: core_ipa_interface.h:86
Stream configuration for the IPA interface.
Definition: core_ipa_interface.h:91
uint32_t pixelFormat
The stream pixel format.
Definition: core_ipa_interface.h:106
Size size
The stream size in pixels.
Definition: core_ipa_interface.h:107