KaCanOpen
 All Classes Functions Variables Typedefs Enumerations Pages
Public Types | Public Member Functions | List of all members
kaco::sdo_error Class Reference

This type of exception is thrown when there are problems while accessing devices via SDO. Most of the errors are reported by the device itself via SDO abort transfer protocol. There are also some internal errors like timeout while waiting for response. You can get the type of error via get_type() More...

#include <sdo_error.h>

Inheritance diagram for kaco::sdo_error:
Inheritance graph
[legend]
Collaboration diagram for kaco::sdo_error:
Collaboration graph
[legend]

Public Types

enum  type : uint32_t {
  toggle_bit = 0x05030000, timeout = 0x05040000, command_specifier = 0x05040001, block_size = 0x05040002,
  sequence_number = 0x05040003, crc = 0x05040004, memory = 0x05040005, access = 0x06010000,
  write_only = 0x06010001, read_only = 0x06010002, not_in_dictionary = 0x06020000, no_mapping = 0x06040041,
  pdo_length_exceeded = 0x06040042, parameter_incompatibility = 0x06040043, internal_incompatibility = 0x06040047, hardware_error = 0x06060000,
  service_parameter = 0x06070010, service_parameter_too_high = 0x06070012, service_parameter_too_low = 0x06070013, subindex = 0x06090011,
  value = 0x06090030, value_too_high = 0x06090031, value_too_low = 0x06090032, max_less_than_min = 0x06090036,
  sdo_connection = 0x060A0023, general = 0x08000000, transfer_or_storage = 0x08000020, transfer_or_storage_local_control = 0x08000021,
  transfer_or_storage_device_state = 0x08000022, no_dictionary = 0x08000023, no_data = 0x08000024, response_timeout = 0x10000000,
  segmented_download = 0x10000001, response_command = 0x10000002, response_toggle_bit = 0x10000003, unknown = 0x20000000
}
 Exact type of the SDO error.
 

Public Member Functions

 sdo_error (type error_type, const std::string &additional_information="")
 Constructor when type is known. More...
 
 sdo_error (uint32_t sdo_data, const std::string &additional_information="")
 Constructor when type shall be deduced from it's CiA 301 SDO abort code representation. More...
 
virtual ~sdo_error ()
 Destructor.
 
virtual const char * what () const noexceptoverride
 Returns error description.
 
type get_type () const noexcept
 Returns type of the error.
 
- Public Member Functions inherited from kaco::canopen_error
 canopen_error (std::string what)
 Constructor. More...
 
virtual ~canopen_error ()
 Destructor.
 

Detailed Description

This type of exception is thrown when there are problems while accessing devices via SDO. Most of the errors are reported by the device itself via SDO abort transfer protocol. There are also some internal errors like timeout while waiting for response. You can get the type of error via get_type()

Definition at line 48 of file sdo_error.h.

Constructor & Destructor Documentation

kaco::sdo_error::sdo_error ( type  error_type,
const std::string &  additional_information = "" 
)
explicit

Constructor when type is known.

Parameters
error_typeType of the error
additional_informationAdditional information, appended to the error type string in what()

Definition at line 36 of file sdo_error.cpp.

kaco::sdo_error::sdo_error ( uint32_t  sdo_data,
const std::string &  additional_information = "" 
)
explicit

Constructor when type shall be deduced from it's CiA 301 SDO abort code representation.

Parameters
sdo_dataSDO data which contains the SDO abort code
additional_informationAdditional information, appended to the error type string in what()

Definition at line 40 of file sdo_error.cpp.


The documentation for this class was generated from the following files: