9 #ifndef CSwissRanger3DCamera_H
10 #define CSwissRanger3DCamera_H
148 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...
A class for grabing "range images" from a MESA imaging SwissRanger 3D cameras (SR-2,...
bool m_open_from_usb
true: USB, false: ETH
bool m_save_range_img
Save the 2D range image (default: true)
bool getOpenFromUSBMode() const
std::string getOpenIPAddress() const
void setSaveIntensityImage(bool save)
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().
bool m_enable_median_filter
virtual void doProcess()
To be called at a high rate (>XX Hz), this method populates the internal buffer of received observati...
bool isEnabledImageHistEqualization() const
mrpt::img::TCamera m_cameraParams
virtual void loadConfig_sensorSpecific(const mrpt::config::CConfigFileBase &configSource, const std::string §ion)
See the class documentation at the top for expected parameters.
bool m_enable_denoise_anf
size_t cols() const
Get the col count in the camera images, loaded automatically upon camera open().
bool m_enable_mediancross_filter
bool isOpen() const
whether the camera is open and comms work ok.
mrpt::gui::CDisplayWindow::Ptr m_win_range
void setSaveRangeImage(bool save)
bool open()
return false on error - Called automatically from initialize(), no need normally for the user to call...
void setOpenIPAddress(const std::string &IP)
void enableMedianFilter(bool enable)
bool isEnabledMedianCrossFilter() const
size_t rows() const
Get the row count in the camera images, loaded automatically upon camera open().
virtual void initialize()
Initializes the 3D camera - should be invoked after calling loadConfig()
void enableDenoiseANF(bool enable)
void enablePreviewWindow(bool enable=true)
void setSave3D(bool save)
bool isEnabledDenoiseANF() const
bool isEnabledMedianFilter() const
bool m_enable_img_hist_equal
double getMaxRange() const
Returns the maximum camera range, as deduced from its operating frequency.
void enableMedianCrossFilter(bool enable)
void enableConvGray(bool enable)
bool m_preview_window
Show preview window while grabbing.
mrpt::gui::CDisplayWindow::Ptr m_win_int
size_t m_rows
Size of camera images, set on open()
bool getMesaLibVersion(std::string &out_version) const
Get the version of the MESA library.
bool isEnabledConvGray() const
void * m_cam
opaque handler to SRCAM.
double m_maxRange
Max range, as deducted from the camera frequency.
bool isEnabledPreviewWindow() const
bool m_save_intensity_img
Save the 2D intensity image (default: true)
~CSwissRanger3DCamera()
Default ctor.
CSwissRanger3DCamera()
Default ctor.
void setSaveConfidenceImage(bool save)
bool m_save_3d
Save the 3D point cloud (default: true)
void internal_resendParamsToCamera() const
unsigned int getCameraSerialNumber() const
Get the camera serial number, loaded automatically upon camera open().
void setOpenFromUSB(bool USB)
true: open from USB, false: open from ethernet.
unsigned int m_cam_serial_num
Serial number of the camera, set on open()
bool m_save_confidence
Save the estimated confidence 2D image (default: false)
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::poses::CPose3D m_sensorPoseOnRobot
void enableImageHistEqualization(bool enable)
Structure to hold the parameters of a pinhole camera model.
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.