This class provides access to KaCanOpen's EDS library. It manages device specific as well as generic CanOpen dictionaries. More...
#include <eds_library.h>
Public Member Functions | |
| EDSLibrary (std::unordered_map< Address, Entry > &dictionary, std::unordered_map< std::string, Address > &name_to_address) | |
| Constructor. More... | |
| bool | lookup_library (std::string path="") |
| Finds EDS library on disk. More... | |
| bool | load_mandatory_entries () |
| Loads mandatory dictionary entries defined in CiA 301 standard. More... | |
| bool | load_default_eds (uint16_t device_profile_number) |
| Loads entries defined in generic CiA profile EDS files. More... | |
| bool | load_manufacturer_eds_deprecated (uint32_t vendor_id, uint32_t product_code, uint32_t revision_number) |
| Loads entries defined in device specific EDS files proviced by manufacturers. More... | |
| bool | load_manufacturer_eds (Device &device) |
| Loads entries defined in device specific EDS files proviced by manufacturers. More... | |
| bool | ready () const |
| Checks if lookup_library() was successful. More... | |
| void | reset_dictionary () |
| Resets the dictionary and the name-address mapping. | |
| std::string | get_most_recent_eds_file_path () const |
| Returns the path to the most recently loaded EDS file. | |
This class provides access to KaCanOpen's EDS library. It manages device specific as well as generic CanOpen dictionaries.
Definition at line 46 of file eds_library.h.
| kaco::EDSLibrary::EDSLibrary | ( | std::unordered_map< Address, Entry > & | dictionary, |
| std::unordered_map< std::string, Address > & | name_to_address | ||
| ) |
Constructor.
| dictionary | The dictionary, into which entries will be inserted. |
| name_to_address | Mapping from name to address in dictionary (to be created). |
Definition at line 57 of file eds_library.cpp.
| bool kaco::EDSLibrary::load_default_eds | ( | uint16_t | device_profile_number | ) |
Loads entries defined in generic CiA profile EDS files.
| device_profile_number | CiA standard profile number |
Definition at line 100 of file eds_library.cpp.
| bool kaco::EDSLibrary::load_mandatory_entries | ( | ) |
Loads mandatory dictionary entries defined in CiA 301 standard.
Definition at line 96 of file eds_library.cpp.
| bool kaco::EDSLibrary::load_manufacturer_eds | ( | Device & | device | ) |
Loads entries defined in device specific EDS files proviced by manufacturers.
| device | Reference to the device (needed to fetch some information from the device) |
Definition at line 136 of file eds_library.cpp.
| bool kaco::EDSLibrary::load_manufacturer_eds_deprecated | ( | uint32_t | vendor_id, |
| uint32_t | product_code, | ||
| uint32_t | revision_number | ||
| ) |
Loads entries defined in device specific EDS files proviced by manufacturers.
| vendor_id | Vencor ID from identity object in dictionary (one of the mandatory entries) |
| product_code | Product code from identity object in dictionary (one of the mandatory entries) |
| revision_number | Revision number from identity object in dictionary (one of the mandatory entries) |
Definition at line 229 of file eds_library.cpp.
| bool kaco::EDSLibrary::lookup_library | ( | std::string | path = "" | ) |
Finds EDS library on disk.
| path | optional custom path to EDS library |
Definition at line 61 of file eds_library.cpp.
| bool kaco::EDSLibrary::ready | ( | ) | const |
Checks if lookup_library() was successful.
Definition at line 269 of file eds_library.cpp.
1.8.7