pcl::Grabber Class Referenceabstract
Module io

Grabber interface for PCL 1.x device drivers. More...

`#include <pcl/io/grabber.h>`

Inheritance diagram for pcl::Grabber:

## Public Member Functions

| 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...
virtual void | start ()=0
| For devices that are streaming, the streams are started by calling this method. More...
virtual void | stop ()=0
| For devices that are streaming, the streams are stopped. More...
bool | toggle ()
| For devices that are streaming, stopped streams are started and running stream are stopped. More...
virtual std::string | getName () const =0
| returns the name of the concrete subclass. More...
virtual bool | isRunning () const =0
| Indicates whether the grabber is streaming or not. More...
virtual float | getFramesPerSecond () const =0
| returns fps. More...

## Protected Member Functions

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

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

Grabber interface for PCL 1.x device drivers.

Author
  Suat Gedikli gedik.nosp@m.li@w.nosp@m.illow.nosp@m.gara.nosp@m.ge.co.nosp@m.m

Definition at line 59 of file grabber.h.

## Constructor & Destructor Documentation

## Grabber() [1/3]

pcl::Grabber::Grabber | ( |  | ) |

default

Default ctor.

## Grabber() [2/3]

pcl::Grabber::Grabber | ( | const Grabber & |  | ) |

delete

No copy ctor since Grabber can't be copied.

## Grabber() [3/3]

pcl::Grabber::Grabber | ( | Grabber && |  | ) |

default

Move ctor.

## ~Grabber()

virtual pcl::Grabber::~Grabber | ( |  | ) |

inline virtual default noexcept

virtual destructor.

## Member Function Documentation

## block_signal()

template<typename T >

void pcl::Grabber::block_signal

protected

Definition at line 213 of file grabber.h.

## block_signals()

void pcl::Grabber::block_signals | ( |  | ) |

inline protected

Definition at line 229 of file grabber.h.

## createSignal()

template<typename T >

boost::signals2::signal< T > * pcl::Grabber::createSignal

protected

Definition at line 256 of file grabber.h.

Referenced by pcl::ImageGrabber< PointT >::ImageGrabber(), pcl::PCDGrabber< PointT >::PCDGrabber(), and pcl::StereoGrabber< PointT >::StereoGrabber().

## disconnect_all_slots()

template<typename T >

void pcl::Grabber::disconnect_all_slots

protected

Definition at line 203 of file grabber.h.

## find_signal()

template<typename T >

boost::signals2::signal< T > * pcl::Grabber::find_signal

protected noexcept

Definition at line 190 of file grabber.h.

## getFramesPerSecond()

virtual float pcl::Grabber::getFramesPerSecond | ( |  | ) | const

pure virtual

returns fps.

0 if trigger based.

Implemented in pcl::StereoGrabberBase, pcl::RobotEyeGrabber, pcl::RealSense2Grabber, pcl::PCDGrabberBase, pcl::OpenNIGrabber, pcl::ONIGrabber, pcl::ImageGrabberBase, pcl::HDLGrabber, pcl::DinastGrabber, pcl::RealSenseGrabber, pcl::EnsensoGrabber, pcl::DepthSenseGrabber, and pcl::DavidSDKGrabber.

## getName()

virtual std::string pcl::Grabber::getName | ( |  | ) | const

pure virtual

returns the name of the concrete subclass.

Returns
  the name of the concrete driver.

Implemented in pcl::StereoGrabberBase, pcl::VLPGrabber, pcl::TimGrabber, pcl::RobotEyeGrabber, pcl::RealSense2Grabber, pcl::PCDGrabberBase, pcl::OpenNIGrabber, pcl::ONIGrabber, pcl::ImageGrabberBase, pcl::HDLGrabber, pcl::DinastGrabber, pcl::RealSenseGrabber, pcl::EnsensoGrabber, pcl::DepthSenseGrabber, and pcl::DavidSDKGrabber.

## isRunning()

virtual bool pcl::Grabber::isRunning | ( |  | ) | const

pure 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.

