Class for Modeling a PSENscan safety laser scanner. More...
#include <scanner.h>
Public Member Functions | |
LaserScan | getCompleteScan () |
Reads from UDP Interface until complete laserscan object can be formed. More... | |
Scanner (const std::string &scanner_ip, const uint32_t &host_ip, const uint32_t &host_udp_port, const std::string &password, const PSENscanInternalAngle &angle_start, const PSENscanInternalAngle &angle_end, std::unique_ptr< ScannerCommunicationInterface > communication_interface) | |
Construct a new Scanner:: Scanner object. More... | |
void | start () |
Send start signal to Laserscanner. More... | |
void | stop () |
Send stop signal to Laserscanner. More... | |
![]() | |
virtual | ~vScanner ()=default |
Private Member Functions | |
MonitoringFrame | fetchMonitoringFrame (std::chrono::steady_clock::duration timeout) |
Gets one MonitoringFrame from Laserscanner. More... | |
bool | isDiagnosticInformationOk (const DiagnosticInformation &diag_info) |
Checks if DiagnosticInformation Bitfield contains no errors. More... | |
bool | parseFields (const MonitoringFrame &monitoring_frame) |
Parses a MonitoringFrame to check whether all fields are as expected. More... | |
psen_scan::Scanner::Scanner | ( | const std::string & | scanner_ip, |
const uint32_t & | host_ip, | ||
const uint32_t & | host_udp_port, | ||
const std::string & | password, | ||
const PSENscanInternalAngle & | angle_start, | ||
const PSENscanInternalAngle & | angle_end, | ||
std::unique_ptr< ScannerCommunicationInterface > | communication_interface | ||
) |
Construct a new Scanner:: Scanner object.
scanner_ip | IP-Adress of Laserscanner |
host_ip | IP-Adress of host machine |
host_udp_port | UDP Port on which packets from Laserscanner should be received |
password | Password for Laserscanner |
angle_start | Start angle of Laserscanner measurements in tenths of degree |
angle_end | End angle of Laserscanner measurements in tenths of degree |
communication_interface | Pointer to the communication interface |
Definition at line 53 of file scanner.cpp.
|
private |
Gets one MonitoringFrame from Laserscanner.
FetchMonitoringFrameException |
Definition at line 127 of file scanner.cpp.
|
virtual |
Reads from UDP Interface until complete laserscan object can be formed.
CoherentMonitoringFramesException |
Implements psen_scan::vScanner.
Definition at line 306 of file scanner.cpp.
|
private |
Checks if DiagnosticInformation Bitfield contains no errors.
diag_info | DiagnosticInformation Bitfield to check |
DiagnosticInformationException |
Definition at line 193 of file scanner.cpp.
|
private |
Parses a MonitoringFrame to check whether all fields are as expected.
monitoring_frame | MonitoringFrame to check |
ParseMonitoringFrameException |
Definition at line 159 of file scanner.cpp.
|
virtual |
Send start signal to Laserscanner.
Implements psen_scan::vScanner.
Definition at line 106 of file scanner.cpp.
|
virtual |
Send stop signal to Laserscanner.
Implements psen_scan::vScanner.
Definition at line 115 of file scanner.cpp.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |