34 #include <unordered_map>
53 EDSLibrary(std::unordered_map<Address, Entry>& dictionary, std::unordered_map<std::string, Address>& name_to_address);
95 static const bool debug =
false;
98 std::unordered_map<Address, Entry>& m_dictionary;
101 std::unordered_map<std::string, Address>& m_name_to_address;
104 std::string m_library_path;
110 std::string most_recent_eds_file;
bool load_default_eds(uint16_t device_profile_number)
Loads entries defined in generic CiA profile EDS files.
bool load_mandatory_entries()
Loads mandatory dictionary entries defined in CiA 301 standard.
bool lookup_library(std::string path="")
Finds EDS library on disk.
bool load_manufacturer_eds(Device &device)
Loads entries defined in device specific EDS files proviced by manufacturers.
This class represents a CanOpen slave device in the network.
This class provides access to KaCanOpen's EDS library. It manages device specific as well as generic ...
bool ready() const
Checks if lookup_library() was successful.
void reset_dictionary()
Resets the dictionary and the name-address mapping.
EDSLibrary(std::unordered_map< Address, Entry > &dictionary, std::unordered_map< std::string, Address > &name_to_address)
Constructor.
std::string get_most_recent_eds_file_path() const
Returns the path to the most recently loaded EDS file.
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.