Implemented in pcl::StereoGrabberBase, pcl::TimGrabber, pcl::RobotEyeGrabber, pcl::RealSense2Grabber, pcl::PCDGrabberBase, pcl::OpenNIGrabber, pcl::ONIGrabber, pcl::ImageGrabberBase, pcl::HDLGrabber, pcl::DinastGrabber, pcl::RealSenseGrabber, pcl::EnsensoGrabber, pcl::DepthSenseGrabber, and pcl::DavidSDKGrabber.

## num_slots()

template<typename T >

int pcl::Grabber::num_slots

protected noexcept

Definition at line 245 of file grabber.h.

## operator=() [1/2]

Grabber& pcl::Grabber::operator= | ( | const Grabber & |  | ) |

delete

No copy assign operator since Grabber can't be copied.

## operator=() [2/2]

Grabber& pcl::Grabber::operator= | ( | Grabber && |  | ) |

default

Move assign operator.

## providesCallback()

template<typename T >

bool pcl::Grabber::providesCallback

noexcept

indicates whether a signal with given parameter-type exists or not

Returns
  true if signal exists, false otherwise

Definition at line 312 of file grabber.h.

## registerCallback()

template<typename T >

boost::signals2::connection pcl::Grabber::registerCallback | ( | const std::function< T > & | callback | ) |

registers a callback function/method to a signal with the corresponding signature

Parameters

  [in] | callback | the callback function/method

Returns
  Connection object, that can be used to disconnect the callback method from the signal again.

Definition at line 291 of file grabber.h.

## signalsChanged()

virtual void pcl::Grabber::signalsChanged | ( |  | ) |

inline protected virtual

Reimplemented in pcl::RealSense2Grabber, and pcl::OpenNIGrabber.

Definition at line 145 of file grabber.h.

## start()

virtual void pcl::Grabber::start | ( |  | ) |

pure 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.

Implemented in pcl::StereoGrabberBase, pcl::TimGrabber, pcl::RobotEyeGrabber, pcl::RealSense2Grabber, pcl::PCDGrabberBase, pcl::OpenNIGrabber, pcl::ONIGrabber, pcl::ImageGrabberBase, pcl::HDLGrabber, pcl::DinastGrabber, pcl::RealSenseGrabber, pcl::EnsensoGrabber, pcl::DepthSenseGrabber, and pcl::DavidSDKGrabber.

## stop()

virtual void pcl::Grabber::stop | ( |  | ) |

pure virtual

For devices that are streaming, the streams are stopped.

This method has no effect for triggered devices.

Implemented in pcl::StereoGrabberBase, pcl::TimGrabber, pcl::RobotEyeGrabber, pcl::RealSense2Grabber, pcl::PCDGrabberBase, pcl::OpenNIGrabber, pcl::ONIGrabber, pcl::ImageGrabberBase, pcl::HDLGrabber, pcl::DinastGrabber, pcl::RealSenseGrabber, pcl::EnsensoGrabber, pcl::DepthSenseGrabber, and pcl::DavidSDKGrabber.

## toggle()

bool pcl::Grabber::toggle | ( |  | ) |

inline

For devices that are streaming, stopped streams are started and running stream are stopped.

For triggered devices, the behavior is not defined.

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

Definition at line 177 of file grabber.h.

## unblock_signal()

template<typename T >

void pcl::Grabber::unblock_signal

protected

Definition at line 221 of file grabber.h.

## unblock_signals()

void pcl::Grabber::unblock_signals | ( |  | ) |

inline protected

Definition at line 237 of file grabber.h.

## Member Data Documentation

## connections_

std::map<std::string, std::vector<boost::signals2::connection> > pcl::Grabber::connections_

protected

Definition at line 172 of file grabber.h.

## shared_connections_

std::map<std::string, std::vector<boost::signals2::shared_connection_block> > pcl::Grabber::shared_connections_

protected

Definition at line 173 of file grabber.h.

## signals_

std::map<std::string, std::unique_ptr<boost::signals2::signal_base> > pcl::Grabber::signals_

protected

Definition at line 171 of file grabber.h.

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

- pcl/io/grabber.h