9 #ifndef YARP_DEV_RGBDSENSORCLIENT_RGBDSENSORCLIENT_H
10 #define YARP_DEV_RGBDSENSORCLIENT_RGBDSENSORCLIENT_H
24 #define DEFAULT_THREAD_PERIOD 20
25 #define RGBDSENSOR_TIMEOUT_DEFAULT 100
127 IRGBDSensor::RGBDSensor_status
sensorStatus{IRGBDSensor::RGBD_SENSOR_NOT_READY};
155 bool getRgbFOV(
double &horizontalFov,
double &verticalFov)
override;
156 bool setRgbFOV(
double horizontalFov,
double verticalFov)
override;
167 bool getDepthFOV(
double &horizontalFov,
double &verticalFov)
override;
168 bool setDepthFOV(
double horizontalFov,
double verticalFov)
override;
197 bool close()
override;
276 using FrameGrabberControls_Sender::getCameraDescription;
277 using FrameGrabberControls_Sender::hasFeature;
278 using FrameGrabberControls_Sender::setFeature;
279 using FrameGrabberControls_Sender::getFeature;
280 using FrameGrabberControls_Sender::hasOnOff;
281 using FrameGrabberControls_Sender::setActive;
282 using FrameGrabberControls_Sender::getActive;
283 using FrameGrabberControls_Sender::hasAuto;
284 using FrameGrabberControls_Sender::hasManual;
285 using FrameGrabberControls_Sender::hasOnePush;
286 using FrameGrabberControls_Sender::setMode;
287 using FrameGrabberControls_Sender::getMode;
288 using FrameGrabberControls_Sender::setOnePush;
define common interfaces to discover remote camera capabilities
bool getRgbResolution(int &width, int &height) override
Get the resolution of the rgb image from the camera.
std::string remote_colorFrame_StreamingPort_name
bool setRgbFOV(double horizontalFov, double verticalFov) override
Set the field of view (FOV) of the rgb camera.
int getDepthWidth() override
Return the height of each frame.
bool getRgbMirroring(bool &mirror) override
Get the mirroring setting of the sensor.
bool setDepthMirroring(bool mirror) override
Set the mirroring setting of the sensor.
yarp::dev::IRGBDSensor * sensor_p
bool getDepthClipPlanes(double &near, double &far) override
Get the clipping planes of the sensor.
std::string local_colorFrame_StreamingPort_name
bool getRgbImage(yarp::sig::FlexImage &rgbImage, yarp::os::Stamp *timeStamp=NULL) override
Get the rgb frame from the device.
RGBDSensorClient(RGBDSensorClient &&)=delete
bool setRgbResolution(int width, int height) override
Set the resolution of the rgb image from the camera.
IRGBDSensor::RGBDSensor_status sensorStatus
bool setDepthAccuracy(double accuracy) override
Set the minimum detectable variation in distance [meter] when possible.
bool getRgbSupportedConfigurations(yarp::sig::VectorOf< yarp::dev::CameraConfig > &configurations) override
Get the possible configurations of the camera.
int getRgbWidth() override
Return the width of each frame.
bool setDepthResolution(int width, int height) override
Set the resolution of the depth image from the camera.
bool getDepthIntrinsicParam(yarp::os::Property &intrinsic) override
Get the intrinsic parameters of the depth camera.
bool getDepthFOV(double &horizontalFov, double &verticalFov) override
Get the field of view (FOV) of the depth camera.
bool initialize_YARP(yarp::os::Searchable &config)
bool setDepthClipPlanes(double near, double far) override
Set the clipping planes of the sensor.
bool getDepthMirroring(bool &mirror) override
Get the mirroring setting of the sensor.
std::string remote_depthFrame_StreamingPort_name
bool getRgbFOV(double &horizontalFov, double &verticalFov) override
Get the field of view (FOV) of the rgb camera.
std::string remote_rpcPort_name
~RGBDSensorClient() override
bool getDepthImage(yarp::sig::ImageOf< yarp::sig::PixelFloat > &depthImage, yarp::os::Stamp *timeStamp=NULL) override
Get the depth frame from the device.
bool close() override
Close the DeviceDriver.
std::string local_rpcPort_name
double getDepthAccuracy() override
Get the minimum detectable variation in distance [meter].
RGBDSensorClient(const RGBDSensorClient &)=delete
bool getImages(yarp::sig::FlexImage &colorFrame, yarp::sig::ImageOf< yarp::sig::PixelFloat > &depthFrame, yarp::os::Stamp *colorStamp=NULL, yarp::os::Stamp *depthStamp=NULL) override
Get the both the color and depth frame in a single call.
RGBDSensor_StreamingMsgParser * streamingReader
yarp::os::Stamp colorStamp
bool fromConfig(yarp::os::Searchable &config)
bool setDepthFOV(double horizontalFov, double verticalFov) override
Set the field of view (FOV) of the depth camera.
bool initialize_ROS(yarp::os::Searchable &config)
bool getExtrinsicParam(yarp::sig::Matrix &extrinsic) override
Get the extrinsic parameters from the device.
int getDepthHeight() override
Return the height of each frame.
std::string getLastErrorMsg(yarp::os::Stamp *timeStamp=NULL) override
Return an error message in case of error.
yarp::os::BufferedPort< yarp::sig::FlexImage > colorFrame_StreamingPort
IRGBDSensor::RGBDSensor_status getSensorStatus() override
Get the surrent status of the sensor, using enum type.
bool getRgbIntrinsicParam(yarp::os::Property &intrinsic) override
Get the intrinsic parameters of the rgb camera.
RGBDSensorClient & operator=(const RGBDSensorClient &)=delete
bool open(yarp::os::Searchable &config) override
Create and configure a device, by name.
int getRgbHeight() override
Return the height of each frame.
bool setRgbMirroring(bool mirror) override
Set the mirroring setting of the sensor.
RGBDSensorClient & operator=(RGBDSensorClient &&)=delete
std::string local_depthFrame_StreamingPort_name
yarp::os::BufferedPort< yarp::sig::ImageOf< yarp::sig::PixelFloat > > depthFrame_StreamingPort
std::string depth_carrier_type
std::string image_carrier_type
yarp::os::Stamp depthStamp
Interface implemented by all device drivers.
This classes implement a sender / parser for IFrameGrabberControls interface messages.
A generic interface for cameras that have both color camera as well as depth camera sensor,...
A mini-server for network communication.
A class for storing options and configuration information.
A base class for nested structures that can be searched.
An abstraction for a time stamp and/or sequence number.
Image class with user control of representation details.
constexpr char accuracy[]