7 #ifndef __LIBCAMERA_INTERNAL_CAMERA_SENSOR_H__ 8 #define __LIBCAMERA_INTERNAL_CAMERA_SENSOR_H__ 51 const std::string &
model()
const {
return model_; }
52 const std::string &
id()
const {
return id_; }
54 const std::vector<unsigned int> &
mbusCodes()
const {
return mbusCodes_; }
55 const std::vector<Size> &
sizes()
const {
return sizes_; }
56 Size resolution()
const;
59 const Size &size)
const;
63 ControlList getControls(
const std::vector<uint32_t> &ids);
72 std::string logPrefix()
const override;
78 int validateSensorDriver();
79 void initVimcDefaultProperties();
83 std::unique_ptr<V4L2Subdevice> subdev_;
90 std::vector<unsigned int> mbusCodes_;
91 std::vector<Size> sizes_;
Utilities to help constructing class interfaces.
uint64_t pixelRate
The number of pixels produced in a second.
Definition: camera_sensor.h:36
Report the image sensor characteristics.
Definition: camera_sensor.h:27
const std::vector< Size > & sizes() const
Retrieve the frame sizes supported by the camera sensor.
Definition: camera_sensor.h:55
const std::vector< unsigned int > & mbusCodes() const
Retrieve the media bus codes supported by the camera sensor.
Definition: camera_sensor.h:54
const std::string & model() const
Retrieve the sensor model name.
Definition: camera_sensor.h:51
Base class to support log message extensions.
Definition: log.h:84
Top-level libcamera namespace.
Definition: bound_method.h:15
Rectangle analogCrop
The portion of the pixel array active area which is read-out and processed.
Definition: camera_sensor.h:33
Describe a two-dimensional size.
Definition: geometry.h:50
std::map< unsigned int, std::vector< SizeRange > > Formats
A map of supported media bus formats to frame sizes.
Definition: v4l2_subdevice.h:37
const ControlList & properties() const
Retrieve the camera sensor properties.
Definition: camera_sensor.h:68
Size outputSize
The size of the images produced by the camera sensor.
Definition: camera_sensor.h:34
const std::string & id() const
Retrieve the sensor ID.
Definition: camera_sensor.h:52
uint32_t maxFrameLength
The maximum allowable frame length in units of lines.
Definition: camera_sensor.h:40
A map of ControlId to ControlInfo.
Definition: controls.h:301
#define LIBCAMERA_DISABLE_COPY(klass)
Disable copy construction and assignment of the klass.
std::string model
The image sensor model name.
Definition: camera_sensor.h:28
Describe a rectangle's position and dimensions.
Definition: geometry.h:206
A camera sensor based on V4L2 subdevices.
Definition: camera_sensor.h:43
V4L2Subdevice * device()
Retrieve the camera sensor device.
Definition: camera_sensor.h:66
uint32_t lineLength
Total line length in pixels.
Definition: camera_sensor.h:37
uint32_t minFrameLength
The minimum allowable frame length in units of lines.
Definition: camera_sensor.h:39
uint32_t bitsPerPixel
The number of bits per pixel of the image format produced by the image sensor.
Definition: camera_sensor.h:30
const MediaEntity * entity() const
Retrieve the sensor media entity.
Definition: camera_sensor.h:53
const ControlIdMap controls
List of all supported libcamera controls.
Definition: control_ids.cpp:893
Associate a list of ControlId with their values for an object.
Definition: controls.h:346
Framework to manage controls related to an object.
Data structures related to geometric objects.
Size activeAreaSize
The size of the pixel array active area of the sensor.
Definition: camera_sensor.h:32
A V4L2 subdevice as exposed by the Linux kernel.
Definition: v4l2_subdevice.h:34