12#include <Argus/Argus.h>
13#include <Argus/Ext/SyncSensorCalibrationData.h>
14#include <EGLStream/EGLStream.h>
15#include <EGLStream/NV/ImageNativeBuffer.h>
16#include <EGLStream/NV/NvBufSurface.h>
30#include <opencv2/opencv.hpp>
56 bool close()
override;
64 bool getRgbFOV(
double& horizontalFov,
double& verticalFov)
override;
65 bool setRgbFOV(
double horizontalFov,
double verticalFov)
override;
73 bool setFeature(
int feature,
double value)
override;
74 bool getFeature(
int feature,
double* value)
override;
75 bool setFeature(
int feature,
double value1,
double value2)
override;
76 bool getFeature(
int feature,
double* value1,
double* value2)
override;
77 bool hasOnOff(
int feature,
bool* HasOnOff)
override;
78 bool setActive(
int feature,
bool onoff)
override;
79 bool getActive(
int feature,
bool* isActive)
override;
89 int height()
const override;
90 int width()
const override;
93 bool setFramerate(
const uint64_t _fps);
97 mutable std::mutex m_mutex;
99 cv::Mat rgba_img, bgr_img;
101 cv::cuda::GpuMat gpu_rgba_img, gpu_bgr_img;
104 Argus::UniqueObj<Argus::CameraProvider> m_cameraProvider;
105 Argus::UniqueObj<Argus::OutputStream> m_stream;
106 Argus::UniqueObj<Argus::OutputStreamSettings> m_streamSettings;
107 Argus::UniqueObj<Argus::Request> m_request;
108 Argus::UniqueObj<Argus::CaptureSession> m_captureSession;
109 Argus::UniqueObj<EGLStream::FrameConsumer> m_consumer;
110 std::vector<Argus::CameraDevice*> m_cameraDevices;
111 Argus::ISourceSettings *m_iSourceSettings;
112 Argus::IAutoControlSettings *m_iAutoControlSettings;
113 Argus::IEdgeEnhanceSettings *m_iEdgeEnhanceSettings;
contains the definition of a Matrix type
This class is the parameters parser for class argusCameraDriver.
int getRgbHeight() override
Return the height of each frame.
bool hasAuto(int feature, bool *hasAuto) override
Check if the requested feature has the 'auto' mode.
bool close() override
Close the DeviceDriver.
bool setRgbFOV(double horizontalFov, double verticalFov) override
Set the field of view (FOV) of the rgb camera.
bool getActive(int feature, bool *isActive) override
Get the current status of the feature, on or off.
bool getRgbResolution(int &width, int &height) override
Get the resolution of the rgb image from the camera.
bool getMode(int feature, FeatureMode *mode) override
Get the current mode for the feature.
bool setRgbMirroring(bool mirror) override
Set the mirroring setting of the sensor.
bool setRgbResolution(int width, int height) override
Set the resolution of the rgb image from the camera.
bool getRgbSupportedConfigurations(yarp::sig::VectorOf< yarp::dev::CameraConfig > &configurations) override
Get the possible configurations of the camera.
int height() const override
Return the height of each frame.
bool setFeature(int feature, double value) override
Set the requested feature to a value (saturation, brightness ... )
int getRgbWidth() override
Return the width of each frame.
bool getCameraDescription(CameraDescriptor *camera) override
Get a basic description of the camera hw.
bool getRgbMirroring(bool &mirror) override
Get the mirroring setting of the sensor.
bool getImage(yarp::sig::ImageOf< yarp::sig::PixelRgb > &image) override
Get an image from the frame grabber.
~argusCameraDriver() override=default
bool open(yarp::os::Searchable &config) override
Open the DeviceDriver.
bool hasManual(int feature, bool *hasManual) override
Check if the requested feature has the 'manual' mode.
bool hasOnePush(int feature, bool *hasOnePush) override
Check if the requested feature has the 'onePush' mode.
bool hasFeature(int feature, bool *hasFeature) override
Check if camera has the requested feature (saturation, brightness ... )
int width() const override
Return the width of each frame.
bool setMode(int feature, FeatureMode mode) override
Set the requested mode for the feature.
bool setActive(int feature, bool onoff) override
Set the requested feature on or off.
bool hasOnOff(int feature, bool *HasOnOff) override
Check if the camera has the ability to turn on/off the requested feature.
bool getFeature(int feature, double *value) override
Get the current value for the requested feature.
argusCameraDriver()=default
bool setOnePush(int feature) override
Set the requested feature to a value (saturation, brightness ... )
bool getRgbFOV(double &horizontalFov, double &verticalFov) override
Get the field of view (FOV) of the rgb camera.
bool getRgbIntrinsicParam(yarp::os::Property &intrinsic) override
Get the intrinsic parameters of the rgb camera.
Interface implemented by all device drivers.
Control interface for frame grabber devices.
An interface for retrieving intrinsic parameter from a rgb camera.
A class for storing options and configuration information.
A base class for nested structures that can be searched.
#define YARP_LOG_COMPONENT(name,...)