YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
FrameGrabber_nwc_yarp.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-FileCopyrightText: 2006-2010 RobotCub Consortium
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#ifndef YARP_FRAMEGRABBER_NWC_YARP_H
8#define YARP_FRAMEGRABBER_NWC_YARP_H
9
11#include <yarp/os/Port.h>
15
20
21#include "FrameGrabberMsgs.h"
22#include "StreamReceiver.h"
23
24#include <mutex>
26
27template <typename ImageType>
29 public yarp::dev::IFrameGrabberOf<ImageType>
30{
31public:
34
35 // Re-implement the IFrameGrabberOf methods, to use the image received from
36 // the streaming port when enabled, instead of calling the requesting them
37 // using RPC calls
38 int height() const override;
39 int width() const override;
42 std::vector<yarp::dev::vertex_t> vertices,
43 ImageType& image) override;
44
45 void setStreamReceiver(StreamReceiver* m_streamReceiver);
46
47private:
48 mutable std::mutex m_mutex;
49 StreamReceiver* m_streamReceiver {nullptr};
50 FrameGrabberMsgs* m_thriftClient {nullptr};
51};
52
53
65 public FrameGrabberOf_ForwarderWithStream<yarp::sig::ImageOf<yarp::sig::PixelRgb>>,
66 public FrameGrabberOf_ForwarderWithStream<yarp::sig::ImageOf<yarp::sig::PixelMono>>,
67 public FrameGrabberOf_ForwarderWithStream<yarp::sig::ImageOf<yarp::sig::PixelFloat>>,
68 public FrameGrabberOf_ForwarderWithStream<yarp::sig::FlexImage>,
74{
75public:
81 ~FrameGrabber_nwc_yarp() override = default;
82
83 //IRgbVisualParams
84 int getRgbHeight() override;
85 int getRgbWidth() override;
86 yarp::dev::ReturnValue getRgbSupportedConfigurations(std::vector<yarp::dev::CameraConfig>& configurations) override;
89 yarp::dev::ReturnValue getRgbFOV(double& horizontalFov, double& verticalFov) override;
90 yarp::dev::ReturnValue setRgbFOV(double horizontalFov, double verticalFov) override;
92 yarp::dev::ReturnValue getRgbMirroring(bool& mirror) override;
93 yarp::dev::ReturnValue setRgbMirroring(bool mirror) override;
94
95 //IFrameGrabberControls
100 yarp::dev::ReturnValue setFeature(yarp::dev::cameraFeature_id_t feature, double value1, double value2) override;
101 yarp::dev::ReturnValue getFeature(yarp::dev::cameraFeature_id_t feature, double& value1, double& value2) override;
111
112 // yarp::dev::IFrameGrabberControlsDC1394
113 yarp::dev::ReturnValue getVideoModeMaskDC1394(unsigned int& val) override;
114 yarp::dev::ReturnValue getVideoModeDC1394(unsigned int& val) override;
115 yarp::dev::ReturnValue setVideoModeDC1394(int video_mode) override;
116 yarp::dev::ReturnValue getFPSMaskDC1394(unsigned int& val) override;
117 yarp::dev::ReturnValue getFPSDC1394(unsigned int& val) override;
119 yarp::dev::ReturnValue getISOSpeedDC1394(unsigned int& val) override;
120 yarp::dev::ReturnValue setISOSpeedDC1394(int speed) override;
121 yarp::dev::ReturnValue getColorCodingMaskDC1394(unsigned int video_mode, unsigned int& val) override;
122 yarp::dev::ReturnValue getColorCodingDC1394(unsigned int& val) override;
123 yarp::dev::ReturnValue setColorCodingDC1394(int coding) override;
125 unsigned int& ydim,
126 unsigned int& xstep,
127 unsigned int& ystep,
128 unsigned int& xoffstep,
129 unsigned int& yoffstep) override;
130 yarp::dev::ReturnValue getFormat7WindowDC1394(unsigned int& xdim, unsigned int& ydim, int& x0, int& y0) override;
131 yarp::dev::ReturnValue setFormat7WindowDC1394(unsigned int xdim, unsigned int ydim, int x0, int y0) override;
133 yarp::dev::ReturnValue getOperationModeDC1394(bool& b1394b) override;
135 yarp::dev::ReturnValue getTransmissionDC1394(bool& bTxON) override;
136 yarp::dev::ReturnValue setBroadcastDC1394(bool onoff) override;
139 yarp::dev::ReturnValue setPowerDC1394(bool onoff) override;
140 yarp::dev::ReturnValue setCaptureDC1394(bool bON) override;
141 yarp::dev::ReturnValue getBytesPerPacketDC1394(unsigned int& bpp) override;
143
144 // yarp::dev::DeviceDriver
145 bool open(yarp::os::Searchable& config) override;
146 bool close() override;
147
148 // yarp::dev::IPreciselyTimed
150
151private:
152 StreamReceiver m_streamReceiver;
153 yarp::os::Port m_rpcPort;
154 std::mutex m_mutex;
155
156 FrameGrabberMsgs m_frameGrabber_RPC;
157};
158
159#endif // YARP_FRAMEGRABBER_NWC_YARP_H
CameraDescriptor camera
FeatureMode mode
~FrameGrabberOf_ForwarderWithStream() override=default
void setStreamReceiver(StreamReceiver *m_streamReceiver)
yarp::dev::ReturnValue getImage(ImageType &image) override
Get an image from the frame grabber.
int width() const override
Return the width of each frame.
yarp::dev::ReturnValue getImageCrop(yarp::dev::cropType_id_t cropType, std::vector< yarp::dev::vertex_t > vertices, ImageType &image) override
Get a crop of the image from the frame grabber.
int height() const override
Return the height of each frame.
This class is the parameters parser for class FrameGrabber_nwc_yarp.
frameGrabber_nwc_yarp: The client of a frameGrabber_nws_yarp.
FrameGrabber_nwc_yarp(const FrameGrabber_nwc_yarp &)=delete
yarp::dev::ReturnValue getColorCodingDC1394(unsigned int &val) override
yarp::dev::ReturnValue setRgbMirroring(bool mirror) override
Set the mirroring setting of the sensor.
yarp::dev::ReturnValue getRgbSupportedConfigurations(std::vector< yarp::dev::CameraConfig > &configurations) override
Get the possible configurations of the camera.
yarp::dev::ReturnValue setMode(yarp::dev::cameraFeature_id_t feature, yarp::dev::FeatureMode mode) override
Set the requested mode for the feature.
yarp::dev::ReturnValue getCameraDescription(yarp::dev::CameraDescriptor &camera) override
Get a basic description of the camera hw.
yarp::dev::ReturnValue getColorCodingMaskDC1394(unsigned int video_mode, unsigned int &val) override
yarp::dev::ReturnValue getISOSpeedDC1394(unsigned int &val) override
yarp::dev::ReturnValue setBroadcastDC1394(bool onoff) override
yarp::dev::ReturnValue getFormat7WindowDC1394(unsigned int &xdim, unsigned int &ydim, int &x0, int &y0) override
yarp::dev::ReturnValue setCaptureDC1394(bool bON) override
yarp::dev::ReturnValue getFPSMaskDC1394(unsigned int &val) override
yarp::dev::ReturnValue setColorCodingDC1394(int coding) override
yarp::dev::ReturnValue getFormat7MaxWindowDC1394(unsigned int &xdim, unsigned int &ydim, unsigned int &xstep, unsigned int &ystep, unsigned int &xoffstep, unsigned int &yoffstep) override
yarp::dev::ReturnValue getOperationModeDC1394(bool &b1394b) override
yarp::dev::ReturnValue setISOSpeedDC1394(int speed) override
yarp::dev::ReturnValue setBytesPerPacketDC1394(unsigned int bpp) override
yarp::dev::ReturnValue setVideoModeDC1394(int video_mode) override
yarp::dev::ReturnValue getMode(yarp::dev::cameraFeature_id_t feature, yarp::dev::FeatureMode &mode) override
Get the current mode for the feature.
bool open(yarp::os::Searchable &config) override
Open the DeviceDriver.
yarp::dev::ReturnValue setDefaultsDC1394() override
yarp::dev::ReturnValue setRgbFOV(double horizontalFov, double verticalFov) override
Set the field of view (FOV) of the rgb camera.
int getRgbWidth() override
Return the width of each frame.
bool close() override
Close the DeviceDriver.
yarp::dev::ReturnValue getTransmissionDC1394(bool &bTxON) override
FrameGrabber_nwc_yarp & operator=(FrameGrabber_nwc_yarp &&)=delete
FrameGrabber_nwc_yarp & operator=(const FrameGrabber_nwc_yarp &)=delete
yarp::dev::ReturnValue getVideoModeMaskDC1394(unsigned int &val) override
yarp::dev::ReturnValue getRgbResolution(int &width, int &height) override
Get the resolution of the rgb image from the camera.
int getRgbHeight() override
Return the height of each frame.
yarp::os::Stamp getLastInputStamp() override
Return the time stamp relative to the last acquisition.
yarp::dev::ReturnValue getFPSDC1394(unsigned int &val) override
yarp::dev::ReturnValue setTransmissionDC1394(bool bTxON) override
~FrameGrabber_nwc_yarp() override=default
yarp::dev::ReturnValue getRgbIntrinsicParam(yarp::os::Property &intrinsic) override
Get the intrinsic parameters of the rgb camera.
yarp::dev::ReturnValue setPowerDC1394(bool onoff) override
yarp::dev::ReturnValue setFPSDC1394(int fps) override
yarp::dev::ReturnValue getRgbFOV(double &horizontalFov, double &verticalFov) override
Get the field of view (FOV) of the rgb camera.
yarp::dev::ReturnValue setFeature(yarp::dev::cameraFeature_id_t feature, double value) override
Set the requested feature to a value (saturation, brightness ... )
yarp::dev::ReturnValue setRgbResolution(int width, int height) override
Set the resolution of the rgb image from the camera.
yarp::dev::ReturnValue getRgbMirroring(bool &mirror) override
Get the mirroring setting of the sensor.
yarp::dev::ReturnValue getVideoModeDC1394(unsigned int &val) override
yarp::dev::ReturnValue getFeature(yarp::dev::cameraFeature_id_t feature, double &value) override
Get the current value for the requested feature.
yarp::dev::ReturnValue getActive(yarp::dev::cameraFeature_id_t feature, bool &isActive) override
Get the current status of the feature, on or off.
yarp::dev::ReturnValue getBytesPerPacketDC1394(unsigned int &bpp) override
FrameGrabber_nwc_yarp(FrameGrabber_nwc_yarp &&)=delete
yarp::dev::ReturnValue setOnePush(yarp::dev::cameraFeature_id_t feature) override
Set the requested feature to a value (saturation, brightness ... )
yarp::dev::ReturnValue setFormat7WindowDC1394(unsigned int xdim, unsigned int ydim, int x0, int y0) override
yarp::dev::ReturnValue setActive(yarp::dev::cameraFeature_id_t feature, bool onoff) override
Set the requested feature on or off.
yarp::dev::ReturnValue setOperationModeDC1394(bool b1394b) override
yarp::dev::ReturnValue setResetDC1394() override
Interface implemented by all device drivers.
Control interface for frame grabber devices that conform to the 1394-based Digital Camera Specificati...
Control interface for frame grabber devices.
Read a YARP-format image (of a specific type) from a device.
An interface for retrieving intrinsic parameter from a rgb camera.
A mini-server for network communication.
Definition Port.h:46
A class for storing options and configuration information.
Definition Property.h:33
A base class for nested structures that can be searched.
Definition Searchable.h:31
An abstraction for a time stamp and/or sequence number.
Definition Stamp.h:21