9 #ifndef mrpt_COpenNI2Generic_H
10 #define mrpt_COpenNI2Generic_H
33 int width,
int height,
float fps = 30.0f,
bool open_streams_now =
true);
53 bool& there_is_obs,
bool& hardware_error,
unsigned sensor_id = 0);
66 bool& there_is_obs,
bool& hardware_error,
unsigned sensor_id = 0);
80 bool& hardware_error,
unsigned sensor_id = 0);
90 void open(
unsigned sensor_id = 0);
100 const std::set<unsigned>& vSerialRequired);
113 const unsigned int SerialRequired,
int& sensor_id)
const;
123 bool isOpen(
const unsigned sensor_id)
const;
127 void close(
unsigned sensor_id = 0);
An abstract class for accessing OpenNI2 compatible sensors.
bool isOpen(const unsigned sensor_id) const
Whether there is a working connection to the sensor.
void showLog(const std::string &message) const
void close(unsigned sensor_id=0)
Close the connection to the sensor (no need to call it manually unless desired for some reason,...
bool getDepthSensorParam(mrpt::img::TCamera ¶m, unsigned sensor_id=0) const
bool getDeviceIDFromSerialNum(const unsigned int SerialRequired, int &sensor_id) const
Get the ID of the device corresponding to 'SerialRequired'.
bool m_grab_image
The data that the RGBD sensors can return.
int getConnectedDevices()
Get a list of the connected OpenNI2 sensors.
void getNextFrameRGB(mrpt::img::CImage &rgb_img, mrpt::system::TTimeStamp ×tamp, bool &there_is_obs, bool &hardware_error, unsigned sensor_id=0)
The main data retrieving function, to be called after calling loadConfig() and initialize().
void getNextFrameD(mrpt::math::CMatrix &depth_img, mrpt::system::TTimeStamp ×tamp, bool &there_is_obs, bool &hardware_error, unsigned sensor_id=0)
The main data retrieving function, to be called after calling loadConfig() and initialize().
static int getNumInstances()
Get the number of OpenNI2 cameras currently open via COpenNI2Generic.
COpenNI2Generic()
Default ctor (width=640, height=480, fps=30)
unsigned int openDevicesBySerialNum(const std::set< unsigned > &vSerialRequired)
Open a set of RGBD devices specified by their serial number.
std::vector< int > vSerialNums
A vector with the serial numbers of the available devices.
void getNextFrameRGBD(mrpt::obs::CObservation3DRangeScan &out_obs, bool &there_is_obs, bool &hardware_error, unsigned sensor_id=0)
The main data retrieving function, to be called after calling loadConfig() and initialize().
bool start()
Open all sensor streams (normally called automatically at constructor, no need to call it manually).
void kill()
Kill the OpenNI2 driver.
bool getColorSensorParam(mrpt::img::TCamera ¶m, unsigned sensor_id=0) const
~COpenNI2Generic()
Default ctor.
void setVerbose(bool verbose)
int m_width
The same options (width, height and fps) are set for all the sensors.
int getNumDevices() const
The number of available devices at initialization.
void open(unsigned sensor_id=0)
Try to open the camera (all the parameters [resolution,fps,...] must be set before calling this) - us...
unsigned int openDeviceBySerial(const unsigned int SerialRequired)
Open a RGBD device specified by its serial number.
A class for storing images as grayscale or RGB bitmaps.
Structure to hold the parameters of a pinhole camera model.
This class is a "CSerializable" wrapper for "CMatrixFloat".
Declares a class derived from "CObservation" that encapsules a 3D range scan measurement,...
GLenum GLsizei GLsizei height
GLsizei const GLchar ** string
mrpt::Clock::time_point TTimeStamp
A system independent time type, it holds the the number of 100-nanosecond intervals since January 1,...
Contains classes for various device interfaces.