Go to the documentation of this file.
37 #ifndef SICK_GENERIC_FIELD_MON_H_
38 #define SICK_GENERIC_FIELD_MON_H_
47 #include <sensor_msgs/LaserScan.h>
48 #include <sensor_msgs/PointCloud.h>
49 #include <sensor_msgs/PointCloud2.h>
50 #include <std_msgs/String.h>
101 static void rectangularFieldToCarthesian(
float distRefPointMeter,
float angleRefPointRad,
float rotAngleRad,
float rectWidthMeter,
float rectLengthMeter,
float points_x[4],
float points_y[4]);
118 static void dynamicFieldPointToCarthesian(
float distRefPointMeter,
float angleRefPointRad,
float rotAngleRad,
float rectWidthMeter,
float rectLengthMeter,
float maxSpeedMeterPerSec,
float maxLengthMeter,
float points_x[8],
float points_y[8]);
187 SickScanRadar(SickScanCommon *commonPtr_)
189 commonPtr = commonPtr_;
191 void setEmulation(
bool _emul);
192 bool getEmulation(
void);
193 int parseDatagram(
ros::Time timeStamp,
unsigned char *receiveBuffer,
int actual_length,
bool useBinaryProtocol);
194 int parseAsciiDatagram(
char* datagram,
size_t datagram_length, sick_scan::RadarScan *msgPtr, std::vector<SickScanRadarObject> &objectList, std::vector<SickScanRadarRawTarget> &rawTargetList);
195 void simulateAsciiDatagram(
unsigned char * receiveBuffer,
int* actual_length);
198 void simulateAsciiDatagramFromFile(
unsigned char *receiveBuffer,
int *actual_length, std::string filePattern);
204 #endif // SICK_GENERIC_RADAR_H_
static SickScanFieldMonSingleton * getInstance()
const std::vector< float > & getFieldPointsX(void) const
static void dynamicFieldPointToCarthesian(float distRefPointMeter, float angleRefPointRad, float rotAngleRad, float rectWidthMeter, float rectLengthMeter, float maxSpeedMeterPerSec, float maxLengthMeter, float points_x[8], float points_y[8])
void setActiveFieldset(int active_fieldset)
ros::Publisher chatter_pub
static SickScanFieldMonSingleton * instance
std::vector< float > m_fieldPoints_Y
int parseBinaryLIDinputstateMsg(unsigned char *datagram, int datagram_length)
Parse binary LIDinputstate message and set active field set.
const std::vector< SickScanMonField > & getMonFields(void) const
const std::vector< float > & getFieldPointsY(void) const
SickScanMonFieldType m_fieldType
SickScanMonFieldType & fieldType(void)
int getActiveFieldset(void)
const SickScanMonFieldType & fieldType(void) const
int getPointCount(void) const
std::vector< SickScanMonField > monFields
static void segmentedFieldPointToCarthesian(float range, float angle_rad, float &x, float &y)
void pushFieldPointCarthesian(float x, float y)
int parseAsciiLIDinputstateMsg(unsigned char *datagram, int datagram_length)
Parse binary LIDinputstate message and set active field set.
SickScanFieldMonSingleton()
std::vector< float > m_fieldPoints_X
static void rectangularFieldToCarthesian(float distRefPointMeter, float angleRefPointRad, float rotAngleRad, float rectWidthMeter, float rectLengthMeter, float points_x[4], float points_y[4])
int parseBinaryDatagram(std::vector< unsigned char > datagramm)
int parseAsciiDatagram(std::vector< unsigned char > datagramm)
Parsing Ascii datagram.
sick_scan
Author(s): Michael Lehning
, Jochen Sprickerhof , Martin Günther
autogenerated on Thu Sep 8 2022 02:30:19