point_cloud_library / 1.12.1 / classpcl_1_1_real_sense_grabber.html /

#include <pcl/io/real_sense_grabber.h>

Classes

struct Mode
A descriptor for capturing mode. More...

Public Types

enum TemporalFilteringType { RealSense_None = 0, RealSense_Median = 1, RealSense_Average = 2 }
using Ptr = shared_ptr< RealSenseGrabber >
using ConstPtr = shared_ptr< const RealSenseGrabber >
using sig_cb_real_sense_point_cloud = void(const pcl::PointCloud< pcl::PointXYZ >::ConstPtr &)
using sig_cb_real_sense_point_cloud_rgba = void(const pcl::PointCloud< pcl::PointXYZRGBA >::ConstPtr &)

Public Member Functions

RealSenseGrabber (const std::string &device_id="", const Mode &mode=Mode(), bool strict=false)
Create a grabber for a RealSense device. More...
virtual ~RealSenseGrabber () noexcept
virtual void start ()
For devices that are streaming, the streams are started by calling this method. More...
virtual void stop ()
For devices that are streaming, the streams are stopped. More...
virtual bool isRunning () const
Indicates whether the grabber is streaming or not. More...
virtual std::string getName () const
returns the name of the concrete subclass. More...
virtual float getFramesPerSecond () const
returns fps. More...
void setConfidenceThreshold (unsigned int threshold)
Set the confidence threshold for depth data. More...
void enableTemporalFiltering (TemporalFilteringType type, std::size_t window_size)
Enable temporal filtering of the depth data received from the device. More...
void disableTemporalFiltering ()
Disable temporal filtering. More...
const std::string & getDeviceSerialNumber () const
Get the serial number of device captured by the grabber. More...
std::vector< Mode > getAvailableModes (bool only_depth=false) const
Get a list of capturing modes supported by the PXC device controlled by this grabber. More...
void setMode (const Mode &mode, bool strict=false)
Set desired capturing mode. More...
const Mode & getMode () const
Get currently active capturing mode. More...
- Public Member Functions inherited from pcl::Grabber
Grabber ()=default
Default ctor. More...
Grabber (const Grabber &)=delete
No copy ctor since Grabber can't be copied. More...
Grabber & operator= (const Grabber &)=delete
No copy assign operator since Grabber can't be copied. More...
Grabber (Grabber &&)=default
Move ctor. More...
Grabber & operator= (Grabber &&)=default
Move assign operator. More...
virtual ~Grabber () noexcept=default
virtual destructor. More...
template<typename T >
boost::signals2::connection registerCallback (const std::function< T > &callback)
registers a callback function/method to a signal with the corresponding signature More...
template<typename T >
bool providesCallback () const noexcept
indicates whether a signal with given parameter-type exists or not More...
bool toggle ()
For devices that are streaming, stopped streams are started and running stream are stopped. More...

Additional Inherited Members

- Protected Member Functions inherited from pcl::Grabber
virtual void signalsChanged ()
template<typename T >
boost::signals2::signal< T > * find_signal () const noexcept
template<typename T >
int num_slots () const noexcept
template<typename T >
void disconnect_all_slots ()
template<typename T >
void block_signal ()
template<typename T >
void unblock_signal ()
void block_signals ()
void unblock_signals ()
template<typename T >
boost::signals2::signal< T > * createSignal ()
- Protected Attributes inherited from pcl::Grabber
std::map< std::string, std::unique_ptr< boost::signals2::signal_base > > signals_
std::map< std::string, std::vector< boost::signals2::connection > > connections_
std::map< std::string, std::vector< boost::signals2::shared_connection_block > > shared_connections_

Detailed Description

Definition at line 68 of file real_sense_grabber.h.

Member Typedef Documentation

ConstPtr

Definition at line 74 of file real_sense_grabber.h.

Ptr

Definition at line 73 of file real_sense_grabber.h.

sig_cb_real_sense_point_cloud

sig_cb_real_sense_point_cloud_rgba

Member Enumeration Documentation

TemporalFilteringType

