9 #ifndef mrpt_COpenNI2Sensor_H
10 #define mrpt_COpenNI2Sensor_H
277 bool& hardware_error);
#define DEFINE_GENERIC_SENSOR(class_name)
This declaration must be inserted in all CGenericSensor classes definition, within the class declarat...
This class allows loading and storing values and vectors of different types from a configuration text...
std::shared_ptr< CDisplayWindow > Ptr
A generic interface for a wide-variety of sensors designed to be used in the application RawLogGrabbe...
An abstract class for accessing OpenNI2 compatible sensors.
bool m_grab_image
The data that the RGBD sensors can return.
A class for grabing "range images", intensity images (either RGB or IR) and other information from an...
virtual void initialize()
Initializes the 3D camera - should be invoked after calling loadConfig() or setting the different par...
bool isGrabDepthEnabled() const
COpenNI2Sensor()
Default ctor.
size_t cols() const
Get the col count in the camera images, loaded automatically upon camera open().
size_t m_preview_window_decimation
If preview is enabled, only show 1 out of N images.
virtual void doProcess()
To be called at a high rate (>XX Hz), this method populates the internal buffer of received observati...
~COpenNI2Sensor()
Default ctor.
size_t rows() const
Get the row count in the camera images, loaded automatically upon camera open().
mrpt::poses::CPose3D m_relativePoseIntensityWRTDepth
See mrpt::obs::CObservation3DRangeScan for a diagram of this pose.
void setSerialToOpen(const unsigned serial)
Set the serial number of the device to open.
bool isGrabRGBEnabled() const
virtual void setPathForExternalImages(const std::string &directory)
Set the path where to save off-rawlog image files (this class DOES take into account this path).
mrpt::gui::CDisplayWindow::Ptr m_win_range
double getMaxRange() const
Get the maximum range (meters) that can be read in the observation field "rangeImage".
const mrpt::poses::CPose3D & getRelativePoseIntensityWrtDepth() const
int m_serial_number
Serial number of device to open.
double m_maxRange
Sensor max range (meters)
mrpt::img::TCamera m_cameraParamsRGB
Params for the RGB camera.
const mrpt::img::TCamera & getCameraParamsIntensity() const
Get a const reference to the depth camera calibration parameters.
void enableGrab3DPoints(bool enable=true)
Enable/disable the grabbing of the 3D point clouds.
void setCameraParamsDepth(const mrpt::img::TCamera &p)
int m_user_device_number
Number of device to open (0:first,...)
void setRelativePoseIntensityWrtDepth(const mrpt::poses::CPose3D &p)
Set the pose of the intensity camera wrt the depth camera.
void setSensorIDToOpen(const unsigned sensor_id)
Set the sensor_id of the device to open.
bool isGrab3DPointsEnabled() const
void enableGrabDepth(bool enable=true)
Enable/disable the grabbing of the depth channel.
const mrpt::img::TCamera & getCameraParamsDepth() const
Get a const reference to the depth camera calibration parameters.
void setCameraParamsIntensity(const mrpt::img::TCamera &p)
mrpt::gui::CDisplayWindow::Ptr m_win_int
bool m_preview_window
Show preview window while grabbing.
virtual void loadConfig_sensorSpecific(const mrpt::config::CConfigFileBase &configSource, const std::string §ion)
Loads specific configuration for the device from a given source of configuration parameters,...
void enableGrabRGB(bool enable=true)
Enable/disable the grabbing of the RGB channel.
mrpt::poses::CPose3D m_sensorPoseOnRobot
size_t m_preview_decim_counter_rgb
mrpt::img::TCamera m_cameraParamsDepth
Params for the Depth camera.
void getNextObservation(mrpt::obs::CObservation3DRangeScan &out_obs, bool &there_is_obs, bool &hardware_error)
The main data retrieving function, to be called after calling loadConfig() and initialize().
size_t m_preview_decim_counter_range
Structure to hold the parameters of a pinhole camera model.
uint32_t ncols
Camera resolution.
Declares a class derived from "CObservation" that encapsules a 3D range scan measurement,...
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
GLsizei const GLchar ** string
Contains classes for various device interfaces.