Class SyncSickSafetyScanner

Inheritance Relationships

Base Type

Class Documentation

class SyncSickSafetyScanner : public sick::SickSafetyscannersBase

Synchronous API for SICK safety scanners. The COLA2 API is inherited from its base class.

Public Functions

SyncSickSafetyScanner(sick::types::ip_address_t sensor_ip, sick::types::port_t sensor_tcp_port, CommSettings comm_settings, boost::asio::io_service &io_service) = delete
bool isDataAvailable() const

Indicates whether sensor data is available in the receiving buffers.

Returns:

true Data is available.

Returns:

false No data is available.

const Data receive(sick::types::time_duration_t timeout = boost::posix_time::pos_infin)

Blocking call to receive one sensor data message. Throws an exception if the timeout is exceeded.

Parameters:

timeout – Timeout in [seconds].

Returns:

const Data Returned sensor data.

SickSafetyscannersBase() = delete

Deleted default, copy and copy-assignment constructors.

SickSafetyscannersBase(const SickSafetyscannersBase&) = delete
SickSafetyscannersBase(sick::types::ip_address_t sensor_ip, sick::types::port_t sensor_tcp_port, CommSettings comm_settings, boost::asio::io_service &io_service)

Constructor of the SickSafetyscannersBase class.

Parameters:
  • sensor_ip – The IP4 address of the sensor.

  • sensor_tcp_port – The TCP port of the sensor (COLA2).

  • comm_settings – A CommSettings object containing parameters to be sent to the sensor. The host (client) UDP port, if not available for allocation, might be overwritten by an automatically choosen one.

  • io_service – A boost::asio io_service instance used internally to manage sockets and threads. This constructor variant prevents creating an internal io_service and relies on the caller to perform run-calls and keep the io_service alive.

SickSafetyscannersBase(sick::types::ip_address_t sensor_ip, sick::types::port_t sensor_tcp_port, CommSettings comm_settings)

Constructor of the SickSafetyscannersBase class.

Parameters:
  • sensor_ip – The IP4 address of the sensor.

  • sensor_tcp_port – The TCP port of the sensor (COLA2).

  • comm_settings – A CommSettings object containing parameters to be sent to the sensor. The host (client) UDP port, if not available for allocation, might be overwritten by an automatically choosen one.

SickSafetyscannersBase(sick::types::ip_address_t sensor_ip, sick::types::port_t sensor_tcp_port, CommSettings comm_settings, boost::asio::ip::address_v4 interface_ip)

Constructor of the SickSafetyscannersBase class.

Parameters:
  • sensor_ip – The IP4 address of the sensor.

  • sensor_tcp_port – The TCP port of the sensor (COLA2).

  • comm_settings – A CommSettings object containing parameters to be sent to the sensor. The host (client) UDP port, if not available for allocation, might be overwritten by an automatically choosen one.

  • interface_ip – If multicast IP adresses are used for the host_ip, the corresponding interface of the host has to be defined for the socket to allow joining the multicast group.