Go to the documentation of this file.
9 #ifndef C2DRangeFinderAbstract_H
10 #define C2DRangeFinderAbstract_H
55 mrpt::gui::CDisplayWindow3DPtr
m_win;
76 const std::string &iniSection );
106 bool &outThereIsObservation,
108 bool &hardwareError );
116 bool &outThereIsObservation,
118 bool &hardwareError ) = 0;
synch::CCriticalSection m_csLastObservation
This base class provides a common printf-like method to send debug information to std::cout,...
void getObservation(bool &outThereIsObservation, mrpt::obs::CObservation2DRangeScan &outObservation, bool &hardwareError)
Get the last observation from the sensor, if available, and unmarks it as being "the last one" (thus ...
mrpt::obs::CObservation2DRangeScanPtr m_nextObservation
A dynamic object used as buffer in doProcess.
A "CObservation"-derived class that represents a 2D range scan measurement (typically from a laser sc...
C2DRangeFinderAbstract()
Default constructor.
void loadCommonParams(const mrpt::utils::CConfigFileBase &configSource, const std::string &iniSection)
Should be call by derived classes at "loadConfig" (loads exclusion areas AND exclusion angles).
virtual bool turnOn()=0
Enables the scanning mode (which may depend on the specific laser device); this must be called before...
virtual void doProcessSimple(bool &outThereIsObservation, mrpt::obs::CObservation2DRangeScan &outObservation, bool &hardwareError)=0
Specific laser scanner "software drivers" must process here new data from the I/O stream,...
mrpt::gui::CDisplayWindow3DPtr m_win
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
void showPreview(bool enable=true)
Enables GUI visualization in real-time.
void filterByExclusionAngles(mrpt::obs::CObservation2DRangeScan &obs) const
Mark as invalid those ranges in a set of forbiden angle ranges.
This is the base, abstract class for "software drivers" interfaces to 2D scanners (laser range finder...
virtual bool turnOff()=0
Disables the scanning mode (this can be used to turn the device in low energy mode,...
mrpt::obs::CObservation2DRangeScan::TListExclusionAreasWithRanges m_lstExclusionPolys
A list of optional exclusion polygons, in coordinates relative to the vehicle, that is,...
This class provides simple critical sections functionality.
This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...
void bindIO(mrpt::utils::CStream *streamIO)
Binds the object to a given I/O channel.
This class allows loading and storing values and vectors of different types from a configuration text...
virtual ~C2DRangeFinderAbstract()
Destructor.
bool m_lastObservationIsNew
std::vector< std::pair< mrpt::math::CPolygon, std::pair< double, double > > > TListExclusionAreasWithRanges
Used in filterByExclusionAreas.
A generic interface for a wide-variety of sensors designed to be used in the application RawLogGrabbe...
bool m_showPreview
If true, shows a 3D window with a preview of the grabber data.
mrpt::obs::CObservation2DRangeScan m_lastObservation
void doProcess()
Main method for a CGenericSensor.
void filterByExclusionAreas(mrpt::obs::CObservation2DRangeScan &obs) const
Mark as invalid those points which (x,y) coordinates fall within the exclusion polygons.
utils::CStream * m_stream
The I/O channel (will be NULL if not bound).
std::vector< std::pair< double, double > > m_lstExclusionAngles
A list of pairs of angles <init,end> such as all sensor ranges falling in those forbiden angles will ...
void processPreview(const mrpt::obs::CObservation2DRangeScan &obs)
Must be called inside the capture method to allow optional GUI preview of scans.
Page generated by Doxygen 1.8.20 for MRPT 1.4.0 SVN: at Thu Aug 27 02:40:23 UTC 2020 | | |