Enumerator
RealSense_None
RealSense_Median
RealSense_Average

Definition at line 119 of file real_sense_grabber.h.

Constructor & Destructor Documentation

RealSenseGrabber()

pcl::RealSenseGrabber::RealSenseGrabber ( const std::string & device_id = "",
const Mode & mode = Mode(),
bool strict = false
)

Create a grabber for a RealSense device.

The grabber "captures" the device, making it impossible for other grabbers to interact with it. The device is "released" when the grabber is destructed.

This will throw pcl::io::IOException if there are no free devices that match the supplied device_id.

Parameters
[in] device_id device identifier, which can be a serial number, a zero-based index (with '#' prefix), or an empty string (to select the first available device)
[in] mode desired framerate and stream resolution (see Mode). If the default is supplied, then the mode closest to VGA at 30 Hz will be chosen.
[in] strict if set to true, an exception will be thrown if device does not support exactly the mode requested. Otherwise the closest available mode is selected.

~RealSenseGrabber()

virtual pcl::RealSenseGrabber::~RealSenseGrabber ( )
virtualnoexcept

Member Function Documentation

disableTemporalFiltering()

void pcl::RealSenseGrabber::disableTemporalFiltering ( )

Disable temporal filtering.

enableTemporalFiltering()

void pcl::RealSenseGrabber::enableTemporalFiltering ( TemporalFilteringType type,
std::size_t window_size
)

Enable temporal filtering of the depth data received from the device.

The window size parameter is not relevant for RealSense_None filtering type.

Note
if the grabber is running and the new parameters are different from the current parameters, grabber will be restarted.

getAvailableModes()

std::vector<Mode> pcl::RealSenseGrabber::getAvailableModes ( bool only_depth = false ) const

Get a list of capturing modes supported by the PXC device controlled by this grabber.

Parameters
[in] only_depth list depth-only modes
Note
: this list exclude modes where framerates of the depth and color streams do not match.

getDeviceSerialNumber()

const std::string& pcl::RealSenseGrabber::getDeviceSerialNumber ( ) const

Get the serial number of device captured by the grabber.

getFramesPerSecond()

virtual float pcl::RealSenseGrabber::getFramesPerSecond ( ) const
virtual

returns fps.

0 if trigger based.

Implements pcl::Grabber.

getMode()

const Mode& pcl::RealSenseGrabber::getMode ( ) const
inline

Get currently active capturing mode.

Note
: capturing mode is selected when start() is called; output of this function before grabber was started is undefined.

Definition at line 214 of file real_sense_grabber.h.

getName()

virtual std::string pcl::RealSenseGrabber::getName ( ) const
inlinevirtual

returns the name of the concrete subclass.

Returns
the name of the concrete driver.

Implements pcl::Grabber.

Definition at line 159 of file real_sense_grabber.h.

isRunning()

virtual bool pcl::RealSenseGrabber::isRunning ( ) const
virtual

Indicates whether the grabber is streaming or not.

This value is not defined for triggered devices.

Returns
true if grabber is running / streaming. False otherwise.

Implements pcl::Grabber.

setConfidenceThreshold()

void pcl::RealSenseGrabber::setConfidenceThreshold ( unsigned int threshold )

Set the confidence threshold for depth data.

Valid range is [0..15]. Discarded points will have their coordinates set to NaNs).

setMode()

void pcl::RealSenseGrabber::setMode ( const Mode & mode,
bool strict = false
)

Set desired capturing mode.

Note
if the grabber is running and the new mode is different the one requested previously, grabber will be restarted.

start()

virtual void pcl::RealSenseGrabber::start ( )
virtual

For devices that are streaming, the streams are started by calling this method.

Trigger-based devices, just trigger the device once for each call of start.

Implements pcl::Grabber.

stop()

virtual void pcl::RealSenseGrabber::stop ( )
virtual

For devices that are streaming, the streams are stopped.

This method has no effect for triggered devices.

Implements pcl::Grabber.


The documentation for this class was generated from the following file:

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_real_sense_grabber.html